/* -- 外部字型
--------------------------------------------------*/
@import url(//fonts.googleapis.com/earlyaccess/notosanstc.css);

/* -- Universal Setting
--------------------------------------------------*/
html {
	display: block;
    position: relative;
    width: 100%;
    height: 100%;
}

body {
	display: block;
	position: relative;
    width: 100%;
    height: 100%;
    font-family: Futura, "Noto Sans TC", "PingFang TC", "微軟正黑體", "Microsoft JhengHei", "細明體", MingLiU, sans-serif;
	font-size: 16px;
    line-height: 1.5;
    color: #032F4D;
}

html:lang(en) body * {
    text-indent: 0 !important;
    letter-spacing: normal !important;
}

header,
section,
footer {
    display: block;
    position: relative;
    width: 100%;
    height: auto;
}

h1, h2, h3, h4, h5, h6,
p {
    margin: 0;
    padding: 0;
    line-height: inherit;
}

pre {
    margin: 0;
    padding: 0;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    white-space: pre-wrap;
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    word-wrap: break-word;
    border: none;
    background: none;
    overflow: initial !important;
}

a,
a:link,
a:visited,
a:hover,
a:active,
a:focus {
	outline: none;
	text-decoration: none;
}

img {
    width: 100%;
    height: auto;
}


/* -- Common Usage
--------------------------------------------------*/
.uppercase {
    text-transform: uppercase !important;
}

.lowercase {
    text-transform: lowercase !important;
}

.capitalize {
    text-transform: capitalize !important;
}

.line-through {
    text-decoration: line-through !important;
}

.underline {
    text-decoration: underline !important;
}

.highlight-text {
    color: #000 !important;
    background-color: #FFFABD !important;
}

.link-text,
.link-text:hover {
    color: #EA6344 !important;
}

div.no-content-div-15px {
	margin: 0 !important;
	padding-bottom: 15px !important;
}

div.no-content-div-30px {
	margin: 0 !important;
	padding-bottom: 30px !important;
}

div.no-content-div-45px {
	margin: 0 !important;
	padding-bottom: 45px !important;
}

div.no-content-div-60px {
	margin: 0 !important;
	padding-bottom: 60px !important;
}

.max-width-10em,
.max-width-20em,
.max-width-30em,
.max-width-40em,
.max-width-50em,
.max-width-60em,
.max-width-70em,
.max-width-80em,
.max-width-800px,
.max-width-950px,
.max-width-1080px,
.max-width-1280px {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.max-width-10em { width: 10em !important; }
.max-width-20em { width: 20em !important; }
.max-width-30em { width: 30em !important; }
.max-width-40em { width: 40em !important; }
.max-width-50em { width: 50em !important; }
.max-width-60em { width: 60em !important; }
.max-width-70em { width: 70em !important; }
.max-width-80em { width: 80em !important; }
.max-width-800px { width: 800px !important; }
.max-width-950px { width: 950px !important; }
.max-width-1080px { width: 1080px !important; }
.max-width-1280px { width: 1280px !important; }

@media only screen and (orientation: portrait) {
    .portrait-img {
        display: block !important;
    }
    
    .landscape-img {
        display: none !important;
    }
}

@media only screen and (orientation: landscape) {
    .portrait-img {
        display: none !important;
    }
    
    .landscape-img {
        display: block !important;
    }
}


/* -- Color & Font
--------------------------------------------------*/
.font-meta { font-size: 5em; }
.font-h1 { font-size: 3.5em; }
.font-h2 { font-size: 3em; }
.font-h3 { font-size: 2.5em; }
.font-h4 { font-size: 1.75em; }
.font-h5 { font-size: 1.25em; }
.font-h6 { font-size: 1em; }

.font-p-lg { font-size: 1.125em; }
.font-p-md { font-size: 1em; }
.font-p-sm { font-size: 0.875em; }

.color-font-main {
    color: #032F4D;
}

.color-bg-main {
    background-color: #032F4D;
}

.color-border-main {
    border-color: #032F4D;
}

.color-font-white {
    color: #fff;
}

.color-bg-white {
    background-color: #fff;
}

.color-border-white {
    border-color: #fff;
}

.color-font-black {
    color: #000;
}

.color-bg-black {
    background-color: #000;
}

.color-border-black {
    border-color: #000;
}

.color-font-red {
    color: #ea6344;
}

.color-bg-red {
    background-color: #ea6344;
}

.color-border-red {
    border-color: #ea6344;
}

.color-font-green {
    color: #032F4D;
}

.color-font-blue {
		color: #046AAF;	
}

.color-bg-green {
    background-color: #667f71;
}

.color-border-green {
    border-color: #667f71;
}

.color-font-pink {
    color: #fffabd;
}

.color-bg-pink {
    background-color: #fffabd;
}

.color-border-pink {
    border-color: #fffabd;
}


/* -- Customized Style
--------------------------------------------------*/
html:lang(en) body {
    text-align: left;
}

html._locked {
    overflow: hidden;
}

body {
    text-align: justify;
}

html.___loading,
html.___loading body {
    height: 0;
    overflow: hidden;
}

html:lang(en) .hidden-lang-en,
html:not(:lang(en)) .hidden-lang-not-en {
    display: none;
}

#siteLoading {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-color: #fffabd;
    overflow: hidden;
    z-index: 99999999;
}

#siteLoading > img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    min-width: 100px;
    height: auto;
    margin: auto;
}

@media only screen and (orientation: portrait) {
    #siteLoading > img {
        width: 25vw;
    }
}

@media only screen and (orientation: landscape) {
    #siteLoading > img {
        width: 10vw;
    }
}

.page-banner {
    position: relative;
    overflow: hidden;
}

.page-banner > img {
    display: block;
    width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

.page-banner .banner-heading {
    position: absolute;
    height: 1.5em;
    font-weight: 900;
    line-height: 1.5;
    text-indent: 0.25em;
    letter-spacing: 0.25em;
    overflow: hidden;
}

@media only screen and (orientation: portrait) {
    .page-banner .banner-heading {
        left: 3%;
        bottom: 52.5%;
        font-size: 6.25vw;
        -webkit-transform: rotateZ(-8.75deg);
        -moz-transform: rotateZ(-8.75deg);
        -ms-transform: rotateZ(-8.75deg);
        -o-transform: rotateZ(-8.75deg);
        transform: rotateZ(-8.75deg);
    }
    
    html:lang(en) .page-banner .banner-heading {
        bottom: 55%;
        font-size: 4vw;
    }
}

@media only screen and (orientation: landscape) {
    .page-banner .banner-heading {
        left: 4.5%;
        bottom: 65%;
        font-size: 3.125vw;
        -webkit-transform: rotateZ(-8deg);
        -moz-transform: rotateZ(-8deg);
        -ms-transform: rotateZ(-8deg);
        -o-transform: rotateZ(-8deg);
        transform: rotateZ(-8deg);
    }
    
    html:lang(en) .page-banner .banner-heading {
        font-size: 2vw;
    }
}

/* -- HOME -- */
#homeBanner {
    position: relative;
    overflow: hidden;
}

#homeBanner::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
}

#homeBanner #indexVideo {
    display: block;
    width: 100%;
}

#homeBanner #homeVideoContainer {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    overflow: hidden;
}

#homeBanner #homeVideoContainer .yt-wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 0;
}

#homeBanner #homeVideoContainer .yt-wrapper .yt-video {
    display: block;
    width: 100%;
    height: 100%;
    margin: auto;
}

#homeBanner #homeVideoContainer .yt-preview {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    z-index: -1;
}

/* #homeBanner,
#homeBanner .owl-carousel,
#homeBanner .owl-carousel .owl-stage-outer,
#homeBanner .owl-carousel .owl-stage,
#homeBanner .owl-carousel .owl-item,
#homeBanner .owl-carousel .owl-item .item,
#homeBanner .banner,
#homeBanner .banner .bg-img {
    height: 100%;
} */

/* #homeBanner .banner {
    position: relative;
    padding-top: 62.5%;
}

#homeBanner .banner .bg-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    z-index: 0;
}

#homeBanner .banner .bg-img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
} */

#homeBanner .banner-intro {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: auto;
    text-align: center;
    color: #fff;
    -webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
    z-index: 1;
}

#homeBanner .banner-intro .intro-container {
    width: 16em;
    max-width: 100%;
}

#homeBanner .banner-intro .banner-title {
    margin: 0 auto;
    font-size: 2.5em;
    font-weight: 900;
    line-height: 1.5;
    text-shadow: 0 0.05em 0.2em rgba(0,0,0,0.4);
}

#homeBanner .banner-intro .banner-title .banner-empty-space {
    display: inline-block;
    height: 0.85em;
    margin-top: 0.375em;
    vertical-align: top;
    text-shadow: none;
    background-color: #fff;
}

#homeBanner .owl-dots {
    position: absolute;
    left: 50%;
    bottom: 5%;
    margin: auto;
    -webkit-transform: translateX(-50%) translateY(50%);
	-moz-transform: translateX(-50%) translateY(50%);
    -ms-transform: translateX(-50%) translateY(50%);
    -o-transform: translateX(-50%) translateY(50%);
	transform: translateX(-50%) translateY(50%);
}

@media only screen and (orientation: portrait) {
    #homeBanner .banner {
        position: relative;
    }

    #homeBanner .banner .bg-img {
        background: none;
    }

    #homeBanner .banner .bg-img > img {
        display: block;
        width: 100%;
        height: auto;
        margin: 0 auto;
    }
}

@media only screen and (orientation: landscape) {
    #homeBanner .banner {
        position: relative;
        padding-top: 62.5%;
    }

    #homeBanner .banner .bg-img {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
        z-index: 0;
    }

    #homeBanner .banner .bg-img > img {
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 0;
        line-height: 0;
        overflow: hidden;
    }
}

#homeStory.content-section .content-container,
#homePromotion.content-section .content-container,
#homeConcept.content-section .content-container {
    padding-top: 2.5em;
}

#homeStory .section-heading,
#homeStory .content-text {
    width: 70%;
		font-size: 18px;
}

#homeStory #homeStoryBanner {
    margin-top: 3.75em;
    margin-right: -9.25%;
}

#homeStory .theme-puzzle {
    position: relative;
}

#homeStory .theme-puzzle {
    content: '';
    position: absolute;
    top: 0;
    right: 10vw;
    width: 208px;
    margin: auto;
    padding-top: 22.8%;
    background-image: url(../images/icon-deco-01.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

#siteBody.auto-width-body #homePromotion .content-with-fixed-width > .fixed-width-container {
    padding-top: 0;
}

#homePromotion .section-heading {
    background-image: url(../images/icon-deco-02.svg);
    background-repeat: no-repeat;
    background-position: center right 100px;
    background-size: auto 66.67%;
}

html:lang(en) #homePromotion .section-heading {
    background-size: 7.5em auto;
}

html:lang(en) #homePromotion .section-heading .heading-title {
    padding-right: 5em;
}

#homePromotion.content-section .content-container {
    padding-top: 1.8em;
}

#homePromotion #homePromotionBanner {
    position: relative;
    width: 100%;
    min-height: 50em;
    padding-top: 62.5%;
    overflow: hidden;
}

html:lang(en) #homePromotion #homePromotionBanner {
    min-height: 64em;
}

#homePromotion #homePromotionBanner > div {
    position: absolute;
    top: 0;
    bottom: 0;
    /*left: 0;*/
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
		width: 61vw;
    /*height: 71.5vh;*/
}

#homePromotion #homePromotionBanner > div > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

#homePromotion #homePromotionContent {
    position: absolute;
    top: 50%;
    width: 30em;
    max-width: 100%;
    margin: auto;
    padding: 2.5em;
    background-color: rgba(255,255,255,0.8);
    -webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
		transform: translateY(-50%) translateX(-35px);
		padding-left: 10px;
}

#homePromotion #homePromotionContent #homePromotionNext,
#homePromotion #homePromotionContent #homePromotionBack {
    position: relative;
    height: 1.5em;
    margin: auto;
    margin-top: 46px;
    padding: 0;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    color: #EA6344;
    background: none;
    border: none;
    cursor: pointer;
    overflow: hidden;
}

#homePromotion #homePromotionContent #homePromotionNext {
    padding-right: 13em;
}

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

#homePromotion #homePromotionContent #homePromotionNext::before,
#homePromotion #homePromotionContent #homePromotionBack::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 11.5em;
    margin: auto;
    background-image: url(../images/icon-arrow-right-dark.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: auto 0.75em;
}

#homePromotion #homePromotionContent #homePromotionNext::before {
    right: 0.25em;
    /*-webkit-transform: rotateZ(180deg);
    -moz-transform: rotateZ(180deg);
    -ms-transform: rotateZ(180deg);
    -o-transform: rotateZ(180deg);
    transform: rotateZ(180deg);*/
}

#homePromotion #homePromotionContent #homePromotionBack::before {
    left: 0.25em;
}

body.hasHover #homePromotion #homePromotionContent #homePromotionNext:hover::before {
    right: 0;
}

body.hasHover #homePromotion #homePromotionContent #homePromotionBack:hover::before {
    left: 0;
}

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

.quote-container {
		background-image: url(../images/icon-quote.svg);
    width: 100%;
    height: 37px;
    background-repeat: no-repeat;
    background-position: left center;
}

.promo-country-container {
  display: flex;
  align-items: center; 
	margin-top: 37px;
}

.horizontal-line {
  width: 67px;
	height: 2px; 
	background-color: #032F4D;
}

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

/*end of homePromotion*/

#homeConcept {
    background-image: url(../images/bg-concept-01.svg), url(../images/bg-concept-02.svg), url(../images/bg-concept-03.svg);
    background-repeat: no-repeat, no-repeat, no-repeat;
    background-position: right top, left top 20.125em, right bottom -9.75em;
    background-size: auto 20.125em, auto 44.625em, auto 32.625em;
}

#homeConcept .section-heading,
#homeConcept .content-text {
    width: 70%;
    margin-left: auto;
    margin-right: 0;
}

#homeConcept .theme-puzzle {
    content: '';
    position: absolute;
    top: 0.625em;
    left: 15px;
    width: 26%;
    margin: auto;
}

#homeConcept #homeConceptBlock1,
#homeConcept #homeConceptBlock2,
#homeConcept #homeConceptBlock3 {
    position: relative;
}

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

#homeConcept #homeConceptBlock2 .block-content {
    position: absolute;
    top: 50%;
    left: 0;
    width: 50%;
    margin: auto;
    padding-right: 2.5em;
    -webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
	transform: translateY(-50%);
}

#homeConcept #homeConceptBlock2 .block-content > p {
    margin-top: 1.5em;
}

#homeConcept #homeConceptBlock2 .block-img {
    width: 50%;
    margin-left: auto;
    margin-right: 0;
}

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

#homeConcept #homeConceptBlock3 .block-content {
    position: relative;
    margin-top: 2.5em;
    overflow: hidden;
}

#homeConcept #homeConceptBlock3 .block-content .block-content-left {
    float: left;
    width: 37.5%;
}

#homeConcept #homeConceptBlock3 .block-content .block-content-right {
    float: left;
    width: 62.5%;
		margin-bottom: 172px;
}

#homeConcept #homeConceptBlock3 .block-img {
    position: relative;
    padding-top: 24%;
    overflow: hidden;
}

#homeConcept #homeConceptBlock3 .block-img-m {
    display: none;
}

#homeConcept #homeConceptBlock3 .block-img > img {
    position: absolute;
    top: 0;
}

#homeConcept #homeConceptBlock3 .block-img > img:first-child {
    left: 0;
    width: 69.44%;
}

#homeConcept #homeConceptBlock3 .block-img > img:last-child {
    right: 0;
    width: 28.34%;
}

.content-text-one {
		width: 90%;
}

.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;
}

/* -- SIGNUP -- */
#signupForm {
    font-size: 1.25em;
}

#containerUserSwitch {
    margin-bottom: 2.5em;
    border-bottom: 1px solid #95A9CB;
}

#containerUserSwitch ul {
    display: inline-block;
    position: relative;
    margin: 0 auto;
    padding: 0;
    vertical-align: bottom;
    list-style: none;
    overflow: hidden;
}

#containerUserSwitch ul > li {
    float: left;
}

#containerUserSwitch ul > li ~ li {
    margin-left: 3em;
}

#containerUserSwitch ul > li > a {
    display: block;
    position: relative;
    padding-left: 2.5em;
    padding-right: 0.375em;
    padding-bottom: 0.75em;
    font-size: 1.4em;
    font-weight: 700;
    line-height: 1.5;
    color: inherit;
    opacity: 0.5;
    -webkit-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

html:lang(en) #containerUserSwitch ul > li > a {
    font-size: 1.125em;
}

#containerUserSwitch ul > li > a.active,
body.hasHover #containerUserSwitch ul > li > a:hover {
    opacity: 1;
}

#containerUserSwitch ul > li > a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0.375em;
    width: 1.5em;
    height: 1.5em;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

#containerUserSwitch ul > li:nth-child(1) > a::before {
    background-image: url(../images/icon-user-dark.svg);
}

#containerUserSwitch ul > li:nth-child(2) > a::before {
    background-image: url(../images/icon-users-dark.png);
}

#containerUserSwitch ul > li > a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 0;
    height: 2px;
    margin: auto;
    background-color: #032F4D;
    -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);
}

#containerUserSwitch ul > li > a.active::after,
body.hasHover #containerUserSwitch ul > li > a:hover::after {
    width: 100%;
}

/* -- JUDGES -- */

.styled-card-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
}

#containerJudges .styled-card-container > .styled-card {
    display: inline-block;
    /*width: -webkit-calc((100% - 1em * 2) / 3 - 0.01px);
    width: -moz-calc((100% - 1em * 2) / 3 - 0.01px);
    width: calc((100% - 1em * 2) / 3 - 0.01px);*/
		width: 295px;
    margin-left: 30px;
    margin-right: 30px;
    vertical-align: bottom;
}

/*#containerJudges .styled-card-container > .styled-card ~ .styled-card {
    margin-left: 1em;
}*/

#containerJudges .styled-card-container > .styled-card:nth-child(n+4) {
    display: block;
    float: left;
    margin-top: 6.25em;
    vertical-align: baseline;
}

#card-img-wu {
		margin-top: 0px !important;
}

/*#containerJudges .styled-card-container > .styled-card:nth-child(3n+1) {
    margin-left: auto;
    clear: both;
}*/

/*第一屆tab新增*/
.first-row-container {
		display: flex;
		flex-direction: row;
		justify-content: center;
		width: 100%;
		margin-bottom: 100px;
}

#first-styled-card {
	margin-right: 30px;
}

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

#containerJudges .styled-card-container > .styled-card.first {
		margin-left: 26px;
    margin-right: 26px;
}

/* -- NEWS -- */
#containerNews .styled-card-container > .styled-card {
    float: left;
    width: -webkit-calc((100% - 5em * 1) / 2 - 0.01px);
    width: -moz-calc((100% - 5em * 1) / 2 - 0.01px);
    width: calc((100% - 5em * 1) / 2 - 0.01px);
    margin-left: auto;
    margin-right: auto;
}

#containerNews .styled-card-container > .styled-card ~ .styled-card {
    margin-left: 5em;
}

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

#containerNews .styled-card-container > .styled-card:nth-child(2n+1) {
    margin-left: auto;
    clear: both;
}

/* -- VIDEOS -- */
#containerVideos .styled-card-container > .styled-card {
    float: left;
    width: -webkit-calc((100% - 5em * 1) / 2 - 0.01px);
    width: -moz-calc((100% - 5em * 1) / 2 - 0.01px);
    width: calc((100% - 5em * 1) / 2 - 0.01px);
    margin-left: auto;
    margin-right: auto;
}

#containerVideos .styled-card-container > .styled-card ~ .styled-card {
    margin-left: 5em;
}

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

#containerVideos .styled-card-container > .styled-card:nth-child(2n+1) {
    margin-left: auto;
    clear: both;
}

/* -- TRAVELTW -- */
#containerAttractions .styled-card-container > .styled-card {
    float: left;
    width: -webkit-calc((100% - 3.75em * 2) / 3 - 0.01px);
    width: -moz-calc((100% - 3.75em * 2) / 3 - 0.01px);
    width: calc((100% - 3.75em * 2) / 3 - 0.01px);
    margin-top: 3.75em;
    margin-left: auto;
    margin-right: auto;
}

#containerAttractions .styled-card-container > .styled-card ~ .styled-card {
    margin-left: 3.75em;
}

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

#containerAttractions .styled-card-container > .styled-card:nth-child(3n+1) {
    margin-left: auto;
    clear: both;
}

#containerImgMap {
    display: block;
    position: relative;
    margin: 0 auto;
}

#containerImgMap > img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
    -webkit-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

#containerImgMap > img:nth-child(n+3) {
    display: none;
}

#containerImgMap > img ~ img {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -1;
}

body.hasHover #containerImgMap:hover > img {
    opacity: 0;
}

body.hasHover #containerImgMap:hover > img ~ img {
    opacity: 1;
    z-index: 1;
}

#containerMapM {
    font-size: 16px;
}

#containerD3Map {
    position: relative;
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 1000px;
    /* padding-top: 800px; */
}

#containerD3Map > svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#containerD3Map .d3-title {
    position: absolute;
    padding: 1em;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.33;
    color: #032F4D;
    -webkit-transition: background-color 0.4s cubic-bezier(0.445,0.05,0.55,0.95), box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: background-color 0.4s cubic-bezier(0.445,0.05,0.55,0.95), box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: background-color 0.4s cubic-bezier(0.445,0.05,0.55,0.95), box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: background-color 0.4s cubic-bezier(0.445,0.05,0.55,0.95), box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: background-color 0.4s cubic-bezier(0.445,0.05,0.55,0.95), box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    cursor: default;
}

body.hasHover #containerD3Map .d3-title:hover {
    background-color: #fff;
    box-shadow: 0 0.083em 0.5em 0 rgba(45,52,16,0.2);
}

#containerD3Map #titleNorthArea {
    top: 25%;
    /* top: 0%; */
    left: 50%;
}

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

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

#containerD3Map #titleEastArea {
    top: 56%;
    /* top: 38.5%; */
    right: 5%;
}

#containerInformation ul.styled-card-container {
    display: block;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

#containerInformation .styled-card-container > .styled-card {
    display: inline-block;
    width: -webkit-calc((100% - 3.75em * 2) / 3 - 0.01px);
    width: -moz-calc((100% - 3.75em * 2) / 3 - 0.01px);
    width: calc((100% - 3.75em * 2) / 3 - 0.01px);
    margin-left: auto;
    margin-right: auto;
    vertical-align: bottom;
}

#containerInformation .styled-card-container > .styled-card ~ .styled-card {
    margin-left: 3.75em;
}

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

#containerInformation .styled-card-container > .styled-card:nth-child(3n+1) {
    margin-left: auto;
}

/* -- ABOUT -- */
#containerAbout .banner .bg-img {
    position: relative;
    width: 100%;
    padding-top: 66.666667%;
    /* padding-top: 45.5357%; */
    /* padding-top: 52.5%; */
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    overflow: hidden;
}

#containerAbout .banner .bg-img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

#containerAbout .banner-text {
    padding: 2em 2em 0;
    font-size: 1.25em;
}

/* -- WINNERS -- */
#containerStageSwitch {
    margin-bottom: 2.5em;
    border-bottom: 1px solid #95A9CB;
}

#containerStageSwitch ul {
    display: inline-block;
    position: relative;
    margin: 0 auto;
    padding: 0;
    vertical-align: bottom;
    list-style: none;
    overflow: hidden;
}

#containerStageSwitch ul > li {
    float: left;
		font-size: 28px;
}

#containerStageSwitch ul > li > a,
#containerStageSwitch ul > li > p {
    display: block;
    position: relative;
    padding-left: 1em;
    padding-right: 1em;
    padding-bottom: 0.75em;
    font-size: 1.4em;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    color: inherit;
    opacity: 0.5;
    -webkit-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

#containerStageSwitch ul > li > p {
    cursor: default;
}

html:lang(en) #containerStageSwitch ul > li > a,
html:lang(en) #containerStageSwitch ul > li > p {
    font-size: 1.125em;
}

#containerStageSwitch ul > li > a.active,
body.hasHover #containerStageSwitch ul > li > a:hover {
    opacity: 1;
}

#containerStageSwitch ul > li > a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 0;
    height: 2px;
    margin: auto;
    background-color: #032F4D;
    -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);
}

#containerStageSwitch ul > li > a.active::after,
body.hasHover #containerStageSwitch ul > li > a:hover::after {
    width: 100%;
}

#containerStageContent .styled-card-container > .styled-card {
    float: left;
    width: -webkit-calc((100% - 3.75em * 2) / 3 - 0.01px);
    width: -moz-calc((100% - 3.75em * 2) / 3 - 0.01px);
    width: calc((100% - 3.75em * 2) / 3 - 0.01px);
    margin-left: auto;
    margin-right: auto;
}

#containerStageContent .styled-card-container > .styled-card ~ .styled-card {
    margin-left: 3.75em;
}

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

#containerStageContent .styled-card-container > .styled-card:nth-child(3n+1) {
    margin-left: auto;
    clear: both;
}

/* -- BLOGS -- */
#containerBlog .content-section .section-heading .heading-title {
    line-height: 1.2;
}

#containerBlog .content-section .section-heading + .content-container {
    padding-top: 3.7%;
}


/* -- Header
--------------------------------------------------*/
html._locked #siteHeader {
    display: block !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    -o-transform: none !important;
    transform: none !important;
}

#siteHeader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 5em;
    padding: 0 0 0 3.125%;
    font-size: 14px;
    text-align: center;
    -webkit-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    z-index: 88888;
}

#pseudoHeader {
    height: 5em;
    font-size: 14px;
}

#siteHeader #siteBrand .brand-img > img {
    display: none;
}

#siteHeader #siteBrand .brand-img > img:first-child {
    display: block;
}

#siteHeader._inverted {
    background: #fff;
    box-shadow: 0 1px 4px 0 rgba(37,37,37,0.12);
}

#siteHeader._inverted #siteBrand .brand-img > img:first-child {
    display: none;
}

#siteHeader._inverted #siteBrand .brand-img > img:last-child {
    display: block;
}

#siteHeader._inverted #siteLang {
    color: #032F4D;
}

#siteHeader._inverted #siteLang::before {
    background-image: url(../images/icon-earth-dark.svg);
}

#siteHeader._inverted .styled-hamburger .bar {
    background-color: #EA6344;
}

#siteHeader._inverted .styled-hamburger._active .bar {
    background-color: #fff;
}

#siteHeader._inverted ul.nav-main > li > a {
    color: #032F4D;
}

#siteHeader._inverted ul.nav-main > li._active > a,
body.hasHover #siteHeader._inverted ul.nav-main > li > a:hover {
    color: #046AAF;
}

#siteHeader._inverted ul.nav-main > li:not(.with-dropdown) > a::before {
    background-color: #046AAF;
}

#siteHeader._inverted ul.nav-main > li.with-dropdown > a::before {
    border-color: #032F4D transparent transparent transparent;
}

#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: #046AAF transparent transparent transparent;
}

#siteHeader._inverted #siteOther > a,
body.hasHover #siteHeader._inverted #siteOther > a:hover {
    color: #aaa;
}

#siteHeader #siteBrand {
    float: left;
    height: 3.75em;
    margin: 0.625em auto;
}

#siteHeader #siteNav {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto 180px;
    padding: 0 80px;
    -webkit-transition: height 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
	-moz-transition: height 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: height 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: height 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
	transition: height 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

#siteHeader #siteNav::before {
    content: '';
    display: inline-block;
    position: relative;
    width: 0;
    height: 100%;
    vertical-align: middle;
}

#siteHeader #siteLang {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    height: 2em;
    margin: auto;
    padding: 0;
    padding-left: 2em;
    font-size: 12px;
    font-weight: 500;
    line-height: 2;
    color: #fff;
    background: none;
    border: none;
    cursor: pointer;
}

#siteHeader #siteLang::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 16px;
    height: 16px;
    margin: auto;
    background-image: url(../images/icon-earth-white.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

#siteHeader #siteOther {
    position: relative;
    float: right;
    height: 5em;
    padding-left: 4em;
    padding-right: 2.5em;
    font-size: 1em;
    font-weight: 500;
    line-height: 5;
    letter-spacing: 1px;
    color: #fff;
    background-color: #EA6344;
    overflow: hidden;
}

#siteHeader #siteOther::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 2.5em;
    width: 16px;
    height: 16px;
    margin: auto;
    background-image: url(../images/icon-edit-white.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.site-brand {
    display: inline-block;
    position: relative;
    vertical-align: middle;
}

.site-brand .brand-name {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

.site-brand .brand-img {
    width: auto;
    height: 100%;
}

.site-brand .brand-img > img {
    display: block;
    width: auto;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}


/* -- Nav
--------------------------------------------------*/
.nav-container {
    display: inline-block;
    vertical-align: middle;
}

ul.nav-main {
    display: inline-block;
    position: relative;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    vertical-align: middle;
}

ul.nav-main > li {
    position: relative;
    float: left;
    margin-left: auto;
    margin-right: auto;
}

ul.nav-main > li ~ li {
    margin-left: 2em;
}

ul.nav-main > li > a {
    display: block;
    position: relative;
    padding-left: 0.5em;
    padding-right: 0.5em;
    font-size: 1em;
    line-height: 5;
    letter-spacing: 1px;
    color: #fff;
    -webkit-transition: color 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: color 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: color 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: color 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: color 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

html:lang(en) ul.nav-main > li > a.nav-item-row-2 {
    line-height: 1.5;
    padding-top: 1em;
    padding-bottom: 1em;
}

ul.nav-main > li:not(.with-dropdown) > a::before {
    content: '';
    position: absolute;
    bottom: 1em;
    left: 0;
    right: 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:not(.with-dropdown)._active > a::before,
body.hasHover ul.nav-main > li:not(.with-dropdown) > a:hover::before {
    width: 100%;
}

ul.nav-main > li.with-dropdown > a::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    width: 0;
    height: 0;
    margin: auto;
    border-style: solid;
    border-width: 8px 6px 0 6px;
    border-color: #fff transparent transparent transparent;
    -webkit-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: transform 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

html:lang(en) ul.nav-main > li.with-dropdown > a.nav-item-row-2::before {
    bottom: 5px;
}

ul.nav-main > li.with-dropdown > .dropdown-container {
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    max-height: 0;
    margin: auto;
    color: #fff;
    opacity: 0;
    -webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
	transform: translateX(-50%);
    -webkit-transition: all 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
	-moz-transition: all 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: all 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: all 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
	transition: all 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    overflow: hidden;
}

ul.nav-main > li.with-dropdown > a._open + .dropdown-container,
body.hasHover ul.nav-main > li:hover > .dropdown-container {
    max-height: 200vh;
    opacity: 1;
}

ul.nav-dropdown {
    display: block;
    margin: 8px;
    padding: 8px 0;
    list-style: none;
    background-color: #fff;
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.2);
}

ul.nav-dropdown > li {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

ul.nav-dropdown > li > a {
    display: block;
    min-width: 10em;
    padding: 0.75em 1em;
    line-height: 1.5;
    white-space: nowrap;
    color: #032F4D;
}

body.hasHover ul.nav-dropdown > li > a:hover {
    background-color: #FFFCD3;
}

#navToggle {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -5px;
    margin: auto;
}

.styled-hamburger {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: auto;
    padding: 8px 5px;
    vertical-align: bottom;
    cursor: pointer;
}

.styled-hamburger .bar {
    display: block;
    width: 100%;
    height: 2px;
    margin: 4px auto;
    background-color: #fff;
    border-radius: 2px;
    -webkit-transition: all 0.6s ease-in-out;
    -moz-transition: all 0.6s ease-in-out;
    -ms-transition: all 0.6s ease-in-out;
    -o-transition: all 0.6s ease-in-out;
    transition: all 0.6s ease-in-out;
}

.styled-hamburger .bar:first-child {
    margin-top: 0;
}

.styled-hamburger .bar:last-child {
    margin-bottom: 0;
}

.styled-hamburger._active .bar.top {
    -webkit-transform: translateY(6px) rotateZ(45deg);
    -moz-transform: translateY(6px) rotateZ(45deg);
    -ms-transform: translateY(6px) rotateZ(45deg);
    -o-transform: translateY(6px) rotateZ(45deg);
    transform: translateY(6px) rotateZ(45deg);
}

.styled-hamburger._active .bar.bottom {
    -webkit-transform: translateY(-6px) rotateZ(-45deg);
    -moz-transform: translateY(-6px) rotateZ(-45deg);
    -ms-transform: translateY(-6px) rotateZ(-45deg);
    -o-transform: translateY(-6px) rotateZ(-45deg);
    transform: translateY(-6px) rotateZ(-45deg);
}

.styled-hamburger._active .bar.middle {
    width: 0;
}


/* -- Section
--------------------------------------------------*/
#siteBody {
    width: 1280px;
    max-width: 95%;
    margin-left: auto;
    margin-right: auto;
}

#siteBody.auto-width-body {
    width: auto;
}

#siteBody.auto-width-body .content-with-fixed-width {
    /*width: 1280px;*/
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
		/*margin-top: 30px;*/
}

#siteBody.auto-width-body .content-with-fixed-width > .fixed-width-container {
    padding-top: 7.8125%;
    padding-left: 7.8125%;
    padding-right: 7.8125%;
}
/*
#siteBody.auto-width-body .content-section.section-with-y-padding .content-with-fixed-width > .fixed-width-container {
    padding-bottom: 172px;
}*/

#siteBody.auto-width-body .content-section-container {
    padding-bottom: 0;
}

#siteBody.auto-width-body .content-section {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
}

#siteBody.auto-width-body .content-section.section-with-y-padding {
    padding-bottom: 0;
}

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

.content-section-container {
    counter-reset: heading-index;
    padding-bottom: 7.8125%;
}

.content-section {
    position: relative;
    padding-top: 7.8125%;
    /* overflow: hidden; */
}

.content-section.section-with-y-padding {
    padding-bottom: 7.8125%;
}

.content-section .section-heading {
    position: relative;
    overflow: hidden;
}

.content-section .section-heading .heading-title {
    display: inline-block;
    position: relative;
    margin: 0 auto;
    font-size: 2.5em;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

html:lang(en) .content-section .section-heading .heading-title {
    font-size: 40px;
}

html:lang(en) .content-section .section-heading .heading-title.small {
    font-size: 2em;
}

.content-section .section-heading.heading-with-index .heading-title {
    padding-left: 2.25em;
    padding-right: 1em;
    line-height: 2;
}

.content-section .section-heading.heading-with-index .heading-title::before {
    content: counter(heading-index);
    counter-increment: heading-index;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 2em;
    font-weight: 500;
    font-style: italic;
    line-height: 1;
}

.content-section .section-heading.heading-with-index .heading-title.with-note {
    position: relative;
    padding-bottom: 0.84em;
    line-height: 1.16;
}

html:lang(en) .content-section .section-heading.heading-with-index .heading-title.with-note {
    padding-bottom: 0.75em;
    line-height: 1.25;
}

.content-section .section-heading.heading-with-index .heading-title.with-note .heading-note {
    position: absolute;
    left: 2.25em;
    bottom: 0;
}

.content-section .section-heading.heading-with-index .heading-title.with-note .heading-note > span {
    display: block;
    font-size: 0.32em;
    font-weight: 400;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
}

html:lang(en) .content-section .section-heading.heading-with-index .heading-title.with-note .heading-note > span {
    font-size: 0.5em;
}

.content-section .section-heading.heading-with-theme .heading-title {
    padding-left: 2.5em;
    padding-right: 1em;
    line-height: 2.5;
}

.content-section .section-heading.heading-with-theme .heading-title::before {
    content: counter(heading-index);
    counter-increment: heading-index;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 2.5em;
    font-weight: 500;
    font-style: italic;
    line-height: 1;
}

.content-section .section-heading.heading-with-theme .heading-title::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 100vw;
    height: 2px;
    margin: auto;
    background-color: #032F4D;
}

.content-section .section-heading.heading-with-theme .heading-title.with-note .heading-note {
    position: absolute;
    left: 2.5em;
    bottom: 0;
}

.content-section .section-heading.heading-with-theme .heading-title.with-note .heading-note > span {
    display: block;
    font-size: 0.4em;
    font-weight: 400;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
}

.content-section .section-heading + .content-container {
    padding-top: 5%;
}

.content-section .content-container .content-title {
    margin: 0 auto;
    font-size: 1.75em;
    font-weight: 500;
    line-height: 1.29;
}


/* -- Footer
--------------------------------------------------*/
#siteFooter {
    //position: relative;
    padding-top: 10.15625%;
    padding-left: 30px;
    padding-right: 30px;
    font-size: 14px;
    text-align: center;
    background-color: #F0F4FB;
    overflow: hidden;
}

#siteFooter {
    content: '';
    //position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 10.15625%;
    margin: auto;
    background-image: url(../images/bg-footer.svg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
}

#siteFooter .footer-container {
    padding-top: 3.125%;
    padding-bottom: 1.875%;
}

#siteFooter ul.footer-units-container {
    display: block;
    position: relative;
    width: 1128px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    overflow: hidden;
}

/*html:lang(en) #siteFooter ul.footer-units-container {
    width: 900px;
}*/

#siteFooter ul.footer-units-container ~ ul.footer-units-container {
    display: inline-block;
    width: auto;
    margin-top: 3em;
    padding: 0 0 6.25%;
    vertical-align: bottom;
}

html:lang(en) ul.footer-units-container ~ ul.footer-units-container {
    width: auto;
}

#siteFooter ul.footer-units-container > li {
    display: inline-block;
    float: left;
    width: 20%;
    vertical-align: bottom;
}

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

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

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

#siteFooter ul.footer-units-container ~ ul.footer-units-container > li {
    width: auto;
}

html:lang(en) #siteFooter ul.footer-units-container ~ ul.footer-units-container > li {
    width: auto;
}

#siteFooter ul.footer-units-container > li ~ li {
    margin-left: 7%;
}

html:lang(en) #siteFooter ul.footer-units-container > li ~ li {
    margin-left: 4%;
}

#siteFooter ul.footer-units-container > li .unit-title {
    margin-bottom: 1.75em;
    padding: 0.5em 1em;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5;
    color: #fff;
    background-color: #046AAF;
    border-bottom: 2px solid #4585CF;
}

#siteFooter ul.footer-units-container > li .unit-logo-container {
    position: relative;
    width: 66.67%;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}

#siteFooter ul.footer-units-container > li:nth-child(1) .unit-logo-container {
    width: 100%;
    margin-top: -8.4375%;
}

html:lang(en) #siteFooter ul.footer-units-container > li:nth-child(1) .unit-logo-container {
    width: 66.67%;
}

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

#siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container {
    width: auto;
    margin-top: 0;
}

html:lang(en) #siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container {
    width: auto;
}

#siteFooter ul.footer-units-container > li .unit-logo-container > .unit-logo {
    display: block;
    position: relative;
    float: left;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 60%;
}

#siteFooter ul.footer-units-container > li:nth-child(1) .unit-logo-container > .unit-logo {
    width: 100%;
    padding-top: 56.86%;
}

#siteFooter ul.footer-units-container > li:nth-child(3) .unit-logo-container > .unit-logo {
    width: 20%;
    padding-top: 20%;
		margin-left: 21px;
}

#siteFooter ul.footer-units-container > li:nth-child(3) .unit-logo-container > .unit-logo:nth-child(1) {
		margin-left: 0px;
}

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

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

#siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container > .unit-logo {
    width: 120px;
    margin-left: 2em;
    padding-top: 72px;
}

#siteFooter ul.footer-units-container ~ ul.footer-units-container > li .unit-logo-container > .unit-logo:last-child {
    margin-right: 0.5em;
}

#siteFooter ul.footer-units-container > li .unit-logo-container > .unit-logo > img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    margin: auto;
}

#siteFooter .footer-copyright {
    font-size: 12px;
    line-height: 20px;
    color: #032F4D;
}

#siteFooter .footer-copyright > a {
    color: inherit;
}


/* -- Main Content
--------------------------------------------------*/


/* -- Components
--------------------------------------------------*/
/* -- Quill -- */
.ql-editor {
    padding: 0;
    line-height: inherit;
}

/* -- D3.js -- */
#infoD3Map {
    position: absolute;
    margin-bottom: 30px;
    padding: 1em;
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.33;
    color: #032F4D;
    background-color: #fff;
    box-shadow: 0 0.083em 0.5em 0 rgba(45,52,16,0.2);
    -webkit-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    z-index: 1;
}

#infoD3Map.invisible {
    opacity: 0;
    z-index: -1;
}

#infoD3Map::before {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    width: 20px;
    height: 20px;
    margin: auto;
    background-color: #fff;
    box-shadow: 0 0.083em 0.5em 0 rgba(45,52,16,0.2);
    -webkit-transform: rotateZ(45deg);
	-moz-transform: rotateZ(45deg);
    -ms-transform: rotateZ(45deg);
    -o-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
    z-index: -2;
}

#infoD3Map::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-color: #fff;
    z-index: -1;
}

.d3-map .d3-region-link .d3-region-path {
    -webkit-transition: fill 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: fill 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: fill 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: fill 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: fill 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

.d3-map .d3-region-link.active .d3-region-path,
body.hasHover .d3-map .d3-region-link:hover .d3-region-path {
    fill: #046AAF;
}

.d3-map .d3-region-rect {
    stroke: #95A9CB;
    stroke-width: 2;
    fill: transparent;
    -webkit-transition: stroke 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: stroke 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: stroke 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: stroke 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: stroke 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

.d3-map .d3-region-link.active .d3-region-rect,
body.hasHover .d3-map .d3-region-link:hover .d3-region-rect {
    stroke: #046AAF;
}

.d3-map .d3-region-text {
    font-size: 1.5em;
    font-weight: 500;
    fill: #032F4D;
}

/* -- Owl Carousel -- */
.owl-carousel-normal .owl-nav {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
}

.owl-carousel-normal .owl-nav button.owl-prev,
.owl-carousel-normal .owl-nav button.owl-next {
    position: absolute;
    top: 0;
    width: 2.5em;
    height: 2.5em;
    margin: auto;
    background: #EA6344;
    border-radius: 50%;
    box-shadow: 0 0.125em 0.5em 0 rgba(45,52,16,0.2);
    -webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
	transform: translateY(-50%);
    overflow: hidden;
}

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

.owl-carousel-normal .owl-nav button.owl-next {
    right: -1.25em;
}

.owl-carousel-normal .owl-nav button.owl-prev img,
.owl-carousel-normal .owl-nav button.owl-next img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    max-width: 50%;
    height: auto;
    max-height: 50%;
    margin: auto;
}

.owl-carousel-normal .owl-dots {
    display: inline-block;
    line-height: 1;
    vertical-align: bottom;
}

.owl-carousel-normal .owl-dots .owl-dot {
    display: inline-block;
    position: relative;
    width: 16px;
    height: 16px;
    line-height: inherit;
    vertical-align: bottom;
}

.owl-carousel-normal .owl-dots .owl-dot:focus {
    outline: none;
}

.owl-carousel-normal .owl-dots .owl-dot::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 8px;
    height: 8px;
    margin: auto;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 50%;
}

body.hasHover .owl-carousel-normal .owl-dots .owl-dot:hover::before,
.owl-carousel-normal .owl-dots .owl-dot.active::before {
    background-color: #fff;
}

.owl-carousel-normal .owl-dots .owl-dot ~ .owl-dot {
    margin-left: 8px;
}

/* -- Datepicker -- */
.datepicker {
    margin-top: 2em;
    padding: 16px 8px;
    font-size: 14px;
    color: #046AAF;
    border-radius: 0;
}

.datepicker.dropdown-menu {
    border: none;
    box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.2);
}

.datepicker.datepicker-dropdown:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: -10px;
    right: 15px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
    border-top: 0;
    border-bottom-color: rgba(0,0,0,0.05);
}

.datepicker.datepicker-dropdown:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: -9px;
    right: 16px;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 9px solid #fff;
    border-top: 0;
}

.datepicker .datepicker-switch,
.datepicker .prev,
.datepicker .next {
    height: 30px;
    padding: 0;
    line-height: 30px;
}

.datepicker .prev,
.datepicker .next {
    position: relative;
    width: 30px;
    font-weight: 900;
}

.datepicker .prev::before {
    content: '<<';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: #fff;
}

.datepicker .next::before {
    content: '>>';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: #fff;
}

.datepicker .prev:hover::before,
.datepicker .next:hover::before {
    background: #eee;
    border-radius: 4px;
}

.datepicker table tr th {
    font-weight: 500;
    color: #032F4D;
}

.datepicker table tr td:not(.disabled).day:hover,
.datepicker table tr td:not(.disabled).day.focused {
    color: #fff;
    background-color: #95A9CB;
}

.datepicker table tr td.new,
.datepicker table tr td.old,
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover,
.datepicker table tr td span.new,
.datepicker table tr td span.old,
.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
    color: #95A9CB;
}

.datepicker table tr td.active,
.datepicker table tr td.new.active,
.datepicker table tr td.old.active,
.datepicker table tr td span.active,
.datepicker table tr td span.new.active,
.datepicker table tr td span.old.active {
    color: #fff;
}

.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active[disabled],
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active.disabled:hover[disabled],
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active[disabled],
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active.disabled:hover[disabled],
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
    background-color: #046AAF;
    background-image: none;
}

.datepicker .datepicker-days table {
    border-collapse: separate;
    border-spacing: 8px 0;
}

.datepicker .datepicker-days thead th.dow {
    width: 30px;
    padding: 1em 0 0;
}

.datepicker .datepicker-days tbody td,
.datepicker .datepicker-days tbody th {
    width: 30px;
    height: 30px;
    padding: 0;
    line-height: 30px;
    border-radius: 50%;
}

/* -- 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.8em;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5;
}

form label > span.label-note {
    font-size: 0.8em;
    font-weight: 400;
}

form .form-group-container::after {
    content: '';
    display: block;
    clear: both;
}

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

form .form-group-container .form-whole-container {
    margin-top: 0.5em;
}

form .form-group-container .form-whole-container::after {
    content: '';
    display: block;
    clear: both;
}

form .form-group-container .form-whole-container .form-group {
    float: left;
    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);
    padding-top: 8px;
}

form .form-group-container .form-whole-container .form-group ~ .form-group {
    margin-top: 0;
    margin-left: 2.5em;
}

form .form-group-container .form-whole-container .form-group:nth-child(n+3) {
    margin-top: 1em;
}

form .form-group-container .form-whole-container .form-group:nth-child(2n+1) {
    margin-left: auto;
    clear: both;
}

form .form-group-container .form-whole-container .form-group > label {
    position: absolute;
    top: 0;
    left: 2em;
    height: 1.5em;
    padding: 0 0.5em;
    font-size: 12px;
    line-height: 1.5;
    background-color: #fff;
}

form .form-group-container .form-half-container {
    float: left;
    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);
}

form .form-group-container .form-half-container + .form-half-container {
    margin-left: 2.5em;
}

form .form-dynamic-container {
    position: relative;
    padding-right: 3em;
}

form .form-dynamic-container .form-dynamic-btn {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 2em;
    height: 2em;
    margin: auto;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer;
    overflow: hidden;
}

form .form-dynamic-container .form-dynamic-btn::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

form .form-dynamic-container .form-dynamic-btn.form-current::before {
    background-image: url(../images/icon-circle-plus-dark.svg);
}

form .form-dynamic-container .form-dynamic-btn.form-new::before {
    background-image: url(../images/icon-circle-minus-dark.svg);
}

form .form-group {
    position: relative;
    margin: 0 auto;
}

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

form .form-group .error-message {
    font-size: 0.8em;
    font-weight: 400;
    line-height: 1.5;
}

form .form-group .error-message label.error {
    margin: 0.5em auto 0;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: #EA6344;
}

form input.form-icon-input {
    padding-right: 2.5em;
    background-repeat: no-repeat;
    background-position: right 1em center;
    background-size: auto 1em;
    cursor: pointer;
}

form input.form-icon-input.icon-calendar {
    background-image: url(../images/icon-calendar-dark.svg);
}

form input {
    display: block;
    width: 100%;
    height: 3em;
    padding: 0 1.2em;
    font-size: 1em;
    line-height: normal;
    color: #032F4D;
    background-color: #fff;
    border: 2px solid #95A9CB;
    border-radius: 0;
}

form input:focus {
    color: #032F4D;
    outline: 0;
    border: 2px solid #032F4D;
    box-shadow: none;
}

form input.error {
    border-color: #EA6344;
}

form input.error ~ label {
    color: #EA6344;
}

form textarea {
    display: block;
    width: 100%;
    min-height: 7.5em;
    padding: 0.8em 1.2em;
    font-size: 1em;
    line-height: 1.5;
    color: #032F4D;
    background-color: #fff;
    border: 2px solid #95A9CB;
    border-radius: 0;
}

form textarea:focus {
    color: #032F4D;
    outline: 0;
    border: 2px solid #032F4D;
    box-shadow: none;
}

form textarea.error {
    border-color: #EA6344;
}

.form-check-radio {
    display: block;
    position: relative;
    width: 100%;
    height: 3em;
    margin: 0 auto;
    padding: 0.75em 1.2em 0.75em 3.6em;
    font-size: 1em;
    line-height: -webkit-calc(1.5em - 2px * 2);
    line-height: -moz-calc(1.5em - 2px * 2);
    line-height: calc(1.5em - 2px * 2);
    background-color: #fff;
    border: 2px solid #032F4D;
    border-radius: 0;
    cursor: pointer;
}

.form-check-radio input[type="radio"] {
    display: none;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
}

.form-check-radio input[type="radio"] + .check {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 1.2em;
    width: 1.2em;
    height: 1.2em;
    margin: auto;
    background-image: url(../images/icon-radio-dark.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.form-check-radio input[type="radio"] + .check::before {
    /* content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 1.2em;
    width: 1.2em;
    height: 1.2em;
    margin: auto;
    background-image: url(../images/icon-radio-dark.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain; */
}

.form-check-radio input[type="radio"]:checked + .check {
    background-image: url(../images/icon-check-dark.svg);
}

.form-check-checkbox {
    position: relative;
    margin: 0 auto;
    padding: 0 0 0 2em;
    font-size: 1em;
    line-height: 1.5;
    cursor: pointer;
}

.form-check-checkbox input[type="checkbox"] {
    display: none;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
}

.form-check-checkbox input[type="checkbox"] ~ .check {
    position: absolute;
    top: 0.15em;
    left: 0;
    width: 1.2em;
    height: 1.2em;
    margin: auto;
    background-color: #fff;
    border: 2px solid #032F4D;
    cursor: pointer;
}

.form-check-checkbox input[type="checkbox"]:checked ~ .check {
    background-image: url(../images/icon-square-check-dark.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    border: none;
}

#form-blog-input {
	//margin-top: 1.5em;
}

.form-group-container.final-check {
	text-align: center;
}

.label-block {
	display: block;
	margin-bottom: 0px;
}

.option-description {
	font-size: 16px;
	font-weight: 400;
	color: #000;
	background-color: #FFFABD;
}

.option-selected {
	display: inline-block;
	margin-top: 20px;
	margin-bottom: 34px;
	font-size: 18px;
	font-weight: 700;
	color: #046AAF;
	line-height: 28px;
}

/*新增*/
.select-more {
	color: #fff;
	padding: 2px 6px;
	font-size: 18px;
	font-weight: 700;
	background-color: #CD2500;
}

.form-half-container.option {
	margin-bottom: 16px;
	margin-left: 0px !important;
}

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

.form-check-radio input[type="checkbox"] {
	display: none;
	width: 0;
	height: 0;
	margin: 0;
	padding: 0;
}

input[type="checkbox"] + .check.square {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1.2em;
	width: 1.2em;
	height: 1.2em;
	margin: auto;
	background-image: url(../images/icon-square-dark.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

input[type="checkbox"]:checked + .check.square {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1.2em;
	width: 1.2em;
	height: 1.2em;
	margin: auto;
	background-image: url(../images/icon-square-check-dark.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.form-check-radio.checkbox {
	height: fit-content;
}

.star-icon {
	font-size: 20px;
	font-weight: 900;
	color: #EA6344;
}

.star-explain {
	font-size: 16px;
	line-height: 24px;
	color: #EA6344;
}

/* -- Styled Modal -- */
.styled-modal-normal {
    padding: 0 30px !important;
    z-index: 99999;
}

.styled-modal-normal ~ .modal-backdrop {
    background-color: #032F4D;
    opacity: 0.2;
    z-index: 99998;
}

.styled-modal-normal .modal-dialog {
    position: relative;
    width: 1080px;
    max-width: 100%;
    margin: 12.5vh auto;
}

.styled-modal-normal .modal-dialog .modal-content {
    padding: 2em 2.5em 3.75em;
    border: none;
    border-radius: 0;
    box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.24);
}

.styled-modal-normal .modal-dialog .modal-content .modal-header {
    position: relative;
    width: 100%;
    margin-bottom: 1em;
    padding: 0;
    border: none;
    border-radius: 0;
}

.styled-modal-normal .modal-dialog .modal-content .modal-body {
    padding: 0;
}

.styled-modal-normal .modal-heading {
    position: relative;
    overflow: hidden;
}

.styled-modal-normal .modal-heading .heading-title {
    display: inline-block;
    position: relative;
    margin: 0 auto;
    padding-right: 1em;
    font-size: 2.5em;
    font-weight: 900;
    line-height: 1.5;
    vertical-align: bottom;
    letter-spacing: 0.05em;
}

.styled-modal-normal .modal-heading .heading-title::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 100vw;
    height: 2px;
    margin: auto;
    background-color: #032F4D;
}

.styled-modal-normal .modal-content-container {
    padding-top: 2.5em;
}

.styled-modal-normal .modal-close-btn {
    display: inline-block;
    position: relative;
    width: 1.25em;
    height: 1.25em;
    margin: 0 0 0 auto;
    padding: 0;
    font-size: 1em;
    vertical-align: bottom;
    background-image: url(../images/icon-close-dark.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    border: none;
    opacity: 1;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
}

/* -- Styled Accordion -- */
.styled-accordion .accordion-item:first-child {
    border-top: 1px solid #032F4D;
}

.styled-accordion .accordion-item {
    border-bottom: 1px solid #032F4D;
}

.styled-accordion .accordion-heading {
    display: block;
    position: relative;
    padding: 0.75em 2.5em 0.75em 1.25em;
    font-size: 1em;
    font-weight: 700;
    line-height: 1.5;
    color: inherit;
}

.styled-accordion .accordion-heading::before {
    content: '';
    position: absolute;
    top: -webkit-calc((3em - 1.25em) * 0.5);
    top: -moz-calc((3em - 1.25em) * 0.5);
    top: calc((3em - 1.25em) * 0.5);
    right: 1.25em;
    width: 1.25em;
    height: 1.25em;
    margin: auto;
    background-image: url(../images/icon-minus-dark.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.styled-accordion .accordion-heading.collapsed::before {
    background-image: url(../images/icon-plus-dark.svg);
}

.styled-accordion .accordion-item.accordion-without-body .accordion-heading::before {
    display: none !important;
}

.styled-accordion .accordion-collapse {
    padding-left: 1.25em;
    padding-right: 1.25em;
    border-top: 1px solid #032F4D;
}

.styled-accordion .accordion-item.accordion-without-body .accordion-collapse {
    display: none !important;
}

.styled-accordion .accordion-collapse .accordion-body {
    padding: 0.75em 0;
    font-size: 0.875em;
}
    
/* -- Styled List -- */
ul.styled-list-block-btn {
    display: block;
    position: relative;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

ul.styled-list-block-btn > li {
    display: block;
    position: relative;
    border-radius: 2px;
    overflow: hidden;
}

ul.styled-list-block-btn > li > a {
    display: block;
    margin: 0 auto;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5;
    color: inherit;
}

ul.styled-list-normal {
    position: relative;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    overflow: hidden;
}

ul.styled-list-normal > li {
    display: block;
    position: relative;
    margin-left: 2.5em;
    line-height: 1.5;
}

ul.styled-list-normal > li::before {
    content: '';
    position: absolute;
    top: 0.25em;
    left: -1.5em;
    width: 1em;
    height: 1em;
    background-color: #046AAF;
    border-radius: 50%;
}

ol.styled-list-normal {
    position: relative;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    counter-reset: item;
    overflow: hidden;
}

ol.styled-list-normal > li {
    display: block;
    position: relative;
    margin-left: 1.5em;
}

ol.styled-list-normal > li::before {
    content: counter(item)".";
    counter-increment: item;
    position: absolute;
    top: 0;
    left: -1.5em;
    width: 1.5em;
    text-align: left;
}

ol.styled-list-normal > li ~ li {
    margin-top: 1em;
}

ol.styled-list-normal.no-margin > li {
		margin-top: 0;
}

.star-red {
		color: red;
}

/* -- Styled Card -- */
.styled-card-container::after {
    content: '';
    display: block;
    clear: both;
}

.styled-card-judge {
    position: relative;
    padding: 0.5em 1em;
		width: 280px;
}

.styled-card-judge .card-img {
    position: relative;
    width: 100%;
    padding-top: 100%;
    border-radius: 0;
}

.styled-card-judge .card-img::before {
    content: '';
    position: absolute;
    top: -0.5em;
    left: -1em;
    width: 100%;
    height: 100%;
    margin: auto;
    border: 1px solid #046AAF;
    border-radius: 50%;
    z-index: 1;
}

.styled-card-judge .card-img::after {
    content: '';
    position: absolute;
    top: 0.5em;
    left: 1em;
    width: 100%;
    height: 100%;
    margin: auto;
    background-color: #fffabd;
    border-radius: 50%;
    z-index: -1;
}

.styled-card-judge .card-img .bg-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    border-radius: 50%;
    overflow: hidden;
		filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.15));
}

.styled-card-judge .card-img .bg-img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

.styled-card-judge .card-img .img-wrapper > img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    margin: auto;
		width: 80%;
}

.styled-card-judge .card-img .img-wrapper.logo-up > img {
		top: -30px;
}

.styled-card-judge .card-img .card-img-heading {
    position: absolute;
    left: 0;
    bottom: 0.4em;
    min-width: 7.5em;
    margin: auto;
    padding: 0.5em 1em;
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    color: #fff;
    background-color: #046AAF;
    z-index: 1;
}

.styled-card-judge .card-img .card-img-heading::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 0.2em;
    margin: auto;
    background-color: #4585CF;
}

.styled-card-judge .card-content {
    position: relative;
    padding: 1.75em 0 0;
    text-align: left;
    overflow: hidden;
}

.styled-card-judge .card-text {
    font-size: 1em;
    font-weight: 400;
    line-height: 1.5;
    color: #032F4D;
}

.img-small {
		width: 60% !important;
}

.styled-card-news {
    position: relative;
    background-color: #fff;
    -webkit-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

/* body.hasHover .styled-card-news:hover {
    box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.12);
} */

.styled-card-news .card-img {
    position: relative;
    width: 100%;
    padding-top: 60%;
    border-radius: 0;
}

.styled-card-news .card-img::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-color: rgba(3, 47, 77, 0.8);
    background-image: url(../images/icon-book-white.svg);
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: -webkit-calc(50% - 1.5em);
    background-position-y: -moz-calc(50% - 1.5em);
    background-position-y: calc(50% - 1.5em);
    background-size: auto 5em;
    opacity: 0;
    -webkit-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    z-index: 1;
}

body.hasHover .styled-card-news:hover .card-img::before {
    opacity: 1;
}

.styled-card-news .card-img::after {
    content: 'Read more';
    position: absolute;
    top: -webkit-calc(50% + 3em);
    top: -moz-calc(50% + 3em);
    top: calc(50% + 3em);
    left: 0;
    right: 0;
    height: 1.5em;
    margin: auto;
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    color: #fff;
    opacity: 0;
    -webkit-transition: top 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: top 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: top 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: top 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: top 0.4s cubic-bezier(0.445,0.05,0.55,0.95), opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    overflow: hidden;
    z-index: 2;
}

body.hasHover .styled-card-news:hover .card-img::after {
    top: -webkit-calc(50% + 1.5em);
    top: -moz-calc(50% + 1.5em);
    top: calc(50% + 1.5em);
    opacity: 1;
}

.styled-card-news .card-img .bg-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    z-index: 0;
}

.styled-card-news .card-img .bg-img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

.styled-card-news .card-content {
    position: relative;
    padding: 1em 0;
    overflow: hidden;
}

.styled-card-news .card-title {
    min-height: 3em;
    margin: 0 auto;
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.5;
    color: #032F4D;
}

.styled-card-news .card-date {
    margin: 0 auto 0.5em;
    font-size: 0.875em;
    font-weight: 500;
    line-height: 1.71;
    color: #046AAF;
}

.styled-card-video {
    position: relative;
    background-color: #fff;
}

.styled-card-video .card-video {
    position: relative;
    width: 100%;
    padding-top: 60%;
    border-radius: 0;
}

.styled-card-video.with-video-only .card-video {
    padding-top: 56.25%;
}

.styled-card-video .card-video .video-wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.styled-card-video .card-video .video-wrapper > iframe {
    display: block;
    width: 100%;
    height: 100%;
    margin: auto;
}

.styled-card-video .card-video .video-wrapper .card-video-thumbnail {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.styled-card-video .card-video .video-wrapper .card-video-thumbnail::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
		/*hover*/
		background-color: rgba(34,24,22,0.3);
    opacity: 0;
    -webkit-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    z-index: 0;
}

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-thumbnail > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

.styled-card-video .card-video .video-wrapper .card-video-btn {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    margin: auto;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer;
    opacity: 0;
    -webkit-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: opacity 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    z-index: 1;
    overflow: hidden;
}

.styled-card-video .card-video .video-wrapper .card-video-btn::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    width: 2.5em;
    height: 2.5em;
    margin: auto;
    background-image: url(../images/icon-play-white.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    -webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
	transform: translateY(-50%);
    overflow: hidden;
}

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 {
    position: relative;
    padding: 1em 0 0;
    overflow: hidden;
}

.styled-card-video .card-title {
    margin: 0.4em auto;
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.5;
    color: #032F4D;
}

.styled-card-video .card-subtitle {
    margin: 0 auto;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5;
    color: #032F4D;
}

.styled-card-video .card-date {
    margin: 0 auto;
    font-size: 0.875em;
    font-weight: 500;
    line-height: 1.71;
    color: #046AAF;
}

.styled-card-attraction {
    position: relative;
    background-color: #fff;
    box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.15);
    -webkit-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

body.hasHover .styled-card-attraction:hover {
    box-shadow: 0 0.125em 0.75em 0 rgba(0,0,0,0.25);
}

.styled-card-attraction .card-img {
    position: relative;
    width: 100%;
    padding-top: 75%;
    border-radius: 0;
}

.styled-card-attraction .card-img .bg-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    z-index: 0;
}

.styled-card-attraction .card-img .bg-img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

.styled-card-attraction .card-content {
    position: relative;
    padding: 1em;
    overflow: hidden;
}

.styled-card-attraction .card-title {
    margin: 0 auto;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5;
    color: #032F4D;
}

.styled-card-information {
    position: relative;
    background-color: #fff;
}

.styled-card-information .card-content {
    position: relative;
    padding: 1.5em;
    text-align: center;
    box-shadow: 0 0.125em 0.5em 0 rgba(45,52,16,0.1);
    -webkit-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

body.hasHover .styled-card-information:hover .card-content {
    box-shadow: 0 0.125em 0.75em 0 rgba(45,52,16,0.2);
}

.styled-card-information .card-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    margin: auto;
    background-color: #046AAF;
}

.styled-card-information .card-icon {
    width: 2.5em;
    height: 2.5em;
    margin: 0 auto 1em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.styled-card-information .card-title {
    margin: 0 auto;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.5;
    color: #046AAF;
}

.styled-card-blog-content .card-title {
    margin: 0 auto;
    font-size: 1.75em;
    font-weight: 700;
    line-height: 1.5;
    color: #032F4D;
}

.styled-card-blog-content .card-date {
    margin: 0 auto 0.5em;
    font-size: 0.875em;
    font-weight: 500;
    line-height: 1.71;
    color: #046AAF;
}

.styled-card-blog-content .content-text {
    padding-top: 2.5em;
}

.styled-card-blog-content .content-text figure {
    margin: 0 auto;
}

.styled-card-blog-content .content-text img {
    display: block;
    width: 100%;
    height: auto;
}

.styled-card-blog-content .content-text iframe {
    display: block;
    width: 800px;
    height: 450px;
    max-width: 100%;
    margin: 0 auto;
}

.styled-card-blog-content .card-btn-container {
    margin-top: 2.5em;
    text-align: right;
}

.styled-card-blog-content .card-btn {
    display: inline-block;
    position: relative;
    padding-left: 3em;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5;
    vertical-align: bottom;
    color: #EA6344;
}

.styled-card-blog-content .card-btn::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 2.5em;
    margin: auto;
    background-image: url(../images/icon-arrow-left-main.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: auto 0.5em;
}

.styled-card-winner {
    position: relative;
    background-color: #fff;
    box-shadow: 0 0.125em 0.5em 0 rgba(0,0,0,0.15);
    -webkit-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -moz-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -ms-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    -o-transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
    transition: box-shadow 0.4s cubic-bezier(0.445,0.05,0.55,0.95);
}

body.hasHover .styled-card-winner:hover {
    box-shadow: 0 0.125em 0.75em 0 rgba(0,0,0,0.25);
}

.styled-card-winner .card-img {
    position: relative;
    padding-bottom: 1.5em;
    border-radius: 0;
}

.styled-card-winner .card-img .bg-img {
    position: relative;
    width: 100%;
    padding-top: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.styled-card-winner .card-img .bg-img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
}

.styled-card-winner .card-img .card-img-heading {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 87.5%;
    margin: auto auto auto 0;
    padding: 0.45em 1.2em;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.5;
    color: #fff;
    background-color: #046AAF;
    z-index: 1;
}

.styled-card-winner .card-img .card-img-heading::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 0.2em;
    margin: auto;
    background-color: #046AAF;
}

.styled-card-winner .card-content {
    position: relative;
    padding: 1em 1.5em;
    overflow: hidden;
}

.styled-card-winner .card-title-text ~ .card-title-text {
    margin-top: 1em;
}

.styled-card-winner .card-title {
    margin: 0 auto;
    font-size: 0.875em;
    font-weight: 500;
    line-height: 1.57;
    color: #046AAF;
}

.styled-card-winner .card-text {
    margin: 0 auto;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.5;
    color: #032F4D;
}

.styled-card-blog {
    position: relative;
}

.styled-card-blog::after {
    content: '';
    display: block;
    clear: both;
}

.styled-card-blog .card-img {
    position: relative;
    float: left;
    width: 31.25em;
    margin-right: 1.5em;
    padding-top: 31.25em;
    border-radius: 0;
}

.styled-card-blog .card-img .bg-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.styled-card-blog .card-img .bg-img > img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    margin: 0 auto;
    line-height: 0;
    overflow: hidden;
}

.styled-card-blog .card-content {
    position: relative;
}

.styled-card-blog .card-content .card-content-heading {
    position: relative;
    left: -1.875em;
    margin: 0 -1.875em 0 auto;
    padding: 0.5em 0.75em;
    font-size: 2em;
    font-weight: 500;
    line-height: 1.5;
    color: #fff;
    background-color: #046AAF;
}

.styled-card-blog .card-content .card-content-heading::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 0.2em;
    margin: auto;
    background-color: #4585CF;
}

.styled-card-blog .card-content .card-content-header {
    position: relative;
    width: -webkit-calc(100% - 31.25em);
    width: -moz-calc(100% - 31.25em);
    width: calc(100% - 31.25em);
    margin: 0 0 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: -webkit-calc(100% - 31.25em - 1.5em);
    width: -moz-calc(100% - 31.25em - 1.5em);
    width: calc(100% - 31.25em - 1.5em);
    margin-left: auto;
    margin-right: 0;
    text-align: right;
}

.styled-card-blog .card-content .card-content-footer::after {
    content: '';
    display: block;
    clear: both;
}

.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: inline-block;
    /* float: left; */
    width: -webkit-calc((100% - 31.25em - 1.5em) * 0.5);
    width: -moz-calc((100% - 31.25em - 1.5em) * 0.5);
    width: calc((100% - 31.25em - 1.5em) * 0.5);
    margin-bottom: 1.5em;
    vertical-align: bottom;
}

.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: inline-block;
    /* float: left; */
    width: 50%;
    vertical-align: bottom;
}

.styled-card-blog ul.card-link-icon {
    display: inline-block;
    position: relative;
    margin: 0 auto;
    padding: 0;
    vertical-align: bottom;
    list-style: none;
    overflow: hidden;
}

.styled-card-blog ul.card-link-icon > li {
    float: left;
}

.styled-card-blog ul.card-link-icon > li ~ li {
    margin-left: 1.5em;
}

.styled-card-blog ul.card-link-icon > li > a {
    display: block;
    width: 1.5em;
    height: 1.5em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.styled-card-blog .card-title {
    margin: 0 auto 0.5em;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5;
    color: #046AAF;
}

.styled-card-blog .card-text {
    margin: 0 auto;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.5;
    color: #032F4D;
}

.styled-card-blog .card-intro {
    min-height: 9.9em;
}

/* -- Styled Button -- */
.styled-btn-normal {
    display: inline-block;
    width: 16em;
    max-width: 100%;
    height: 3.5em;
    margin-left: auto;
    margin-right: auto;
    padding: 1em;
    font-weight: 500;
    line-height: 1.5;
    vertical-align: bottom;
    text-indent: 0.0715em;
    letter-spacing: 0.0715em;
    color: #fff;
    background: #ea6344;
    border: none;
    border-radius: 2em;
    box-shadow: 0 0.1em 0.2em 0 rgba(0,0,0,0.2);
    cursor: pointer;
    overflow: hidden;
}

body:not(.hasHover) .styled-btn-normal:hover,
body.hasHover .styled-btn-normal:hover {
    color: #fff;
}

.styled-btn-normal.btn-size-normal {
    font-size: 20px;
}
