﻿/* #region 文字相關設定 */
.text-center {
    text-align: center;
}

.text-ellipsis {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.text-fade.one-line {
    overflow: hidden;
    white-space: pre;
    position: relative;
}

.text-fade.multi-line {
    overflow: hidden;
    position: relative;
}

.text-fade::after {
    content: "";
    position: absolute;
    box-shadow: 1px 0px 7px 10px #fff;
    background-color: rgb(255 255 255 / 0%);
    z-index: 1;
}

.text-fade.multi-line.bottom::after {
    bottom: -12px;
    left: 0;
    width: 100%;
    height: 10px;
}

.text-fade.one-line.right::after {
    top: 0;
    right: -12px;
    width: 10px;
    height: 100%;
}

.bold-text {
    font-weight: bold !important;
}

.lh-2 {
    line-height: 2;
}

/* #endregion 小設定 */
/*#region 不存在頁面*/
.page-not-exist {
    height: 500px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.page-not-exist-icon {
    display: block !important;
    margin-right: 20px;
    text-align: center;
    font-size: 70px;
    color: #ffc800;
}

.page-not-exist-title,
.page-not-exist-link {
    font-family: var(--default-ff);
}

.page-not-exist-title {
    margin-bottom: 20px;
    color: #cdcdcd;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
}

.page-not-exist-link {
    margin: 0 auto;
    font-size: 16px;
}

/*#endregion*/
/* #region Banner*/
.banner-wrap {
    max-width: 100%;
}

.banner-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    margin: 0 50px;
}

.banner-title,
.banner-desc {
    text-align: center;
    color: #fff;
    text-shadow: 1px 1px 6px #292318c7;
    /* #98654b */
}

.banner-title {
    margin-bottom: 10px;
    font-size: 40px;
    font-family: var(--link-ff);
    font-weight: bold;
}

.banner-desc,
.banner-button {
    font-size: 16px;
    /* font-weight: bold; */
    font-family: var(--link-ff);
}

.pic.banner-wrap {
    height: 160px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    /* background-image: url(../../assets/images/AppFunc/app_banner01.png); */
    background-color: #ffeda5;
}

    .pic.banner-wrap .banner-desc {
        font-size: 0;
    }

/* #endregion */
/* #region 標題、標題下小敘述相關 */
.little-bottom-border {
    position: relative;
    padding-bottom: 10px;
}

    .little-bottom-border::after {
        content: '';
        width: 60px;
        height: 3px;
        background-color: rgb(255 193 61);
        border-radius: 3px;
        position: absolute;
        bottom: 5px;
        left: 0%;
    }

.title-with-bar {
    position: relative;
    color: var(--normal-text-color);
    text-align: center;
    font-size: 24px;
    /* font-weight: bold; */
    font-family: var(--default-ff);
}

    .title-with-bar.left {
        width: fit-content;
        text-align: left;
    }

    .title-with-bar::after {
        content: "";
        width: 80px;
        height: 3px;
        /* background-color: rgb(255 193 61); */
        background: linear-gradient(217deg, #ffbb2a52, #ffffff6b 70%), linear-gradient(127deg, #fff9ea, #ffffff6b 70%), linear-gradient(336deg, #ffe9bb, #ff700c);
        border-radius: 3px;
        position: absolute;
        bottom: -7px;
        left: 50%;
        transform: translateX(-50%);
    }

.content-box-title {
    margin-bottom: 30px;
}

.content-box-desc {
    margin: 0 10px 14px;
    color: var(--gray-text-color);
    text-align: center;
    font-size: 16px;
    font-family: var(--default-ff);
}

/* #endregion 區塊標題 */
/* #region point內容 */

.point-item {
    margin-bottom: 30px;
}

.point-head {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.point-icon-wrap {
    width: 80px;
    height: 80px;
    margin-bottom: 14px;
    border-radius: 50%;
    background-color: rgba(255, 214, 126, 0.684);
    display: flex;
    justify-content: center;
    align-items: center;
}

    .point-icon-wrap.light {
        background-color: rgba(255, 214, 126, 0.684) !important;
    }

        .point-icon-wrap.light .point-icon {
            color: var(--caramel-text-color) !important;
        }

.point-item:nth-child(odd) .point-icon-wrap {
    /* background-color: rgb(163 100 0 / 68%); */
    background-color: rgb(193 111 25 / 84%)
}

.point-item:nth-child(odd) .point-icon {
    color: #fffde7;
}

.point-icon {
    font-size: 26px;
    color: var(--caramel-text-color);
}

.point-title,
.point-text {
    text-align: center;
}

.point-title {
    margin-bottom: 10px;
    color: rgb(110 77 62);
    font-size: 20px;
}

.point-text {
    width: 100%;
    font-size: 16px;
    font-family: var(--default-ff);
    line-height: 1.5;
    color: #5d5d5d;
}

/* #endregion */
/* #region 文章 */
.article-bg {
    width: 90vw;
    max-width: 1300px;
    margin: auto;
    padding: 20px 20px 30px;
    background-color: #fff;
    box-shadow: 2px 2px 3px 0px #b6a79440;
}

.article-info {
    margin-bottom: 20px;
}

/* .article-info  */
.article-box-info {
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    color: #8c8c8c;
    font-size: 14px;
    font-family: var(--default-ff);
}

/* .article-info-icon  */
.article-box-info-icon {
    padding: 0px 5px;
    color: rgb(255, 211, 129)
}

    .article-box-info-icon .fa-fw {
        text-align: left;
    }

/* #endregion */
/* #region article text相關*/
.article-bg .big-title,
.article-bg .medium-title,
.content-text,
.content-ul {
    color: #464646;
    font-family: var(--default-ff);
}

.article-bg .big-title {
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 10px;
}

.article-bg .medium-title {
    font-size: 18px;
    margin: 30px 0 10px;
}

.content-link {
    font-size: 16px;
    font-family: var(--link-ff);
    color: #00abf5;
}

    .content-link:hover {
        color: #d89907;
    }

.content-text,
.content-ul {
    font-size: 16px;
    line-height: 1.7;
}

.content-text {
    margin-bottom: 10px;
}

.content-ul {
    /* list-style: none; */
    padding: 0 15px;
    margin: 0 20px 10px;
}

.content-li {
    margin-bottom: 10px;
}

.content-hint-text {
    margin: 10px 20px;
    padding: 10px;
    font-size: 15px;
    font-family: var(--default-ff);
    color: #ea8f00;
    background-color: rgb(255 244 227);
    border-radius: 10px;
}

.content-highlight-text {
    margin: 10px;
    padding: 10px;
    background-color: rgb(81, 81, 81);
    color: rgb(226 255 0);
    /* font-weight: bold; */
    font-size: 16px;
    font-family: var(--default-ff);
}

.content-img {
    margin: auto;
    margin-bottom: 10px;
}
.content-for-media .content-img {
    margin-bottom: 0;
}

.content-for-media {
    margin-bottom: 10px;
}
/* #endregion  */

@media screen and (min-width:768px) {

    .banner-desc,
    .pic.banner-wrap .banner-desc {
        font-size: 16px;
    }

    .pic.banner-wrap {
        height: 260px;
    }


    /* #region Content */
    .content-box-title {
        font-size: 28px;
    }

    .content-box-desc {
        width: 80vw;
        margin: 0 auto 14px;
    }

    /* #endregion */
    /* #region point內容 */
    .point-group {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: stretch;
    }

    .point-item {
        width: 30%;
        margin-bottom: 40px;
    }

    .point-title {
        font-size: 22px;
    }

    .point-text {
        font-size: 18px;
    }

    /* #endregion point內容 */
    /* #region 文章 */
    .article-bg {
        width: 80vw;
        padding: 30px 5vw;
    }

    .article-info {
        display: flex;
    }

    .article-bg .big-title {
        font-size: 26px;
    }

    /* #endregion 文章 */
}

@media screen and (min-width:1024px) {
    .banner-title {
    }

    .banner-desc,
    .pic.banner-wrap .banner-desc {
        font-size: 18px;
    }

    /* #region Content */
    .content-box-title {
        margin-bottom: 40px;
        font-size: 36px;
    }

    .content-box-desc {
        font-size: 18px;
        width: 80vw;
        margin: 0 auto 16px;
    }

    /* #endregion */
    /* #region point內容 */
    .point-group {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: stretch;
    }

    .point-item {
        width: 28%;
        margin-bottom: 40px;
    }

    .point-icon {
        font-size: 34px;
    }

    .point-title {
        font-size: 24px;
    }

    .point-text {
        font-size: 17px;
    }

    /* #endregion point內容 */
    /* #region 文章 */
    .article-bg.half-article {
        width: 90vw;
        padding: 20px 30px 10px;
    }

    .half-article .big-title {
        text-align: center;
    }

    .half-article .article-info {
        justify-content: center;
    }

    .half-content {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        margin: 30px 0;
    }

    .content-left,
    .content-right {
        flex-basis: 49%;
        border-radius: 5px;
        overflow: hidden;
    }

    .content-right {
        margin-left: auto;
    }

    .content-for-text {
        padding: 10px 15px;
        background-color: #cccccc1c;
    }

        .content-for-text.center {
            display: flex;
            align-items: center;
        }

    .content-for-media {
        border: 1px solid #b4b4b480;
        margin-bottom: 0px;
    }

    /* #endregion 文章 */
}

@media screen and (min-width:1200px) {
    .banner-title {
        font-size: 60px;
    }

    .banner-desc,
    .pic.banner-wrap .banner-desc {
        font-size: 20px;
        max-width: 880px;
    }

    .pic.banner-wrap {
        height: 360px;
    }

    /* #region content */
    .content-box-title {
        margin-bottom: 60px;
        font-size: 36px;
    }

    /* #endregion content */
}

@media screen and (min-width:1300px) {

    /* #region 文章 */
    .article-box-info {
        padding-right: 10px;
        font-size: 15px;
    }

    .article-bg {
        width: 60vw;
        padding: 30px 5vw 50px;
    }

        .article-bg.half-article {
            width: 80vw;
            padding: 30px;
        }

    .half-article {
        width: 80vw;
    }

    .article-bg .big-title {
        font-size: 28px;
    }

    .article-bg .medium-title {
        margin-bottom: 15px;
        font-size: 23px;
    }

        .article-bg .medium-title:not(:first-child) {
            margin: 50px 0 15px;
        }

    .content-text,
    .content-ul,
    .content-highlight-text {
        font-size: 17px;
    }

    .content-highlight-text {
        margin: 30px 10px;
    }

    .content-hint-text {
        font-size: 16px;
    }

    /* #endregion 文章 */
}

@media screen and (min-width:1400px) {

    /* point內容 */
    .point-title {
        font-size: 24px;
    }
}
