@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.0/css/all.min.css");
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@700&display=swap");
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
    line-height: 1.15; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
    margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
    display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
    overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
    background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
    border-bottom: none; /* 1 */
    text-decoration: underline; /* 2 */
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
    font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
    border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 1 */
    line-height: 1.15; /* 1 */
    margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button;
}

    /**
 * Remove the inner border and padding in Firefox.
 */
    button::-moz-focus-inner,
    [type=button]::-moz-focus-inner,
    [type=reset]::-moz-focus-inner,
    [type=submit]::-moz-focus-inner {
        border-style: none;
        padding: 0;
    }

    /**
 * Restore the focus styles unset by the previous rule.
 */
    button:-moz-focusring,
    [type=button]:-moz-focusring,
    [type=reset]:-moz-focusring,
    [type=submit]:-moz-focusring {
        outline: 1px dotted ButtonText;
    }

/**
 * Correct the padding in Firefox.
 */
fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; /* 1 */
    color: inherit; /* 2 */
    display: table; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */
    white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
    -webkit-appearance: textfield; /* 1 */
    outline-offset: -2px; /* 2 */
}

    /**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
    [type=search]::-webkit-search-decoration {
        -webkit-appearance: none;
    }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
    display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
    display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
    display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
    display: none;
}

/* 清除浮動 */
.clearfix::before, .clearfix::after {
    content: "";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1; /*For IE 6&7 only*/
}

/* 修改預設的 HTML Tag ------------------------------ */
/* 清除圖片底部的空白 -------------------------------- */
img,
svg,
iframe {
    vertical-align: middle;
    border: none;
    outline: none;
}

figure {
    margin: 0;
}

/* 自定義的通用樣式 --------------------------------- */
.root {
    position: relative;
}

.container {
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
}

.debug {
    border: 1px solid red;
}

.full {
    width: 100%;
}

.left {
    text-align: left;
}

.center {
    text-align: center;
}

.right {
    text-align: right;
}

/*
-----------------------------------------------------------------
* font-family ：設定全站使用的字體家族。                            *
* font-size   ：設定基礎字體大小，常用於計算 rem 或 em 單位。         *
* line-height ：設定基礎行高，影響文字的閱讀舒適度。                  *
* font-weight ：設定全站預設的字體粗細。                            *
* color       ：設定文字的基礎顏色。                               *
-----------------------------------------------------------------
*/
* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: "Microsoft JhengHei", "微軟正黑體", arial, sans-serif;
}

:focus {
    outline: 0;
}

html, body {
    padding: 0;
    height: 100%;
    color: #0f1419;
    font-family: "Microsoft JhengHei", "微軟正黑體", arial, sans-serif;
    font-size: 16px;
    word-wrap: break-word;
    background-color: #ffffff;
    scroll-behavior: smooth;
}

/*
-----------------------------------------------------------------
* h1~h6 的標題                                                   *
-----------------------------------------------------------------
*/
h1 {
    font-size: 40px;
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 32px;
}

h4 {
    font-size: 28px;
}

h5 {
    font-size: 24px;
}

h6 {
    font-size: 20px;
}

/*
-----------------------------------------------------------------
* 取消預設的斜體字                                                 *
-----------------------------------------------------------------
*/
i,
em,
cite,
dfn,
var,
address {
    font-style: normal;
}

/*
-----------------------------------------------------------------
* 等寬字設定                                                      *
-----------------------------------------------------------------
*/
code,
pre,
samp,
kbd,
var {
    font-family: "Source Code Pro", monospace;
}

/*
-----------------------------------------------------------------
* A 連結                                                         *
-----------------------------------------------------------------
*/
a {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
}

sup.menu {
    display: inline-block;
    -webkit-transform: translateY(-0.38em);
    transform: translateY(-0.38em);
}

sup {
    position: static;
    margin-left: -0.09em;
    font-size: 1.2em;
    vertical-align: 0.33em;
}

/* sticky 設定 ---------------------------------------------- */
/* 自適應斷點設在 980px --------------------------------------- */
.sticky {
    background-color: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(2em);
    border-bottom: #d9dbe8 1px solid;
    z-index: 10;
}

@media (min-width: 0) {
    .sticky {
        position: fixed;
        top: 0;
        right: 0;
    }
}

@media (min-width: 1101px) {
    .sticky {
        position: sticky;
    }
}

/* 漢堡與關閉按鈕（桌面預設隱藏）-------------------------------- */
.menu-icon,
.close-icon {
    display: none;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    right: 0.5em;
    top: 0.5em;
    width: 36px;
    height: 36px;
    color: #0090ff;
    background-color: white;
    border-radius: 50%;
    cursor: pointer;
    z-index: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.menu-icon {
    -webkit-box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
    box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
}

/* 主選單（桌面橫排）------------------------------------------ */
ul.menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

@media (min-width: 0) {
    ul.menu {
        -webkit-box-pack: unset;
        -ms-flex-pack: unset;
        justify-content: unset;
    }
}

@media (min-width: 750px) {
    ul.menu {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

ul.menu > li {
    position: relative;
}

    ul.menu > li > a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 1em 10px;
        font-size: 1.25em;
        text-decoration: none;
        color: #000;
        height: 100%;
    }

        ul.menu > li > a.active {
            color: #0090ff;
            border-bottom: 8px solid #0090ff;
        }

    ul.menu > li:hover .sub-menu {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

/* 子選單：桌面 hover 展開 ------------------------------------ */
ul.sub-menu {
    overflow: hidden;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    min-width: 210px;
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in;
    background-color: #fff;
    border-radius: 10px;
    border: 1px solid #eee;
    -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
}

    ul.sub-menu li.sub-menu-member-state {
        border-top: 1px solid #d9dbe8;
    }

        ul.sub-menu li.sub-menu-member-state a {
            color: #0090ff;
            background-color: #f9fafb;
        }

    ul.sub-menu li a {
        display: block;
        padding: 0.6em 1.5em;
        color: #666;
        text-decoration: none;
        -webkit-transition: padding-left 0.3s ease-in-out, color 0.3s ease-in-out, background-color 0.3s ease-in-out;
        transition: padding-left 0.3s ease-in-out, color 0.3s ease-in-out, background-color 0.3s ease-in-out;
    }

        ul.sub-menu li a:hover {
            padding-left: 2em;
            color: #0090ff;
            background-color: #f9f9f9;
        }

/* 
 * ......................................................... *
 * 手機版 
 * 手機版的尺寸變動時，選單的 menu-2.js 也要跟著改。
 * const mq = window.matchMedia("(max-width: 900px)");
 * ......................................................... *
 */
@media (max-width: 1100px) {
    ul.menu {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        position: fixed;
        top: 0;
        right: 0;
        width: 260px;
        height: 100vh;
        background: #fff;
        overflow-y: auto;
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: -webkit-transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
        will-change: transform;
        -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
        box-shadow: 0 0 0 rgba(0, 0, 0, 0);
        -webkit-transition: box shadow 0.3s ease-in-out;
        transition: box shadow 0.3s ease-in-out;
    }

        ul.menu.open {
            -webkit-transform: translateX(0);
            transform: translateX(0);
            -webkit-box-shadow: 0 0 10em rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 10em rgba(0, 0, 0, 0.1);
        }

        ul.menu > li {
            width: 100%;
            border-bottom: 1px solid #c2c3cc;
        }

            ul.menu > li > a {
                height: unset;
            }

    body.menu-no-anim .menu {
        -webkit-transition: none;
        transition: none;
    }

    .menu-icon {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .close-icon {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    ul.sub-menu {
        position: static;
        display: none;
        visibility: visible;
        opacity: 1;
        background-color: unset;
        border-radius: unset;
        border: unset;
        -webkit-box-shadow: unset;
        box-shadow: unset;
        -webkit-transform: none;
        transform: none;
        -webkit-transition: unset;
        transition: unset;
    }
}

input[type=text], input[type=password] {
    display: inline-block;
    padding: 0.25em 0.75em;
    height: 100%;
    color: black;
    text-decoration: none;
    background-color: white;
    border-radius: 5px;
    border: 1px solid #d9dbe8;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    -webkit-transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}

    input[type=text]:focus, input[type=password]:focus {
        color: #0090ff;
        border-color: #0090ff;
    }

.btn {
    display: inline-block;
    padding: 0.65em 0.75em;
    color: black;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    background-color: white;
    border-radius: 5px;
    border: 1px solid #d9dbe8;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    cursor: pointer;
    -webkit-transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

    .btn.primary {
        color: white;
        background-color: #0090ff;
        border-color: #0090ff;
    }

    .btn:hover {
        color: white;
        background-color: rgb(25.5, 155.1, 255);
        border-color: #0090ff;
    }

    .btn.full {
        width: 100%;
    }

.search-btn {
    display: inline-block;
    width: 40px;
    height: 40px;
    color: white;
    text-align: center;
    text-decoration: none;
    background-color: #0090ff;
    border-radius: 50%;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    cursor: pointer;
    -webkit-transition: background-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out;
}

    .search-btn:hover {
        background-color: rgb(25.5, 155.1, 255);
    }

/* modal的基本樣式...................................... */
.modal {
    visibility: hidden;
    position: fixed;
    z-index: 99;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    -webkit-transition: opacity 0.3s ease, visibility 0s 0.3s;
    transition: opacity 0.3s ease, visibility 0s 0.3s;
    /* 顯示modal的樣式 */
}

    .modal.show {
        opacity: 1;
        visibility: visible;
        -webkit-transition: opacity 0.3s ease, visibility 0s;
        transition: opacity 0.3s ease, visibility 0s;
        /* 顯示modal內容的樣式 */
    }

        .modal.show .modal-content {
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        }

/* modal內容的樣式 */
.modal-content {
    margin: 1em auto;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
    max-width: 500px;
    width: 90%;
    background-color: white;
    border-radius: 1em;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
}

    .modal-content.w-900 {
        max-width: 900px;
    }

    .modal-content .modal-title {
        margin: 0;
        padding: 0.75em 0;
        text-align: center;
        font-size: 1.5em;
        border-bottom: 1px solid #d9dbe8;
    }

    .modal-content .modal-desc {
        padding: 1em;
    }

/* 關閉按鈕的樣式 */
.close-modal {
    color: black;
    float: right;
    margin-top: 1em;
    margin-right: 1em;
    font-weight: bold;
    position: relative;
    cursor: pointer;
    z-index: 2;
}

.form-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1em;
}

/* 分頁區塊 -------------------------------------- */
.page-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.5em;
}

ul.page-bar__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

    ul.page-bar__list li.page-bar__item a.page-bar__link {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        text-decoration: none;
        border-radius: 50%;
    }

        ul.page-bar__list li.page-bar__item a.page-bar__link:hover {
            background-color: #d9dbe8;
        }

        ul.page-bar__list li.page-bar__item a.page-bar__link.active {
            color: white;
            background-color: #0090ff;
        }

/* main 區塊設定 ---------------------------------- */
main a {
    color: #525357;
    text-decoration: none;
    -webkit-transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

    main a:hover {
        color: #0090ff;
    }

/* KV Banner 設定 -------------------------------- */
.kv {
    width: 100%;
    background-image: unset;
    background-position: center;
    background-repeat: no-repeat;
}

@media (min-width: 750px) {
    .kv.kv__app {
        height: 400px;
        background-image: url(../images/digital-plus/app/banner/kv.png);
    }
}

@media (min-width: 750px) {
    .kv.kv__digital-plus {
        height: 400px;
        background-image: url(../images/digital-plus/digital-plus/banner/kv.png);
    }
}

@media (min-width: 750px) {
    .kv.kv__ai {
        height: 400px;
        background-image: url(../images/digital-plus/ai/banner/kv.png);
    }
}

@media (min-width: 750px) {
    .kv.kv__learning-plus {
        height: 400px;
        background-image: url(../images/digital-plus/learning-plus/banner/kv.png);
    }
}

@media (min-width: 750px) {
    .kv.kv__ebook {
        height: 400px;
        background-image: url(../images/digital-plus/ebook/banner/kv.png);
    }
}

@media (min-width: 750px) {
    .kv.kv__member {
        height: 400px;
        background-image: url(../images/digital-plus/member/banner/kv.png);
    }
}

.kv-mobile {
    max-width: 750px;
}

    .kv-mobile img {
        width: 100%;
    }

@media (min-width: 0) {
    .kv-mobile {
        display: block;
    }
}

@media (min-width: 750px) {
    .kv-mobile {
        display: none;
    }
}

/* 會員專區設定 ----------------------------------- */
/* 用戶資訊 -------------------------------------- */
dl.member__content-user-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.5em;
    margin: 0;
    padding: 0;
    background-repeat: no-repeat;
    background-position: right center;
}

    dl.member__content-user-info.a {
        background-image: url(../images/digital-plus/member/signature.png);
    }

    dl.member__content-user-info.b {
        background-image: url(../images/digital-plus/member/birthday.png);
    }

    dl.member__content-user-info.c {
        background-image: url(../images/digital-plus/member/mail.png);
    }

    dl.member__content-user-info.d {
        background-image: url(../images/digital-plus/member/phone.png);
    }

    dl.member__content-user-info dt {
        color: black;
        font-weight: bold;
    }

        dl.member__content-user-info dt i {
            color: #0090ff;
        }

    dl.member__content-user-info dd {
        margin: 0;
        padding: 0 0 0 1.5em;
    }

/* 分類的下拉選單 ---------------------------------- */
.select-category {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.5em;
}

    .select-category select {
        font-weight: bold;
        background-color: #d9dbe8;
        border: 1px solid #d9dbe8;
        border-radius: 10px;
        padding: 0.25em;
    }

/* 購買清單 --------------------------------------- */
/* 自適應的斷點設在 600px -------------------------- */
.buy-list__header,
.buy-list__main {
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.5em;
    padding: 0.75em 0.5em;
    width: 100%;
}

@media (min-width: 0) {
    .buy-list__header,
    .buy-list__main {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 600px) {
    .buy-list__header,
    .buy-list__main {
        grid-template-columns: 150px 1fr 130px 80px;
    }
}

/* 購買清單的版頭 --------------------------------- */
.buy-list__header {
    color: #0090ff;
    font-size: 1.125em;
    font-weight: bold;
    background-color: #f9fafb;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
}

@media (min-width: 0) {
    .buy-list__header {
        display: none;
    }
}

@media (min-width: 600px) {
    .buy-list__header {
        display: grid;
    }
}

/* 購買清單的內容 --------------------------------- */
@media (min-width: 0) {
    .buy-list__main {
        padding: 0 0 1em 0;
    }
}

@media (min-width: 600px) {
    .buy-list__main {
        padding: 0.75em 0.5em;
        border-bottom: 1px solid #d9dbe8;
    }

        .buy-list__main:nth-last-child(1) {
            border-bottom: none;
        }
}

.buy-list__item:nth-child(1) {
    padding: 1rem;
    color: black;
    font-size: 1.25em;
    font-weight: bold;
    text-align: center;
    background-color: #f9fafb;
    border: 1px solid #d9dbe8;
    border-radius: 10px;
}

    .buy-list__item:nth-child(1) i {
        display: none;
    }

.buy-list__item:nth-child(2)::before {
    content: "購買方案：";
}

.buy-list__item:nth-child(3)::before {
    content: "購買時間：";
}

.buy-list__item:nth-child(3) i {
    display: none;
}

.buy-list__item:nth-child(4)::before {
    content: "購買金額：";
}

@media (min-width: 600px) {
    .buy-list__item:nth-child(n+2)::before {
        content: "";
    }

    .buy-list__item:nth-child(1) {
        padding: 0;
        color: inherit;
        font-size: inherit;
        text-align: initial;
        background-color: transparent;
        border: none;
    }

        .buy-list__item:nth-child(1) i {
            display: inline;
        }

    .buy-list__item:nth-child(3) span {
        display: block;
    }

    .buy-list__item:nth-child(3) i {
        display: inline;
    }

    .buy-list__item:nth-child(4) {
        text-align: right;
    }
}

/* 購買清單 --------------------------------------- */
/* 優惠券兌換清單 ---------------------------------- */
.coupon-list__header,
.coupon-list__main {
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.5em;
    padding: 0.75em 0.5em;
    width: 100%;
}

@media (min-width: 0) {
    .coupon-list__header,
    .coupon-list__main {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 600px) {
    .coupon-list__header,
    .coupon-list__main {
        grid-template-columns: 1.5fr 1fr 1fr;
    }
}

/* 優惠券的版頭 ----------------------------------- */
.coupon-list__header {
    color: #0090ff;
    font-size: 1.125em;
    font-weight: bold;
    background-color: #f9fafb;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
}

@media (min-width: 0) {
    .coupon-list__header {
        display: none;
    }
}

@media (min-width: 600px) {
    .coupon-list__header {
        display: grid;
    }
}

/* 優惠券清單的內容 ------------------------------- */
@media (min-width: 0) {
    .coupon-list__main {
        padding: 0 0 1em 0;
    }
}

@media (min-width: 600px) {
    .coupon-list__main {
        padding: 0.75em 0.5em;
        border-bottom: 1px solid #d9dbe8;
    }
}

.coupon-list__item:nth-child(1) {
    padding: 1rem;
    color: black;
    font-size: 1.25em;
    font-weight: bold;
    text-align: center;
    background-color: #f9fafb;
    border: 1px solid #d9dbe8;
    border-radius: 10px;
}

    .coupon-list__item:nth-child(1) i {
        display: none;
    }

.coupon-list__item:nth-child(2)::before {
    content: "獲得日期：";
}

.coupon-list__item:nth-child(3)::before {
    content: "獲得時間：";
}

.coupon-list__item:nth-child(3) i {
    display: none;
}

@media (min-width: 600px) {
    .coupon-list__item:nth-child(n+2)::before {
        content: "";
    }

    .coupon-list__item:nth-child(1) {
        padding: 0;
        color: inherit;
        font-size: inherit;
        text-align: initial;
        background-color: transparent;
        border: none;
    }

        .coupon-list__item:nth-child(1) i {
            display: inline;
        }

    .coupon-list__item:nth-child(3) span {
        display: block;
    }

    .coupon-list__item:nth-child(3) i {
        display: inline;
    }
}

/* 優惠券兌換紀錄 ---------------------------------- */
/* 訂閱設定 -------------------------------------- */
/* 訂閱清單 -------------------------------------- */
ul.subscription-list {
    display: grid;
    gap: 1em;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin: 0;
    padding: 0;
    list-style: none;
}

    ul.subscription-list li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        overflow: hidden;
        background-color: #f9fafb;
        border-radius: 10px;
        border: 1px solid #d9dbe8;
    }

@media (min-width: 0) {
    ul.subscription-list {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (min-width: 600px) {
    ul.subscription-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 800px) {
    ul.subscription-list {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* 產品圖 --------------------------------------- */
.subscription-list__picture {
    max-width: 100%;
}

    .subscription-list__picture img {
        width: 100%;
    }

/* 產品說明 ------------------------------------- */
.subscription-list__main {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

/* 產品的標題 ----------------------------------- */
.subscription-list__product-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.25em;
    padding: 1em;
    border-bottom: 1px solid #d9dbe8;
}

    .subscription-list__product-name h4, .subscription-list__product-name h5 {
        margin: 0;
        padding: 0;
        color: #0090ff;
    }

    .subscription-list__product-name h4 {
        font-size: clamp(1.35em, 3vw, 1.6em);
    }

    .subscription-list__product-name h5 {
        padding: 0.35rem 1rem;
        font-size: 1.15rem;
        font-weight: normal;
        background-color: white;
        border: 1px solid #0090ff;
        border-radius: 1em;
    }

/* 到期日與截止日期 ----------------------------- */
.subscription-list__date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.5em;
    padding: 1em;
    border-bottom: 1px solid #d9dbe8;
}

    .subscription-list__date i {
        color: #0090ff;
    }

/* 取消訂閱或續訂的按鈕 ------------------------- */
.subscription-list__footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5em;
    padding: 1em;
}

    .subscription-list__footer.one {
        grid-template-columns: 1fr;
    }

/* 注意事項 ---------------------------------- */
.notify {
    color: #eb3b5a;
    text-align: center;
}

    .notify.left {
        text-align: initial;
    }

    .notify a {
        color: #0090ff;
        border-bottom: 1px dashed #0090ff;
    }

/* 訂閱按鈕 ----------------------------------- */
.subscription-btn {
    border-bottom: 1px dashed #797a80;
}

/* AI 小助教 -------------------------------------- */
ul.ai-list {
    display: grid;
    gap: 1em;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin: 0;
    padding: 0;
    list-style: none;
}

    ul.ai-list li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        overflow: hidden;
        background-color: #f9fafb;
        border-radius: 10px;
        border: 1px solid #d9dbe8;
    }

@media (min-width: 0) {
    ul.ai-list {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (min-width: 600px) {
    ul.ai-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 800px) {
    ul.ai-list {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* 產品圖 --------------------------------------- */
.ai-list__picture {
    max-width: 100%;
}

    .ai-list__picture img {
        width: 100%;
    }

/* 產品說明 ------------------------------------- */
.ai-list__main {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

/* 產品的標題 ----------------------------------- */
.ai-list__product-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.25em;
    padding: 1em;
    border-bottom: 1px solid #d9dbe8;
}

    .ai-list__product-name h4,
    .ai-list__product-name h5 {
        margin: 0;
        padding: 0;
        color: #0090ff;
    }

    .ai-list__product-name h4 {
        font-size: clamp(2em, 3vw, 2.25em);
    }

        .ai-list__product-name h4 span.point {
            font-size: 0.65em;
        }

    .ai-list__product-name h5 {
        padding: 0.35rem 1rem;
        font-size: 1.15rem;
        font-weight: normal;
        background-color: white;
        border: 1px solid #0090ff;
        border-radius: 1em;
    }

/* 到期日與截止日期 ----------------------------- */
.ai-list__date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.5em;
    padding: 1em;
    border-bottom: 1px solid #d9dbe8;
}

    .ai-list__date i {
        color: #0090ff;
    }

/* AI 面板 ----------------------------------- */
.ai-panel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1em;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 1em;
    width: 100%;
    background-color: #f9fafb;
    border-bottom: 1px solid #d9dbe8;
}

@media (min-width: 0) {
    .ai-panel {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .ai-panel .ai-panel__content {
            -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
            order: 2;
        }

        .ai-panel .ai-panel__media {
            -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
            order: 1;
        }
}

@media (min-width: 600px) {
    .ai-panel {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

        .ai-panel .ai-panel__content {
            -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
            order: 1;
        }

        .ai-panel .ai-panel__media {
            -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
            order: 2;
        }
}

/* AI 面板內的內容 --------------------------- */
.ai-panel__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1em;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background-color: white;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
    -webkit-box-shadow: 0 5px 2px -2px rgba(0, 0, 0, 0.025);
    box-shadow: 0 5px 2px -2px rgba(0, 0, 0, 0.025);
}

/* AI 區塊的 Header -------------------------- */
.ai-panel__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.5em;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
}

    .ai-panel__header h3, .ai-panel__header h5 {
        margin: 0;
        padding: 0;
        width: 100%;
        text-align: center;
    }

h3.ai-panel__amount {
    color: #0090ff;
    font-size: 3em;
}

h5.ai-panel__total {
    padding: 1rem;
    font-size: 1.45em;
    font-weight: normal;
    border-bottom: 1px solid #d9dbe8;
}

    h5.ai-panel__total i {
        color: #0090ff;
    }

/* AI英文小助教的插圖 -------------------------- */
.ai-panel__figure {
    max-width: 380px;
    width: 100%;
}

    .ai-panel__figure img {
        width: 100%;
    }

/* AI 面板的連結  ---------------------------- */
.ai-panel__actions {
    padding: 0 1em 1em 1em;
}

/* 電子書內容的設定 ------------------------------- */
/* 分左右兩欄 ------------------------------------ */
.ebook-contnet {
    display: grid;
}

@media (min-width: 0) {
    .ebook-contnet {
        grid-template-columns: 1fr;
        gap: 1em;
    }
}

@media (min-width: 640px) {
    .ebook-contnet {
        grid-template-columns: 250px 1fr;
        gap: 2em;
    }
}

/* 書籍封面 ------------------------------------- */
.ebook-contnet__picture {
    width: 100%;
}

    .ebook-contnet__picture img {
        width: 100%;
    }

/* 書籍內容的主區塊 ------------------------------ */
.ebook-contnet__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}

/* 書籍標題 ------------------------------------- */
.ebook-contnet__header {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1em;
    padding-bottom: 1em;
}

    .ebook-contnet__header h3, .ebook-contnet__header h5 {
        margin: 0;
        padding: 0;
    }

    .ebook-contnet__header h3 {
        padding-bottom: 1rem;
        font-size: clamp(1.5em, 3vw, 1.85em);
        border-bottom: 1px solid #d9dbe8;
    }

    .ebook-contnet__header h5 {
        font-size: clamp(1em, 3vw, 1.25em);
        font-weight: normal;
    }

        .ebook-contnet__header h5 strong {
            display: inline-block;
            padding: 0.2em 0.5em 0.225em;
            color: #0090ff;
            font-size: 0.85em;
            background-color: white;
            border-radius: 10px;
            border: 1px solid #0090ff;
        }

/* 書籍的價格 ------------------------------------ */
.ebook-contnet__price {
    padding: 0.5em;
    text-align: right;
    font-size: 1.5em;
    font-family: "Oswald", sans-serif;
    font-weight: bold;
    background-color: #f9fafb;
    background-image: url(../images/digital-plus/ebook/credit-card.svg);
    background-repeat: no-repeat;
    background-position: 0.5em center;
    background-size: 40px;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
}

    .ebook-contnet__price span {
        font-size: 0.75em;
    }

/* 付費頁腳的區塊 --------------------------------- */
.ebook-contnet__footer {
    padding-top: 1em;
    text-align: right;
}

@media (min-width: 0) {
    .ebook-contnet__footer .btn {
        width: 100%;
    }
}

@media (min-width: 640px) {
    .ebook-contnet__footer .btn {
        width: unset;
    }
}

/* 商品介紹 -------------------------------------- */
.ebook-contnet__product-description h4 {
    margin: 0;
    padding: 0;
    text-align: center;
}

    .ebook-contnet__product-description h4 span {
        padding: 0 0.5em;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        background-color: #f9fafb;
    }

.ebook-contnet__product-note {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5em;
}

    .ebook-contnet__product-note h5 {
        margin: 0;
        padding: 0;
        color: #0090ff;
        font-size: 1.25em;
        border-bottom: 1px solid #d9dbe8;
    }

        .ebook-contnet__product-note h5 span {
            display: inline-block;
            padding: 0.25em 0.5em;
            background-color: #d9dbe8;
            border-radius: 10px 10px 0 0;
        }

    .ebook-contnet__product-note h6 {
        margin: 0;
        padding: 0.5em 0;
        font-size: 1.25rem;
    }

    .ebook-contnet__product-note img {
        max-width: 100%;
    }

/* 選擇方案 & 訂閱週期 -------------------------------------- */
.ebook-content__plan {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1em;
    padding: 0 0 1em 0;
    width: 100%;
}

.ebook-content__plan-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.5em;
}

    .ebook-content__plan-item label {
        width: 100%;
        color: #0090ff;
        font-weight: bold;
    }

    .ebook-content__plan-item select {
        padding: 0.5em;
        width: 100%;
        border-color: #d9dbe8;
        border-radius: 10px;
    }

/* 電子書設定 ------------------------------------ */
ul.ebook-list {
    display: grid;
    gap: 2em 1em;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin: 0;
    padding: 0;
    list-style: none;
}

@media (min-width: 0) {
    ul.ebook-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 800px) {
    ul.ebook-list {
        grid-template-columns: repeat(4, 1fr);
    }
}

li.ebook-list__item {
    overflow: hidden;
    background-color: #f9fafb;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
}

    li.ebook-list__item a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        height: 100%;
    }

/* 電子書封面 ------------------------------------- */
.ebook-list__picture {
    max-width: 100%;
}

    .ebook-list__picture figcaption {
        padding: 0.75em 1em 0;
        text-align: center;
    }

        .ebook-list__picture figcaption span {
            padding: 0.25em 0.75em;
            display: -webkit-inline-box;
            display: -ms-inline-flexbox;
            display: inline-flex;
            color: #0090ff;
            background-color: white;
            border: 1px solid #0090ff;
            border-radius: 1em;
        }

    .ebook-list__picture img {
        width: 100%;
    }

/* 電子書說明 ------------------------------------ */
.ebook-list__main {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}

/* 電子書的書名 ---------------------------------- */
.ebook-list__product-name {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 0.5em;
    padding: 0.5em 1em 0.75em;
    border-bottom: 1px solid #d9dbe8;
}

    .ebook-list__product-name h4 {
        margin: 0;
        padding: 0;
        color: #525357;
        font-size: clamp(1em, 3vw, 1.25em);
    }

/* 電子書的價格 --------------------------- */
.ebook-list__price {
    padding: 0.5em;
    text-align: center;
    font-size: 125%;
    font-weight: bold;
    background-color: white;
    border-bottom: 1px solid #d9dbe8;
}

/* 猜你也喜歡 ------------------------------------ */
.you-like {
    margin: 0 auto;
    padding: 0 0 3em 0;
    max-width: 1200px;
    width: 100%;
}

/* you-like 的容器 ------------------------------- */
.you-like__container {
    background-color: #f9fafb;
    border: 1px solid #d9dbe8;
    border-radius: 10px;
}

/* you-like 的版頭 ------------------------------- */
.you-like__header h3 {
    margin: 0;
    padding: 0.75rem 1rem;
    color: #0090ff;
    text-align: center;
    font-size: 1.5em;
    border-bottom: 1px solid #d9dbe8;
}

/* 推薦清單 -------------------------------------- */
ul.you-like__list {
    display: grid;
    gap: 1em;
    margin: 0;
    padding: 1em;
    list-style: none;
}

@media (min-width: 0) {
    ul.you-like__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 950px) {
    ul.you-like__list {
        grid-template-columns: repeat(4, 1fr);
    }
}

li.you-like__item a {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    background-color: white;
    border-radius: 10px;
    -webkit-box-shadow: 0 0 3px 2px rgba(0, 0, 0, 0.05);
    box-shadow: 0 0 3px 2px rgba(0, 0, 0, 0.05);
}

/* 推薦封面圖 ---------------------------------- */
.you-like__picture {
    width: 100%;
}

    .you-like__picture img {
        width: 100%;
    }

@media (min-width: 0) {
    .you-like__picture {
        padding: 0;
    }

        .you-like__picture img {
            border-radius: 7px 7px 0 0;
        }
}

@media (min-width: 800px) {
    .you-like__picture {
        padding: 1em;
    }

        .you-like__picture img {
            border-radius: 7px;
        }
}

.you-like__tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.5em;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 1em;
    width: 100%;
    text-align: center;
}

@media (min-width: 0) {
    .you-like__tags {
        padding-top: 1em;
    }
}

@media (min-width: 800px) {
    .you-like__tags {
        padding-top: initial;
    }
}

.you-like__tag {
    padding: 0.25em 0.5em;
    background-color: white;
    border: 1px solid #d9dbe8;
    border-radius: 1em;
}

    .you-like__tag.a {
        color: #1ca9fb;
        background-color: #e5f4ff;
        border-color: #1ca9fb;
    }

    .you-like__tag.b {
        color: #dc3beb;
        background-color: #ffe5ff;
        border-color: #dc3beb;
    }

    .you-like__tag.c {
        color: #35d972;
        background-color: #e5fff2;
        border-color: #35d972;
    }

    .you-like__tag.d {
        color: #eb3b5a;
        background-color: #ffe5e5;
        border-color: #eb3b5a;
    }

.you-like__product-header {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 0.75em 1em;
    width: 100%;
    height: 100%;
    text-align: center;
    border-bottom: 1px solid #d9dbe8;
}

    .you-like__product-header h4 {
        margin: 0;
        padding: 0;
        color: #525357;
        font-size: clamp(1em, 3vw, 1.25em);
    }

/* 價格 --------------------------------------- */
.you-like__product-price {
    width: 100%;
    text-align: center;
    padding: 0.75em 1em;
    background-color: white;
}

/* 結帳頁的設定 ---------------------------------- */
.checkout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1em;
}

/* 結帳頁版頭 ------------------------------------ */
.checkout__header h3 {
    margin: 0;
    padding: 0;
    font-size: 1.5em;
}

/* 結帳清單 --------------------------------------- */
.checkout__main {
    background-color: #f9fafb;
    border: 1px solid #d9dbe8;
    border-radius: 10px;
}

/* 金額 ------------------------------------------ */
.checkout__price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1em;
    padding: 0.5em 1em;
    font-size: 1.5em;
    font-weight: bold;
    border-bottom: 1px solid #d9dbe8;
}

.checkout__price-amount {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}

    .checkout__price-amount span {
        font-size: 0.75em;
    }

/* 優惠券 ---------------------------------------- */
.checkout__coupons {
    padding: 1em;
}

.checkout__coupons-form {
    padding: 0.5em 1em;
    background-color: white;
    border: 1px solid #d9dbe8;
    border-radius: 5px;
    -webkit-box-shadow: 0 3px 1px rgba(0, 0, 0, 0.01);
    box-shadow: 0 3px 1px rgba(0, 0, 0, 0.01);
}

    .checkout__coupons-form h5 {
        margin: 0;
        padding: 0;
        font-size: 1.25em;
        color: #0090ff;
    }

/* 優惠券輸入欄位 -------------------------------- */
.checkout__coupons-input {
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0.5em 0;
}

    .checkout__coupons-input input[type=text] {
        width: 100%;
        border-radius: 5px 0 0 5px;
        border-color: #0090ff;
    }

    .checkout__coupons-input .btn {
        border-radius: 0 5px 5px 0;
    }

@media (min-width: 0) {
    .checkout__coupons-input {
        grid-template-columns: 1fr 60px;
    }
}

@media (min-width: 700px) {
    .checkout__coupons-input {
        grid-template-columns: 1fr 100px;
    }
}

/* 優惠券說明 ------------------------------------ */
.checkout__coupons-content {
    display: grid;
    grid-template-columns: 1fr 100px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1em;
    color: #0090ff;
}

    .checkout__coupons-content.hide {
        display: none;
    }

/* 優惠券折扣的金額 ------------------------------- */
.checkout__coupons-price-off {
    text-align: right;
}

    .checkout__coupons-price-off strong {
        font-family: "Oswald", sans-serif;
        font-optical-sizing: auto;
        font-size: 1.25em;
        font-weight: 700;
        font-style: normal;
    }

        .checkout__coupons-price-off strong span {
            font-size: 0.75em;
        }

/* 計算總價 --------------------------------------- */
.checkout__total {
    display: grid;
    grid-template-columns: 1fr 100px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1em;
    padding: 0 1em;
    font-weight: bold;
    font-size: 1.5em;
    color: black;
}

.checkout__total-price {
    color: #eb3b5a;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    text-align: right;
}

    .checkout__total-price span {
        font-size: 0.75em;
    }

/* 結帳按鈕 --------------------------------------- */
.checkout__footer {
    text-align: right;
    color: black;
}

@media (min-width: 0) {
    .checkout__footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1em;
    }
}

@media (min-width: 640px) {
    .checkout__footer {
        display: unset;
        grid-template-columns: unset;
        gap: unset;
    }
}

/* 我同意的區塊 ------------------------------------ */
.checkout__agree {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.5em;
    padding: 1em;
    border-top: 1px dashed #d9dbe8;
    border-bottom: 1px dashed #d9dbe8;
}

.checkout__agree-item a {
    border-bottom: 1px dotted #797a80;
}

/* 產品清單 --------------------------------------- */
.products {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3em;
}

.products__container {
    border: 1px solid #d9dbe8;
    border-radius: 10px;
    background-color: #eff0f5;
}

.products__plan-title {
    border-bottom: 1px solid #d9dbe8;
}

    .products__plan-title h3 {
        margin: 0;
        padding: 0.75rem 1rem;
        font-size: 1.5em;
        text-align: center;
        color: #0090ff;
    }

ul.products-list {
    display: grid;
    gap: 1em;
    margin: 0;
    padding: 1em;
    width: 100%;
    list-style: none;
}

@media (min-width: 0) {
    ul.products-list {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (min-width: 600px) {
    ul.products-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 800px) {
    ul.products-list {
        grid-template-columns: repeat(3, 1fr);
    }
}

li.products-list__item {
    background-color: white;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
}

.products-list__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/* 產品卡片封面 ---------------------------------- */
.products-list__picture {
    width: 100%;
}

@media (min-width: 0) {
    .products-list__picture {
        padding: 0 0 1em 0;
    }

        .products-list__picture img {
            border-radius: 7px 7px 0 0;
        }
}

@media (min-width: 600px) {
    .products-list__picture {
        padding: 1em;
    }

        .products-list__picture img {
            border-radius: 7px;
        }
}

.products-list__picture img {
    width: 100%;
}

.products-list__picture figcaption {
    padding: 0.5rem 1rem;
    color: #0090ff;
    text-align: center;
    font-weight: bold;
    font-size: 1.5em;
    border-bottom: 1px solid #d9dbe8;
}

/* 產品標題 -------------------------------------- */
.products-list__title {
    padding: 0 1em 1em;
    width: 100%;
    border-bottom: 1px solid #d9dbe8;
    text-align: center;
}

    .products-list__title h3, .products-list__title h4 {
        margin: 0;
        padding: 0;
        color: #525357;
    }

    .products-list__title h3 {
        font-size: 1.25em;
    }

        .products-list__title h3 .mini {
            padding: 0.35em;
            display: inline-block;
            font-size: 0.7em;
            border-radius: 5px;
            color: #ff4063;
            border: 1px solid #ff4063;
        }

    .products-list__title h4 {
        font-size: 1.25em;
    }

        .products-list__title h4 span {
            padding: 0.25em 0.5em;
            display: inline-block;
            color: #0090ff;
        }

/* 產品按鈕 -------------------------------------- */
.products-list__footer {
    padding: 0.5rem 1rem;
    text-align: center;
    color: #525357;
    font-size: 1.25em;
    font-weight: bold;
}

/* 首頁APP的說明 ---------------------------------- */
.app {
    overflow-x: hidden;
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 2em;
    padding: 3em 0;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

    .app.p-t-0 {
        padding-top: 0;
    }

    .app.p-t-0-b-2 {
        padding-top: 0;
        padding-bottom: 1em;
    }

    .app.reverse .app__picture {
        -webkit-transform: translateX(200px);
        transform: translateX(200px);
    }

    .app.reverse .app__main {
        -webkit-transform: translateX(-200px);
        transform: translateX(-200px);
    }

    .app.reverse {
        /* .app 在 .reverse 下的動畫 ----------------- */
    }

        .app.reverse.active .app__picture,
        .app.reverse.active .app__main {
            opacity: 1;
        }

        .app.reverse.active .app__picture {
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }

        .app.reverse.active .app__main {
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }

    .app.reverse {
        /* .app 在 .reverse 下的動畫結束 -------------- */
        /* 圖片在左，內容在右 */
    }

@media (min-width: 0) {
    .app.reverse .app__picture {
        -webkit-box-ordinal-group: unset;
        -ms-flex-order: unset;
        order: unset;
    }

    .app.reverse .app__main {
        -webkit-box-ordinal-group: unset;
        -ms-flex-order: unset;
        order: unset;
    }
}

.app.reverse {
    /* 圖片在右，內容在左 */
}

@media (min-width: 800px) {
    .app.reverse .app__picture {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .app.reverse .app__main {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
}

@media (min-width: 800px) {
    .app {
        grid-template-columns: auto auto;
    }
}

.app {
    /* .app 的動畫設定 --------------------------- */
}

    .app .app__picture,
    .app .app__main {
        opacity: 0;
        -webkit-transition: all 0.6s ease-in-out;
        transition: all 0.6s ease-in-out;
    }

    .app .app__picture {
        -webkit-transform: translateX(-200px);
        transform: translateX(-200px);
    }

    .app .app__main {
        -webkit-transform: translateX(200px);
        transform: translateX(200px);
    }

    .app.active .app__picture,
    .app.active .app__main {
        opacity: 1;
    }

    .app.active .app__picture {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    .app.active .app__main {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

.app {
    /* .app 的動畫設定結束 ------------------------ */
}

/* APP 說明圖 ------------------------------------ */
.app__picture {
    max-width: 450px;
}

@media (min-width: 0) {
    .app__picture {
        grid-template-columns: 1fr;
        margin: 0 auto;
    }
}

@media (min-width: 800px) {
    .app__picture {
        grid-template-columns: 1fr 1fr;
        margin: unset;
    }
}

.app__picture img {
    width: 100%;
}

.app__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2em;
    font-size: clamp(1em, 3vw, 1.25em);
    line-height: 1.5;
}

.app__header {
    margin: 0;
    padding: 0;
    color: #1a35a7;
    font-size: 2.125em;
}

@media (min-width: 0) {
    .app__header {
        text-align: center;
    }
}

@media (min-width: 800px) {
    .app__header {
        text-align: initial;
    }
}

.app__price-line {
    color: #ff00a2;
    border-bottom: 5px solid #ff91d7;
}

.app__tags {
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1em;
}

@media (min-width: 0) {
    .app__tags {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 600px) {
    .app__tags {
        grid-template-columns: 1fr 1fr;
    }
}

.app__tags-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 0.5em;
    overflow: hidden;
    color: #4a5dae;
    font-weight: bold;
    background-color: #bac7ff;
    border-radius: 5em;
}

@media (min-width: 0px) {
    .app__tags-item {
        font-size: clamp(1.2em, 4vw, 1.25em);
    }
}

@media (min-width: 800px) and (max-width: 899px) {
    .app__tags-item {
        font-size: 1em;
    }
}

@media (min-width: 900px) {
    .app__tags-item {
        font-size: 1.25em;
    }
}

.app__tags-picture {
    overflow: hidden;
    border-radius: 5em;
}

    .app__tags-picture img {
        width: 100%;
    }

@media (min-width: 0) {
    .app__tags-picture {
        max-width: 50px;
    }
}

@media (min-width: 600px) {
    .app__tags-picture {
        max-width: 80px;
    }
}

.app__tags-text {
    line-height: 1.25;
}

@media (min-width: 0px) {
    .app__tags-text > span {
        display: inline;
    }
}

/* 空中家教 --------------------------------------- */
/* 購買按鈕 --------------------------------------- */
.learning-plue__buy-it {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 3em;
}

.learning-plue__buy-it-btn {
    display: block;
    padding: 0.5em 0.75em;
    color: white;
    font-size: 2em;
    font-weight: bold;
    text-decoration: none;
    background-color: #ff3fb9;
    border-radius: 0.75em;
    -webkit-transition: background-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out;
}

    .learning-plue__buy-it-btn:hover {
        color: white;
        background-color: #ff00a2;
    }

/* top-bar 設定 ------------------------------------ */
/* 850px 以上為電腦版，以下為手機版 -------------------- */
.top-bar {
    width: 100%;
    background-color: white;
    z-index: 10;
}

    .top-bar a {
        color: black;
        text-decoration: none;
    }

@media (min-width: 0) {
    .top-bar {
        position: fixed;
        bottom: 0;
    }
}

@media (min-width: 850px) {
    .top-bar {
        position: unset;
        bottom: unset;
    }
}

/* .top-bar 的容器，用來限制最大寬度為 1200px，並將容器置中 */
.top-bar__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
    padding: 0.25em 0;
    max-width: 1200px;
    width: 100%;
}

@media (min-width: 0) {
    .top-bar__container {
        gap: 0;
        background-color: #0090ff;
    }

        .top-bar__container a {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            gap: 0.125em;
            border-right: 1px solid rgba(255, 255, 255, 0.25);
        }

            .top-bar__container a:nth-last-child(1) {
                border-right: unset;
            }

            .top-bar__container a i {
                font-size: 0.75em;
            }
}

@media (min-width: 850px) {
    .top-bar__container {
        gap: 1em;
        background-color: unset;
    }

        .top-bar__container a {
            border-right: unset;
        }

            .top-bar__container a i {
                font-size: initial;
            }
}

/* 處理電話 & Line 共用元素的 RWD -------------------- */
.top-bar__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media (min-width: 0) {
    .top-bar__item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0.25em 0;
        width: 100%;
        font-size: 2em;
    }

        .top-bar__item span {
            display: none;
        }

        .top-bar__item .top-bar__mobile-state {
            display: block;
        }
}

@media (min-width: 850px) {
    .top-bar__item {
        -webkit-box-orient: initial;
        -webkit-box-direction: initial;
        -ms-flex-direction: initial;
        flex-direction: initial;
        padding: 0.5em 0;
        width: unset;
        font-size: 1em;
    }

        .top-bar__item span {
            display: unset;
        }

        .top-bar__item .top-bar__mobile-state {
            display: none;
        }
}

.top-bar__mobile-state {
    text-align: center;
    color: white;
    font-size: 0.5em;
}

/* 電話設定 ---------------------------------------- */
@media (min-width: 0) {
    .top-bar__tel .fa-phone {
        color: white;
    }
}

@media (min-width: 850px) {
    .top-bar__tel .fa-phone {
        color: #0090ff;
    }
}

/* Line 設定 -------------------------------------- */
@media (min-width: 0) {
    .top-bar__line .fa-line {
        color: white;
    }
}

@media (min-width: 850px) {
    .top-bar__line .fa-line {
        color: #06c755;
    }
}

/* 註冊設定 -------------------------------------- */
@media (min-width: 0) {
    .top-bar__register .fa-address-card {
        color: white;
    }
}

@media (min-width: 850px) {
    .top-bar__register .fa-address-card {
        color: #eb3b5a;
    }
}

/* 登入登出 -------------------------------------- */
@media (min-width: 0) {
    .top-bar__member .fa-arrow-right-to-bracket,
    .top-bar__member .fa-arrow-right-from-bracket {
        color: white;
    }
}

@media (min-width: 850px) {
    .top-bar__member .fa-arrow-right-to-bracket,
    .top-bar__member .fa-arrow-right-from-bracket {
        color: #ff00a2;
    }
}

/* LOGO 設定 ------------------------------------- */
.logo a img {
    width: 100%;
}

@media (min-width: 0) {
    .logo {
        width: 100%;
        background-color: white;
    }

        .logo a {
            display: block;
            margin: 0 auto;
            padding: 0.5em 1em;
            max-width: 75vw;
        }
}

@media (min-width: 500px) {
    .logo {
        position: absolute;
        top: 1em;
        left: 1em;
        width: initial;
        background-color: unset;
    }

        .logo a {
            display: initial;
            margin: initial;
            padding: initial;
            max-width: 266px;
        }
}

@media (min-width: 850px) {
    .logo {
        top: 3.5em;
    }
}

@media (min-width: 1350px) {
    .logo {
        top: 0;
        left: 0;
        padding: 0.5em;
        background-color: white;
        border-radius: 0 0 2em 0;
        -webkit-box-shadow: -3px 5px 3px rgba(0, 0, 0, 0.1);
        box-shadow: -3px 5px 3px rgba(0, 0, 0, 0.1);
    }
}

/* footer 設定 .................................... */
footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #f9fafb;
    border-top: 1px solid #d9dbe8;
}

    footer a:link {
        color: #004a99;
    }

    footer a:visited {
        color: #004a99;
    }

    footer a:hover {
        color: #004a99;
    }

.footer-group-links {
    display: grid;
    row-gap: 1em;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
    padding: 2em 1em;
    max-width: 1200px;
    width: 100%;
}

dl.footer-links {
    margin: 0;
    padding: 0;
    width: 100%;
}

    dl.footer-links dt {
        padding-bottom: 1rem;
        font-size: 1.125em;
        font-weight: bold;
        color: #004a99;
    }

    dl.footer-links dd {
        margin: 0;
        padding: 0;
    }

ul.footer-items {
    margin: 0;
    padding: 0;
    list-style: none;
    line-height: 1.75;
}

    ul.footer-items li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

        ul.footer-items li a {
            text-decoration: none;
            border-bottom: 1px dotted transparent;
            -webkit-transition: border-bottom 0.3s ease-in-out, color 0.3s ease-in-out;
            transition: border-bottom 0.3s ease-in-out, color 0.3s ease-in-out;
        }

            ul.footer-items li a:hover {
                border-bottom: 1px dotted #ff00a2;
            }

i.footer-icon {
    margin-right: 0.125em;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 80%;
}

    i.footer-icon.fb {
        background-image: url(../../assets/images/digital-plus/footer/fb.svg);
    }

    i.footer-icon.ig {
        background-image: url(../../assets/images/digital-plus/footer/instagram.svg);
    }

    i.footer-icon.youtube {
        background-image: url(../../assets/images/digital-plus/footer/youtube.svg);
    }

    i.footer-icon.tiktok {
        background-image: url(../../assets/images/digital-plus/footer/tiktok.svg);
    }

.company-info {
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1em;
    padding: 2em 1em;
    line-height: 1.5;
    border-top: 1px solid #d9dbe8;
}

    .company-info ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

ul.footer-logos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.5em;
}

/* RWD: footer .................................... */
@media only screen and (min-width: 0) {
    .footer-group-links {
        grid-template-columns: 1fr 1fr;
        text-align: center;
    }

    .company-info {
        grid-template-columns: 1fr;
        padding-bottom: 7em;
    }

    ul.footer-company-name li {
        text-align: center;
    }

        ul.footer-company-name li span {
            display: block;
        }

    ul.footer-company-info li {
        text-align: center;
    }

    ul.footer-items li {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media only screen and (min-width: 400px) {
    .footer-group-links {
        grid-template-columns: 1fr 1fr 1fr;
        text-align: unset;
    }

    ul.footer-company-name li span {
        display: unset;
    }

    ul.footer-items li {
        -webkit-box-pack: unset;
        -ms-flex-pack: unset;
        justify-content: unset;
    }
}

@media only screen and (min-width: 750px) {
    .footer-group-links {
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }

    .company-info {
        grid-template-columns: 3fr auto 3fr;
        padding-bottom: 2em;
    }

    ul.footer-company-name li {
        text-align: right;
    }

    ul.footer-company-info li {
        text-align: unset;
    }
}
/* ----------------------------------------------------
  * 經典的三欄 Layput，由上而下分別為 header、main、footer
  * header 為版頭區塊
  * main 為主要的內容區塊
  * footer 為頁尾區塊
---------------------------------------------------- */
.root {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-height: 100vh;
    color: #525357;
}

    .root main {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        background-color: white;
    }

/* 左右兩欄，左邊為 sidebar，右邊為 main -------------- */
/* 側邊欄隱藏的斷點建議與 menu-2.js 及 menu-2.scss 相同 */
.layout__two-column {
    display: grid;
    padding: 3em 1em;
}

@media (min-width: 0) {
    .layout__two-column {
        grid-template-columns: 0 1fr;
        gap: 0;
        padding: 3em 1em;
    }
}

@media (min-width: 981px) {
    .layout__two-column {
        grid-template-columns: 200px 1fr;
        gap: 1em;
        padding: 3em 1em;
    }
}

/* Sidebar 側邊欄選單 ------------------------------ */
/* 側邊欄隱藏的斷點建議與 menu-2.js 及 menu-2.scss 相同 */
ul.layout__sidebar-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0;
    padding: 0;
    font-size: 1.25em;
    list-style: none;
    position: sticky;
    top: 120px;
    z-index: 5;
}

@media (min-width: 0) {
    ul.layout__sidebar-list {
        display: none;
    }
}

@media (min-width: 981px) {
    ul.layout__sidebar-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

ul.layout__sidebar-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 0.5em;
    padding: 0.75em 0.5em;
    width: 100%;
    height: 100%;
    background-color: transparent;
    border-radius: 10px;
}

    ul.layout__sidebar-list li a.active {
        color: #0090ff;
        background-color: #d9dbe8;
    }

/* Main 主內容區塊 --------------------------------- */
.layout__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1em;
}

/* 主內容區塊 ------------------------------------- */
.layout__content {
    background-color: white;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
}

/* 主內容的版頭 ---------------------------------- */
.layout__content-header {
    border-bottom: 1px solid #d9dbe8;
}

    .layout__content-header h5 {
        margin: 0;
        padding: 0.5em;
        color: #0090ff;
        text-align: center;
    }

/* 內容區塊 ------------------------------------ */
.layout__content-main {
    display: grid;
    gap: 1em;
    padding: 1em;
}

    .layout__content-main.two {
        grid-template-columns: repeat(2, 1fr);
    }

@media (min-width: 0) {
    .layout__content-main.two {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (min-width: 600px) {
    .layout__content-main.two {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* 主內容的頁腳 -------------------------------- */
.layout__content-footer {
    padding: 1em;
    border-top: 1px solid #d9dbe8;
}

/* 灰底灰框的區塊 ------------------------------ */
.layout__bg-gray {
    padding: 1em;
    background-color: #f9fafb;
    border-radius: 10px;
    border: 1px solid #d9dbe8;
}

.container {
    padding-left: 1em;
    padding-right: 1em;
}
