@import url('https://fonts.googleapis.com/css?family=Montserrat:400,400i,600,600i,700,700i,800,900&display=swap');

body {
    overflow-x: hidden;
    line-height: 1.5em;
    font-family: 'Montserrat', 'Calibri', Helvetica, 'Roboto Condensed', 'Noto Sans TC', 'Noto Sans SC', sans-serif;
}

html,
body {
    touch-action: manipulation;
}

.font-helvetica {
    font-family: Helvetica !important;
}

.tooltip_templates {
    display: none;
}

a {
    color: #2a3670;
    text-decoration: none !important;
}

a:hover {
    color: #01b5cc;
}

b {
    font-weight: bold;
}

img {
    vertical-align: middle;
}

input {
    min-height: 36px;
}

.grey {
    color: #343434;
}

.highlight {
    color: #2a3670 !important;
}

.highlight b {
    font-weight: 800;
}

.bg-primary {
    background: #01b5cc !important;
}

.bg-lightgrey {
    background: #f0f0f0;
}

.bg-color-block-1 {
    background: #ededed;
}

.font-12 {
    font-size: 12px !important;
}

.font-14 {
    font-size: 14px !important;
}

.font-15 {
    font-size: 15px !important;
}

.font-16 {
    font-size: 16px !important;
}

.font-17 {
    font-size: 17px !important;
}

.font-18 {
    font-size: 18px !important;
}

.font-21 {
    font-size: 21px !important;
}

.font-22 {
    font-size: 22px !important;
}

.font-26 {
    font-size: 26px !important;
}

.font-28 {
    font-size: 28px !important;
}

.font-44 {
    font-size: 44px !important;
}

.font-48 {
    font-size: 48px !important;
}

.font-60 {
    font-size: 60px !important;
}

.font-72 {
    font-size: 72px !important;
    line-height: 80px !important;
}

@media screen and (max-width: 1200px) {

    .font-72 {
        font-size: 6vw !important;
        line-height: 7vw !important;
    }

}

@media screen and (max-width: 767px) {

    .font-72 {
        font-size: 5vw !important;
        line-height: 6vw !important;
    }

}

.font-weight-semi-bold {
    font-weight: 600 !important;
}

.line-height-16 {
    line-height: 16px !important;
}

.line-height-20 {
    line-height: 20px !important;
}

.line-height-27 {
    line-height: 27px !important;
}

.line-height-98 {
    line-height: 98px !important;
}

.text-black {
    color: #000;
}

.paging {
    width: 100%;
    position: absolute;
    bottom: 40px;
    display: flex;
    justify-content: center;
}

.current-page,
.total-page {
    color: #fff;
    z-index: 2000;
    cursor: pointer;
}

.current-page {
    margin-right: 10px;
}

.total-page {
    margin-left: 10px;
}

.swiper-container {
    width: 100%;
    height: 824px;
}

.swiper-container .swiper-pagination-bullet {
    width: 25px;
    height: 7px;
    display: inline-block;
    background: #fff;
    border-radius: 4px;
    opacity: 1;
}


.swiper-container .swiper-pagination-bullet-active {
    opacity: 1;
    background: #fff;
    width: 85px;
}

.swiper-container .swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-container .swiper-pagination-custom,
.swiper-container .swiper-pagination-fraction {
    bottom: 10px;
    z-index: 20;
}

.overflow-x-hidden {
    overflow-x: hidden;
}

.news-swiper-container {
    width: 100%;
    height: 280px;
}

.center {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    justify-content: center;
    align-items: center;
    align-content: center;
}



.banner1 {
    background: url("../img/banner.jpg");
}

.banner2 {
    background: url("../img/banner2.jpg");
}

.banner3 {
    background: url("../img/banner3.jpg");
}

.banner4 {
    background: url("../img/banner4.jpg");
}

.banner5 {
    background: url("../img/banner5.jpg");
}

.inner1 {
    background: url("../img/inner1.jpg");
}

.inner2 {
    background: url("../img/inner2.jpg");
}

.inner3 {
    background: url("../img/inner3_hd.jpg");
}

.inner4 {
    background: url("../img/inner4.jpg");
}

.inner5 {
    background: url("../img/inner5_hd.jpg");
}

.inner6{
    background: url("../img/green_solution.jpg");
}

.inner7{
    background: url("../img/inner8.jpg");
    background-position: center top !important;
}


.bg-img {
    height: 824px;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
    margin-top: 0px;
    padding-top: 0;
    z-index: 1;
    text-align: left;
}

@media screen and (max-width:767px){

    .swiper-container {
        height: 70vh;
    }
    .bg-img {
        height: 70vh;
    }
}

.banner-slogan {
    text-align: center;
    position: relative;
}

.slogan-container {
    width: 100%;
    height: 100%;
    z-index: 9;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.slogan-container h1 {
    font-size: 117px;
    text-transform: uppercase;
    font-weight: 900;
    line-height: 117px;
    color: #0dcde9;
}

.slogan-container h2 {
    font-size: 72px;
    font-weight: 900;
    line-height: 72px;
    text-transform: uppercase;
    color: #fff;
}

.slogan-container h3 {
    text-transform: uppercase;
    font-weight: 900;
    color: #0dcde9;
    white-space: pre-wrap;
}

.slogan-container h4 {
    font-weight: 900;
    text-transform: uppercase;
    color: #fff;
    white-space: pre-wrap;
}

.slogan-container h6 {
    font-size: 22px;
    color: #fff;
}

.slogan-container p {
    font-size: 14px;
    color: #fff;
    margin: 1.5rem 7.5vw;
}

.arrow-down {
    background-color: rgba(255, 255, 255, 0.49);
    position: absolute;
    bottom: 40px;
    left: calc(50% - 54px / 2);
    height: 58px;
    width: 54px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.top-img {
    height: auto;
    min-height: 630px;
    width: 100%;
    /* background-attachment: fixed; */
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
    margin-top: 0px;
    padding-top: 0;
    z-index: 1;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
}

@media screen and (max-width: 480px){
    .top-img{
        min-height: 315px;
    }
}

.footer {
    padding-top: 8px;
    padding-bottom: 0px;
    height: auto;
    line-height: 17px;

    background-image: url(../img/sitemap_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #03b5cc;
    background-position: center center;
}

.footer-bottom {
    padding-top: 16px;
    display: flex;
    justify-content: center;
    background-color: #0094a7;
    padding-bottom: 32px;
}

.footer .row.bottom {
    width: 100%;
    margin: 0 7.5vw;
}

@media screen and (max-width: 1316px) {
    .footer .row.bottom {
        margin: 0 6vw;
    }
}

@media screen and (max-width: 1271px) {
    .footer .row.bottom {
        margin: 0 4vw;
    }
}

@media screen and (max-width: 1217px) {
    .footer .row.bottom {
        margin: 0 2.5vw;
    }
}

.footer .white-logo {
    margin-top: -30px;
    margin-left: 48px;
}

.sitemap {
    text-align: left;
}

.sitemap li {
    padding: 0px 0px;
}

.sitemap li a {
    line-height: 22px;
}

.footer p {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 16px;
    color: #fff;
}

.footer a {
    font-size: 16px;
    color: #fff;
}

.footer a:hover {
    color: #1f425d;
}


.footer h4 {
    font-size: 35px;
}

.sitemap a {
    font-size: 16px;
}

.sitemap p {
    font-size: 16px;
    padding: 0;
}

.sitemap b {
    font-size: 18px;
    line-height: 22px;
    font-weight: 900;
}

.sitemap b a {
    font-size: 18px;
    font-weight: 900;
    color: #fff;
}

.sitemap a:hover {
    color: #1f425d !important;
}

/*
.sitemap b:before {
  content: '›';
  font-size: 32px;
  margin-left: -20px;
  margin-right: 10px;
  color: #2a3670;
  vertical-align: -3px;
} */

.main-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.main-content.limit {
    margin: 0 auto;
    max-width: 821px;
}

.main-content .block {
    width: 100%;
}

.block.section {
    padding-top: 152px;
    padding-bottom: 152px;
}

.middle {
    display: flex;
    flex-direction: column;
    vertical-align: middle;
    justify-content: center;
}

.block.move-up {
    margin-top: -80px;
    z-index: 8999;
    margin-bottom: 80px;
}

.report-bg-move-up {
    margin-top: 80px;
    z-index: 8999;
    margin-bottom: 80px;
}

.send-to-front {
    z-index: 9000;
}

@media screen and (max-width: 767px) {

    .send-to-front {
        flex-wrap: wrap;
    }
}

.block-img {
    height: auto;
    max-height: 337px;
}

.main-content h1 {
    font-size: 117px;
    font-weight: 900;
}

.main-content h2 {
    font-size: 72px;
}

.main-content h3 {
    font-size: 54px;
}

.main-content h4 {
    font-size: 42px;
}

.main-content h5 {
    font-size: 36px;
    font-weight: bold;
}

.main-content h6 {
    font-size: 24px;
}

.light-title {
    color: #03b5cc;
}

.title-decor {
    padding-top: 84px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.title-decor::after {
    content: '....';
    font-size: 36px;
    line-height: 0;
    text-align: center;
}

@media screen and (max-width: 480px) {

    .title-decor {
        padding-top: 24px;
    }
    .main-content h5 {
        font-size: 30px;
    }
}

.w-fit {
    width: fit-content;
    display: inline-flex;
}

.services-container {
    overflow: hidden;
}

.services {
    position: relative;
    width: 100%;
    text-align: left;
    padding: 0 7.5vw;
    min-height: 400px;
    max-width: 1950px;
    margin-top: -120px
}

.stroke {
    color: #01b5cc;
    text-shadow:
        -1px -1px 0 #fff,
        1px -1px 0 #fff,
        -1px 1px 0 #fff,
        1px 1px 0 #fff;
}

h1.stroke {
    font-size: 179px !important;
    font-weight: 900;
}

h2.stroke {
    font-size: 105px !important;
    font-weight: 900;
}

.stroke.title-shadow {
    opacity: 0.29;
    padding-bottom: 20px;
    white-space: nowrap;
}


@media screen and (max-width:991.98px) {
    .slogan-container h1 {
        font-size: 60px;
        line-height: 60px;
    }
}

@media screen and (max-width:580px) {
    .slogan-container h1 {
        font-size: 48px;
        line-height: 48px;
    }

    .slogan-container h2 {
        font-size: 48px;
        line-height: 48px;
    }

    .slogan-container h6 {
        font-size: 14px;
    }
}


@media screen and (max-width:480px) {
    .slogan-container h1 {
        font-size: 36px;
        line-height: 48px;
    }

    .slogan-container h2 {
        font-size: 24px;
        line-height: 28px;
    }

    .slogan-container h6 {
        font-size: 14px;
    }

    .scroll-down-button img{
        width: 100%;
        max-width: 60px;
    }
}

.services .image {
    position: absolute;
    top: 0;
    z-index: 20;
}

.services01 .image {
    width: 615px;
    height: 404px;
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

@media screen and (max-width: 480px){
    .services01 .image {
        height: auto;
    }
}

.services .title-container {
    margin-left: 480px;
    margin-top: 120px;
    display: flex;
    align-items: flex-end;
    position: relative;
}

.title-container .title {
    position: absolute;
    left: 220px;
    top: 150px;
    font-weight: bold;
    white-space: nowrap !important;
}

.services .desc {
    margin-left: 620px;
    width: 46%;
}

ul.desc {
    list-style: disc;
}

ul.desc li {
    font-size: 16px;
}

.services02 {
    margin-left: 320px;
}

.services02 .image {
    top: 220px;
    margin-left: 80px
}

.services02 .title-container .title {

    left: 256px;
}

.services03 .image {
    top: 140px;
    margin-left: 270px
}

.services03 .title-container .title {

    left: 256px;
    white-space: pre-wrap;
}

.news-container {
    height: 451px;
    padding-right: 7.5vw;
    overflow: hidden;
}

.news-image-container {
    width: calc(100vw - 720px - 7.5vw);
    height: 451px;
    z-index: 200;
}

.news-image-container img {
    width: 100%;
    height: auto;
    min-height: 451px;
    min-width: 1159px;
}

.news-swiper-container {
    margin: 0 auto;
    min-width: 360px;
    max-width: 720px;
    height: 451px;
    white-space: nowrap;
}

@media screen and (max-width: 1885px) {

    .news-image-container {
        width: 1159px;
        margin-left: calc(100vw - 1885px);
    }
}

@media screen and (max-width: 787px) {

    .news-image-container {
        margin-left: calc(40px - 1159px);
    }

    .news-container {
        padding-right: 40px;
    }

    .news-swiper-container {
        width: auto;
        min-width: 320px;
        max-width: 720px;
    }
}

@media screen and (max-width: 1740px) {

    .services01,
    .services03 {
        margin-left: -160px;
    }

    .services02 {
        margin-left: 160px;
    }
}


@media screen and (max-width: 1540px) {

    .services01,
    .services03 {
        margin-left: -120px;
    }

    .services02 {
        margin-left: 0px;
    }
}

@media screen and (max-width: 1200px) {

    .services {
        padding: 0;
        margin: 0 -20vw;
        max-width: unset;
    }

}


@media screen and (max-width: 900px) {

    .title-container .title-shadow{
        display:none;
    }
    .services {
        margin: 0 -30vw;
    }
    .services .title-container {
        margin-top: 200px;
        margin-left: 580px;
    }
    .services02 .title-container{
        margin-top: 20px;
    }
    .services .title-container .title {
        top: 220px;
        left: calc(30vw - 580px + 60px);
    }

    .services .desc {
        margin-left: calc(30vw + 60px);
        width: calc(100% - 120px);
        margin-top: 40px;
    }
    .services03 .image {
        top: -50px;
    }
}

@media screen and (max-width: 768px) {

    .services {
        margin: 0 -50vw;
    }
    .services .title-container .title {
        left: calc(50vw - 580px + 60px);
    }
    .services .desc {
        margin-left: calc(50vw + 60px);
        margin-top: 40px;
    }
}

@media screen and (max-width: 640px) {
    .services {
        margin: 0 -70vw;
    }

    .services .title-container .title {
        left: calc(70vw - 580px + 60px);
    }
    .services .desc {
        margin-left: calc(70vw + 60px);
        margin-top: 40px;
    }
}

@media screen and (max-width: 520px) {

    .services {
        margin: 0 -80vw;
    }
    .services .title-container .title {
        left: calc(80vw - 580px + 60px);
    }
    .services .desc {
        margin-left: calc(80vw + 60px);
        margin-top: 40px;
    }
}

@media screen and (max-width: 480px) {
    .services {
        margin: 0 -448px;
    }
    .services .title-container .title {
        left: calc(448px - 580px + 60px);
    }
    .services .desc {
        margin-left: calc(448px + 60px);
        margin-top: 40px;
    }

    h1.stroke {
        /* font-size: 105px !important;*/
    }

    h2.stroke {
        font-size: 72px !important;
    }

    .stroke.title-shadow {
        padding-bottom: 10px;
    }


    .services01 .title-container {
        margin-top: 0px;
    }

    .services01 .title-container .title {
        /* top: 140px;*/
        /* left: -80px;*/
    }

    .title-container .title {
        position: absolute;
        left: 140px;
        margin-top: -20px;
        font-weight: bold;
        font-size: 20px;
    }

    .services02 .title-container .title,
    .services03 .title-container .title {

        /*  left: 160px;*/
    }

    .services02 .image {
        top: 20px;
    }

    .main-content h2 {
        font-size: 32px;
    }

    .main-content h3 {
        font-size: 28px;
    }
}

.bg-strength {
    background-color: #eef9fa;
    background-image: url(../img/strength_bg.jpg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    height: 781px;
    width: 100%;
}

@media screen and (max-width:480px){
    .bg-strength {
        height: auto;
    }
}

.strength-container {}

.strength-figure-container {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-end;
}

.strength-figure {
    color: #01b5cc !important;
    display: flex;
}

.strength-figure span {
    text-align: right !important;
}

h1.strength-figure {
    font-size: 100px;
    line-height: 100px;
    white-space: nowrap;
}

h6.strength-figure {
    font-size: 100px;
    line-height: 100px;
    white-space: nowrap;
    margin-top:0;
}

.strength-desc {
    color: #1f425d;
    white-space: nowrap;
    min-width: 153px;
    padding-bottom: 10px;
}

h6.strength-desc {
    font-size: 22px;
    line-height: 22px;
}

@media screen and (max-width: 1480px) {

    h1.strength-figure {
        font-size: 80px;
        line-height: 80px;
        white-space: nowrap;
    }

    h6.strength-desc {
        font-size: 20px;
        line-height: 20px;
    }

}

.odometer {
    font-family: 'Montserrat', 'Helvetica Neue', 'Roboto Condensed', 'Noto Sans TC', 'Noto Sans SC', sans-serif !important;
}

@media screen and (max-width: 580px) {

    h1.strength-figure {
        font-size: 72px;
        line-height: 72px;
    }

    h6.strength-desc {
        font-size: 16px;
        line-height: 16px;
    }
}

@media screen and (max-width: 480px) {

    h1.strength-figure {
        font-size: 64px;
        line-height: 64px;
    }

    .strength-desc {

        min-width: auto;
    }

    h6.strength-desc {
        font-size: 14px;
        line-height: 14px;
    }
}

.bg-points {
    background-image: url(../img/point_bg.jpg);
    /* background-attachment: fixed; */
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 730px;
    width: 100%;
}

@media screen and (max-width: 480px){
    .bg-points {
        min-height: auto;
    }
}

.point-container .title-decor {
    padding-top: 0px;
}

@media screen and (max-width: 1200px) {

    .points-row {
        flex-wrap: wrap-reverse;
    }

    .point-container .title-decor {
        padding-top: 84px;
    }
}

.point {
    margin-left: 7.5vw;
    position: relative;
    text-shadow:
        0 0 6px rgba(202, 228, 225, 0.98),
        0 0 30px rgba(202, 228, 225, 0.42),
        0 0 12px rgba(30, 132, 242, 0.58),
        0 0 22px rgba(30, 132, 242, 0.84),
        0 0 38px rgba(30, 132, 242, 0.88),
        0 0 60px rgba(30, 132, 242, 1);
}

/*
.point:hover {
  animation: neon .08s ease-in-out infinite alternate;
} */

@keyframes neon {
    from {
        text-shadow:
            0 0 6px rgba(202, 228, 225, 0.92),
            0 0 30px rgba(202, 228, 225, 0.34),
            0 0 12px rgba(30, 132, 242, 0.52),
            0 0 21px rgba(30, 132, 242, 0.92),
            0 0 34px rgba(30, 132, 242, 0.78),
            0 0 54px rgba(30, 132, 242, 0.92);
    }

    to {
        text-shadow:
            0 0 6px rgba(202, 228, 225, 0.98),
            0 0 30px rgba(202, 228, 225, 0.42),
            0 0 12px rgba(30, 132, 242, 0.58),
            0 0 22px rgba(30, 132, 242, 0.84),
            0 0 38px rgba(30, 132, 242, 0.88),
            0 0 60px rgba(30, 132, 242, 1);
    }
}

.point::before {
    content: ' ';
    width: 7.5vw;
    height: 1px;
    background: white;
    position: absolute;
    left: -7.5vw;
    top: 50%;
}

.point h5 {
    position: relative;
    margin-left: 32px;
    margin-top: 48px;
    margin-bottom: 48px;
}

@media screen and (max-width: 580px) {
    .point h5 {
        font-size: 24px !important;
    }
}

.point h5::before {
    content: '•';
    position: absolute;
    margin-top: -2px;
    height: 100%;
    left: -32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.stock-quote {}

.stock-quote .company {
    color: #03b5cc;
    font-size: 16px;
    line-height: 16px;
}

.stock-quote .price {
    font-weight: 900;
}

.stock-quote .stock-up {
    color: #25a00d
}

.stock-quote .stock-down {
    color: red
}

.stock-quote .stock-up,
.stock-quote .stock-down {
    font-size: 24px;
}

.stock-title,
.stock-change {
    font-size: 14px;
    font-weight: bold;
}

.reports div:hover img {
    border: 1px solid #01b5cc;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.15);
}

.contacts .title {
    min-width: 110px;
}

.contacts.extend .title {
    min-width: 280px;
    font-weight: bold;
}

@media screen and (max-width: 767px) {

    .contacts.extend .title {
        min-width: 100%;
        padding-top: 8px
    }
}

.contacts .desc,
.contacts .title {
    font-size: 16px;
    line-height: 22px;
    font-weight: normal;
}

.main-content p {
    font-size: 16px;
    line-height: 23px;
}

.main-content ul.inner {
    text-indent: 8px;
    margin-left: 16px;
}

.main-content ul.inner li {
    font-size: 16px;
    line-height: 23px;
}

.main-content ul.inner li::before {
    content: "•";
    color: #0dcde9;
    font-size: 32px;
    vertical-align: -4px;
    line-height: 23px;
    padding-right: 8px;
    margin-left: -24px
}

.bg-about-seperate {
    background-image: url(../img/about1.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    min-height: 630px;
    width: 100%;
}

.bg-forward-seperate {
    background-image: url(../img/forward.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

.bg-forward-seperate-road {
    background-image: url(../img/road-banner.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

.bg-forward-seperate-rail {
    background-image: url(../img/rail-freight2.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

.bg-forward-seperate-cb {
    background-image: url(../img/cb-banner.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

.bg-forward-seperate-iff {
    background-image: url(../img/MarketWatch.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

.bg-hub-seperate {
    background-image: url(../img/hub.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

.bg-ef-seperate {
    background-image: url(../img/ef.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

.bg-eff-seperate {
    background-image: url(../img/efullfill.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    height: 300px;
    width: 100%;
}

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

@supports (-webkit-touch-callout: none) {
    /* CSS specific to iOS devices */

    .bg-forward-seperate-iff {
        background-attachment: scroll;
    }

    .bg-forward-seperate-cb {
        background-attachment: scroll;
    }

    .bg-forward-seperate-rail {
        background-attachment: scroll;
    }

    .bg-forward-seperate-road {
        background-attachment: scroll;
    }


    .bg-about-seperate {
        background-attachment: scroll;
    }

    .bg-forward-seperate {
        background-attachment: scroll;
    }

    .bg-hub-seperate {
        background-attachment: scroll;
    }

    .bg-ef-seperate {
        background-attachment: scroll;
    }

    .bg-eff-seperate {
        background-attachment: scroll;
    }
}

.bg-semi-white {
    background-color: rgba(255, 255, 255, 0.79);
}

.report-block {
    background-color: #03b5cc;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
}

.report-block~div img{
    min-height: 300px;
}

.report-block h4 {
    font-size: 40px;
}

@media screen and (max-width: 767px){
    .report-block h4 {
        font-size: 32px;
    }
}

@media screen and (max-width: 480px){
    .report-block h4 {
        font-size: 28px;
    }
    .report-block h6 {
        font-size: 18px;
    }
    .report-block .font-22{
        font-size: 16px !important;
    }
}
h2.head {
    margin-top: 56px;
    margin-bottom: 16px;
}

.more-button {
    position: relative;
    width: 116px;
    height: 34px;
    font-size: 12.2px;
    line-height: 34px;
    font-weight: bold;
    background: #005393;
    margin-top: 32px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    align-self: center;
    border: 1px solid #005393;
}

.more-button a {
    color: #fff;
}

.more-button span {
    padding-left: 12px;
    font-size: 20px;
    vertical-align: 0px;
}

.more-button:hover {
    background: #fff;
}

.more-button:hover a {
    color: #005393
}

.block .image-card {
    margin: 0 auto;
    width: 100%;
    max-width: 437px;
    height: 100%;
    max-height: 437px;
}

.block .image-card img {
    width: 100%;
    height: 100%;
}

.block .image-card .overlay {
    position: absolute;
    top: 0;
    padding: 0;
    width: 100%;
    max-width: 437px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media screen and (max-width: 480px) {
    .block .image-card .overlay {
        top: 0;
        padding: 0;
        width: auto;
        max-width: auto;
        margin: 0 auto;
        left: 5%;
        right: 5%;
    }
}

ul.inline-list {
    list-style: disc;
}

ul.inline-list li {
    list-style-position: outside;
    font-size: 14px;
}

.divider {
    background: #2a3670;
    width: 100%;
}

.thin.divider {
    height: 16px;
}

.thick.divider {
    height: 42px;
}

ul.item-list {
    list-style: disc;
    margin-left: 20px;
}

ul.item-list li {
    font-size: 15px;
    line-height: 30px;
}

@media only screen and (max-width: 1200px) {
    .swiper-container {
        margin-top: 0;
    }

    .main-content.limit {
        margin: 0 40px;
        max-width: 1160px;
    }
}

.circle {
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #fff;
    border-radius: 50%;
    width: 240px;
    height: 240px;
}

.sub {
    position: absolute;
    top: 116px;
    width: 100%;
    color: #fff;
    font-size: 18px;
}

.odometer {
    margin-top: -260px;
    color: #fff;
    font-size: 48px;
    font-weight: 900;
}

.mask {
    height: 60px;
    width: 100%;
    color: #fff;
    position: absolute;
    bottom: 0;
    text-align: center;
    font-size: 20;
    font-weight: bold;
}

.mask div {
    margin-top: -12px;
}

.border-top,
.border-bottom {
    border-color: #000 !important;
}

.text-box {
    border-radius: 0px;
    border: none;
    font-size: 16px;
    height: 48px;
    padding: 0 20px !important;
}

@media screen and (max-width: 480px){
    .text-box {
        font-size: 12px;
    }
}

.submit-button {
    background-color: #34517f;
    height: 48px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
}

.submit-button:hover {
    animation: neon .08s ease-in-out infinite alternate;
}

.bottom-0 {
    bottom: 0;
}

.h-280 {
    height: 280px;
}

.reports-card {
    margin-right: 120px;
}

@media screen and (max-width:767px) {
    .reports-card {
        margin-right: 40px;
        flex: 1 0 100%;
    }
}

.reports-card-img {}

.reports-card-img img {
    max-height: 298px;
    width: auto;
}

.reports-card-text {
    padding-left: 8px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: -18px;
    position: relative;
}

.reports-card-text div {
    height: 57px;
}

.reports-card-text p {
    position: absolute;
    bottom: 0;
}

.b_logo {
    max-width: 173px;
    max-height: 50px;
    height: auto;
    width: 100%;
    margin: auto;
}

@keyframes fadein {
    from {
        padding-top: 30px;
        border-bottom: none;
    }

    to {
        padding-top: 20px;
        border-bottom: 10px solid #2a3670;
    }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
    from {
        padding-top: 30px;
        border-bottom: none;
    }

    to {
        padding-top: 20px;
        border-bottom: 10px solid #2a3670;
    }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from {
        padding-top: 30px;
        border-bottom: none;
    }

    to {
        padding-top: 20px;
        border-bottom: 10px solid #2a3670;
    }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from {
        padding-top: 30px;
        border-bottom: none;
    }

    to {
        padding-top: 20px;
        border-bottom: 10px solid #2a3670;
    }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from {
        padding-top: 30px;
        border-bottom: none;
    }

    to {
        padding-top: 20px;
        border-bottom: 10px solid #2a3670;
    }
}

.hover {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

.hover a {
    font-weight: bold;
}

.hover:hover {
    filter: none;
}

.hover:hover a {
    font-weight: bold;
    color: #2a3670;
}

.main-content .dropdown {
    max-width: 180px;
    width: 100%;
}

.main-content .dropdown .dropdown-toggle {
    max-width: 180px;
    width: 100%;

    background: #2a3670;
    color: #fff;
    border-radius: 4px;
    border: none;
    padding-left: 37px;
    padding-top: 8px;
    padding-bottom: 8px;
    font-size: 16.5px;
}

.main-content .dropdown.show .dropdown-toggle {

    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.main-content .dropdown .dropdown-toggle::after {
    float: right;
    margin-top: 8px;
    margin-right: 12px;
}

.main-content .dropdown .dropdown-menu {
    max-width: 180px;
    width: 100%;
    background: #01b5cc;
    border: none;
    margin-top: 0;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    padding: 4px 0 0 0;
}

.main-content .dropdown-menu .dropdown-item {
    color: #fff;
    font-size: 16.5px;
    padding-left: 37px;
    padding-top: 8px;
    padding-bottom: 8px;
}

.main-content .dropdown-menu .dropdown-item:not(:last-child) {
    border-bottom: 1px solid #fff;
}

.main-content .dropdown-menu .dropdown-item:hover {
    background: #2a3670;
}

.main-content .dropdown .dropdown-menu.show:before {
    width: 0;
    height: 0;
    margin-top: -14px;
    margin-left: 8px;
    content: "";
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #01b5cc;
    position: absolute;
}

.large {
    max-width: 240px !important;
}

.table {
    width: 100%;
}

.table .th {
    font-size: 18px;
    font-weight: 600;
    border-bottom: 5px solid #2a3670;
}

.table .td {
    font-size: 16px;
    padding-top: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid #01b5cc;
}

.table .pagination {
    margin-top: 20px;
    width: 100%;
    justify-content: center;
}

.table .pagination .page {
    font-size: 18px;
    color: #2a3670;
    line-height: 28px;
    width: 28px;
    height: 28px;
    text-align: center;
}

.table .pagination .page:hover,
.table .pagination .page.active {
    color: #fff;
    background: #2a3670;
    border-radius: 50%;
}

i.fa-file-pdf-o {
    color: #2a3670;
    font-size: 18px;
}

.form {
    justify-content: center;
    display: flex;
    flex-direction: column;
}

.form span {
    color: red;
}

.form .row {
    margin: 10px 0;
}

.form .field {
    width: 100%;
    background: #e4e4e4;
    border: none;
}

.form .button {
    background: #2a3670;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    border: none;
    border-radius: 0;
    padding: 12px 24px;
    width: 120px;
}

.form .button:last-child {
    margin-left: 30px;
}

.contact-block .col-1 {
    max-width: 30px;
}

.email-form td {
    display: flex;
    margin: 4px 0px;
    align-items: center;
}

.email-form input[type="checkbox"] {
    flex: 1 0 24px;
    min-height: 24px;
    max-width: 24px;
    margin-right: 8px;
}

.align-center {
    align-items: center;
}

.ui input {
    min-height: unset;
}

.ir_stock_box {
    width: 700px;
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: #f1f1f1;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    border-bottom: solid;
    border-bottom-width: 1px;
    border-bottom-color: #ffffff;
}

.ir_stock_box_2 {
    width: 700px;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #f1f1f1;
    border-bottom: solid;
    border-bottom-width: 1px;
    border-bottom-color: #ffffff;
    text-align: center;
}

.stock_text {
    font-size: 13px;
    text-transform: none;
    color: #666666;
    line-height: 18px;
}

.stock_text_green {
    font-size: 30px;
    text-transform: none;
    line-height: 22px;
    color: #009E20;
    font-weight: bold;
}

.stock_text_green_s {
    font-size: 24px;
    text-transform: none;
    line-height: 22px;
    color: #009E20;
}

.border-left-dashed {

    border-left: dashed;
    border-left-width: 1px;
    border-left-color: #cfcfcf;
}

.stock_text_big {
    font-size: 22px;
    text-transform: none;
    color: #666666;
    line-height: 18px;
    font-weight: bold;
}

.stock_text_footer {
    font-size: 12px;
    text-transform: none;
    line-height: 22px;
    color: #b1b1b1;
    text-align: center;
}

.btn-default {
    border-bottom: 2px solid transparent;
    border-radius: 0;
}

.btn-default:hover {
    border-bottom: 2px solid #2a3670;
    color: #2a3670
}

.line_report {
    width: 100%;
    height: 2px;
    background: #2a3670;
}

.select_butt_o:link {
    color: #ffffff;
    text-decoration: none;
}

.select_butt_o {
    font-size: 14px;
    color: #ffffff;
    width: 150px;
    text-decoration: none;
    text-align: center;
    line-height: 28px;
    border: 1px solid #2a3670;
    height: 28px;
    display: block;
    font-weight: bold;
    background: #2a3670;
    margin-bottom: 12px;
}

.check_box {
    font-size: 14px;
    text-transform: none;
    color: #444444;
    line-height: 28px;
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.select_butt:link {
    color: #2a3670;
    text-decoration: none;
}

.select_butt {
    font-size: 14px;
    color: #2a3670;
    width: 150px;
    text-decoration: none;
    text-align: center;
    line-height: 28px;
    border: 1px solid #2a3670;
    height: 28px;
    display: block;
    font-weight: bold;
    margin-bottom: 12px;
}

.check_box input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.check_box input:checked~.checkmark {
    background-color: #2a3670;
}

.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
}

.check_box input:checked~.checkmark:after {
    display: block;
}

.check_box .checkmark:after {
    left: 9px;
    top: 5px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.text_date {
    font-size: 13px;
    text-transform: none;
    color: #2a3670;
    line-height: 22px;
    font-weight: bold;
}

.text {
    font-size: 14px;
    text-transform: none;
    color: #000000;
    line-height: 22px;
    text-align: justify;
}

.line_1 {
    width: 100%;
    height: 1px;
    background: #2a3670;
}

.sticky>.row {
    align-items: center;
}

.logos {
    margin: 100px 0px;
}

.logos img {
    height: 108px;
}

.logos p {
    margin-top: 20px;
}

.modal-backdrop {
    z-index: 10000;
}

.ui.modal {
    margin: 25vh auto;
    z-index: 10001;
    position: fixed;
    height: 50vh;
}

.lg-backdrop {
    z-index: 10000;
}

.lg-outer {
    z-index: 10001;
}

.image-holder {
    height: 360px;
    max-width: 100%;
    overflow: hidden;
}

.active.title {
    color: #2a3670 !important;
}

.extra {
    font-size: 13px;
    color: #666666
}

.contents-news .card .image {
    max-height: 200px;
    overflow: hidden;
}

.clickable {
    cursor: pointer;
}

.clickable:hover {
    color: #01b5cc !important;
}

.collapse.show+div .reverse {
    display: none;
}

@media screen and (max-width: 767px) {

    .ui.tabular.menu {
        display: flex;
        flex-direction: column;
    }

    .ui.buttons {
        display: flex;
        flex-wrap: wrap;
    }

    .font-60 {
        font-size: 32px !important;
    }
}

.stock-info {
    background-color: #f5f5f5;
    box-shadow: 0 10px 5px -5px rgba(0, 0, 0, .1);
    margin-bottom: 30px;
    padding: 30px;
}

.presentation-title {
    padding-bottom: 8px;
    border-bottom: 2px solid #e5e5e5
}

.download-item {
    cursor: pointer;
    background-color: #f5f5f5;
    color: #000;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 14px;
    margin-bottom: 10px;
    transition: all .2s ease-in-out;
}

.block-item {
    transition: background-position .2s ease-in-out;
    background-size: 100% 200%;
    background-image: linear-gradient(180deg, #f5f5f5 50%, #2a3670 0);
    padding: 1.5em 2em;
    border-top: 4px solid #2a3670;
    box-shadow: 0 10px 5px -5px rgba(0, 0, 0, .1);
    margin: 15px 0;
}

.block-item .block-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.block-item .block-content .block-text-wrapper {
    padding-left: 1.5em;
    text-align: left;
}

.block-item .block-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0;
}

.block-item .link-icon-btn {
    font-weight: 700;
    font-size: 16px;
    display: inline-block;
    margin-right: .5em;
}

.brand-tab:hover {
    color: #e81e25 !important;
}

.bottom-line-indicator {
    width: 148px;
    height: 38px;
    border-bottom: 1px solid #2a3670;
}

.bottom-line-indicator-w {
    width: 148px;
    height: 38px;
    border-bottom: 1px solid #fff;
}

.bottom-line-indicator-w.long {
    flex: 1 0 auto;
}

.flex-1 {
    flex: 1;
}

.big-logo-wrapper {
    position: absolute;
    margin-top: 65px;
}

.underline {
    padding-bottom: 14px;
    border-bottom: 8px solid #4c0901;
}

.news-wrapper {
    background: url(../img/news.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    min-height: 650px;
}

.news-content {
    text-align: left;
    padding-top: 60px;
}

.news-content h4 {
    margin-left: 12px;
    padding-right: 12px;
    font-size: 30px;
    min-width: 120px;
}

.news-content .news-row {
    padding-left: 160px;
    padding-right: 20px
}

.news-content .news-row p {
    font-size: 20px;
    text-align: justify;
    line-height: 22px;
    margin-top: 32px;
}

.news-content .news-row span {
    font-size: 18px;
}

.news-content .news-row span a {
    color: white;
}

.news-content .news-row span a:hover {
    color: #2a3670;
}

.border-top-b {
    border-top: 1px solid #1f425d;
}

.border-bottom-b {
    border-bottom: 1px solid #1f425d;
}

.margin-left-12 {
    margin-left: 12px;
}

.email-alert-input {
    position: relative;
    height: 60px;
    flex: 1 0 auto;
    border: none;
    padding: 20px;
}

.email-alert-input-arrow {
    position: absolute;
    font-size: 32px;
    line-height: 32px;
    right: 68px;
    top: 18px;
    color: #2a3670;
    vertical-align: -3px;
}

.chevron::before {
    border-style: solid;
    border-width: 0.1em 0.1em 0 0;
    border-color: #2a3670;
    content: '';
    display: inline-block;
    height: 0.45em;
    left: 0.15em;
    position: relative;
    top: 0.15em;
    transform: rotate(-45deg);
    vertical-align: top;
    width: 0.45em;
}

.chevron.right:before {
    left: 0;
    transform: rotate(45deg);
}

.sitemap-logo {
    padding-top: 52px;
}

.d-flex.align-center {
    flex-direction: column;
    align-items: center;
}

.transparent-button {
    background: transparent;
    border: 1px solid #fff;
}

.left-block {
    min-height: 600px;
    text-align: left !important;
}

.right-block {
    min-height: 600px;
    text-align: left !important;
}

.announce {
    min-height: 689px;
    padding-bottom: 32px;
}

.announce-container {
    width: 100%;
    background: rgba(60, 81, 120, 0.65);
    z-index: 9;
    text-align: center;
}

.white-circle {
    background: #fff;
    width: 72px;
    height: 72px;
    font-size: 19px;
    border-radius: 50%;
    color: #2a3670;
    line-height: 20px;
    padding: 16px 0px;
}

.white-circle span {
    color: #2a3670;
    font-size: 36px;
}

.justify-content-end {
    justify-content: flex-end;
}

.announcements {
    text-align: left;
}

.announcements .date {
    font-size: 20px;
    font-weight: bold;
    color: #03b5cc;
}

.announcements .title {
    font-size: 16px;
    line-height: 20px;
    font-weight: normal;
    width: 100%;
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.ir-section {
    background: url(../img/ir.jpg);
    min-height: 1168px
}

.white-box {
    background: #fff;
    width: 100%;
    padding: 32px 16px;
}

.event-row {
    text-align: left;
}

.event-row .title {
    font-size: 22px;
    font-weight: normal;
    line-height: 37px;
}

.event-row .desc {
    font-size: 17px;
    line-height: 23px;
    font-weight: normal;
}

.sub-menu {
    background: url(../img/menu-bg.jpg);
    position: absolute;
    width: 365px;
    min-height: 365px;
    border: 18px solid #fff;
    right: 7.5vw;
    bottom: -180px;
    z-index: 1000;
}

.sub-menu .white-box {
    min-height: calc(365px - 4rem);
}

.sub-menu ul li a {
    text-transform: uppercase;
    line-height: 32px;
    font-size: 18.5px;
}

.scroll-down-button {
    position: absolute;
    bottom: 80px;
    left: 0;
    width: 100%;
    z-index: 100;
}

/* 2023/02/07 JOSE */

#AwardsDiv{
    display: flex;
    flex-direction: column;
}

#AwardsDiv .col-12{
    padding: 30px 20px 20px;
    margin-bottom: 40px;
}

#AwardsDiv h6{
    font-size: 21px;
    text-align: start;
}

.awards-box{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px 40px 0;
}

.awards-item{
    box-sizing: border-box;
    width: 100%;
    max-width: 30%;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.awards-item2{
    box-sizing: border-box;
    width: 100%;
    max-width: 23%;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.awards-img{
    min-height: 230px;
    display: flex;
    align-items: center;
}

.awards-item img{
    max-width: 230px;
    max-height: 170px;
    vertical-align: middle;
}

.awards-name{
    margin-top: 15px;
    font-size: 16px;
}

.awards-sub-title{
    margin: 20px 0 0;
    text-align: start;
}

#KeyFiguresDiv .ui-tabs-nav{
    display: flex;
    flex-direction: row;
}

#KeyFiguresDiv .ui-tabs-nav li.ui-tabs-tab {
    width: 100%;
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover{
    border: 1px solid #02a9be!important;
    background: #03b5cc!important;
}

.gov-item{
    padding: 20px;
}

.gov-item p{
    padding-top: 10px;
}

#IrContactDiv{
    padding: 0 40px;
}

.company-name{
    margin-bottom: 20px;
}

.contact-item{
    margin-bottom: 10px;
}

.contact-item:last-child{
    margin-bottom: 0;
}
