﻿/*
  TAVIS 新版樣式(前台改版第一階段)
  - 來源：設計稿 tavisWebV2/public/css/index.css，所有選擇器加上 .tv2 範圍，避免影響沿用舊版的內頁
  - 與 Bootstrap 撞名的類別已改名：.btn → .v2-btn、.breadcrumb → .v2-breadcrumb、.breadcrumb-item → .v2-breadcrumb-item
  - 修改設計樣式請改本檔，勿再引入設計稿原始 CSS
*/

/*////////////////////////////// 基礎(隔離 Bootstrap 與舊版 style.css) //////////////////////////////*/
.tv2 {
    font-family: Arial, 'Noto Sans TC', 'Microsoft JhengHei', sans-serif;
    font-weight: 300;
    color: #000;
    line-height: normal;
    text-align: left;
}

.tv2 *,
.tv2 *::before,
.tv2 *::after {
    box-sizing: border-box;
}

.tv2 img,
.tv2 svg {
    display: block;
    max-width: 100%;
}

.tv2 button,
.tv2 input {
    font: inherit;
    color: inherit;
}

.tv2 p,
.tv2 a,
.tv2 li,
.tv2 h1,
.tv2 h2,
.tv2 h3 {
    font-family: inherit;
}

.tv2 p {
    font-size: inherit;
    font-weight: inherit;
    line-height: normal;
    margin: 1em 0;
}

.tv2 a,
.tv2 a:hover,
.tv2 a:focus {
    color: inherit;
}

.tv2 h1,
.tv2 h2,
.tv2 h3 {
    color: inherit;
    font-weight: bold;
    line-height: normal;
    margin: 0.83em 0;
}

.tv2 h1 {
    font-size: 2em;
}

.tv2 h2 {
    font-size: 1.5em;
}

.tv2 h3 {
    font-size: 1.17em;
}

.tv2 .container {
    width: min(100% - 48px, 1200px);
    max-width: none;
    margin-inline: auto;
    padding: 0;
}

@media (max-width: 640px) {
    .tv2 .container {
        width: min(100% - 32px, 1200px);
    }
}

.tv2 .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/*////////////////////////////// 首頁 //////////////////////////////*/




.tv2 a:focus,
.tv2 a:focus-visible,
.tv2 button:focus-visible {
    outline: 3px dotted red;
    outline-offset: 2px;
}

.tv2 button {
    cursor: pointer;
}


/* 無障礙按鈕 */
.tv2 .accesskey {
    text-decoration: none;
    color: #ccc;
    padding: 5px;
    padding-top: 0px;
    position: absolute;
    z-index: 6;
}

.tv2 .accesskey:focus-visible {
    outline: 3px dotted #e93c3c;
}

.tv2 .accesskey_go {
    clip: rect(0, 0, 0, 0);
    width: 180px;
    text-align: center;
    top: 5px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 55;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 3px 10px;
    color: #000;
    background-color: #fff;
    font-weight: 500;
}

.tv2 .accesskey_go:focus-visible {
    clip: auto;
}

.tv2 #accesskey_u {
    top: 0;
}

.tv2 .accesskey:hover {
    color: #79b1c9;
}



/* 標準字級 */
html {
    font-size: 16px;
}

/* 大字 */
html[data-font-size="large"] {
    font-size: 18px;
}

/* 特大字 */
html[data-font-size="x-large"] {
    font-size: 20px;
}



/* 頭 */
.tv2 .head .logo_box {
    background-color: #000;
    padding: 20px 0;

    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
}

.tv2 .head .logo_box .logo {
    width: 200px;
    margin: 0 auto;
}

.tv2 .head .logo_box .logo a {
    display: inline-block;
}

.tv2 .head .logo_box .logo img {
    width: 100%;
}

/* 次選單 */
.tv2 .head .logo_box .submenu {
    margin: 0;
    margin-right: 22px;
    padding: 0;
    list-style: none;

    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.tv2 .head .logo_box .submenu li {
    margin: 0 8px;
}

.tv2 .head .logo_box .submenu li .v2-btn {
    display: inline-block;
    text-decoration: none;
    color: #fff;
    background-color: #fff;
    border-radius: 20px;
    border: none;
    padding: 0;
    width: 35px;
    height: 35px;

    position: relative;

    transition: 0.3s;
    cursor: pointer;
}

.tv2 .head .logo_box .submenu li .v2-btn:hover {
    background-color: #c1a566;
}

.tv2 .head .logo_box .submenu li .v2-btn .hover {
    position: absolute;
    top: 0;
    left: 0;

    opacity: 0;
}

.tv2 .head .logo_box .submenu li .v2-btn:hover .hover {
    opacity: 1;
}

.tv2 .head .logo_box .submenu li .v2-btn:hover .normal {
    opacity: 0;
}

.tv2 .head .logo_box .submenu li .v2-btn span {
    position: absolute;
    background-color: #c1a566;
    color: #fff;
    border-radius: 3px;
    padding: 7px 5px;
    width: 90px;
    letter-spacing: 1px;
    font-size: 0.9rem;
    font-weight: 400;
    text-align: center;

    top: 50px;
    left: 50%;
    transform: translateX(-50%);

    opacity: 0;
    transition: 0.3s;
}

.tv2 .head .logo_box .submenu li .v2-btn:hover span {
    opacity: 1;
}

.tv2 .head .logo_box .submenu li .v2-btn span::before {
    content: "";
    width: 18px;
    height: 12px;
    background-color: #c1a566;

    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);

    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
}



/* 彈跳視窗 */
.tv2 .search_modal {
    padding: 20px 20px;
    border: none;
    width: 700px;
    background-color: #ffffffed;
}

.tv2 .search_modal::backdrop {
    background: rgba(0, 0, 0, 0.40);
}

.tv2 .search_modal .modal_content {
    margin: 10px;
}

.tv2 .search_modal .modal_content .title_box {
    display: grid;
    grid-template-columns: auto 1fr;
}

.tv2 .search_modal .modal_content .title_box .right {
    display: flex;
    justify-content: flex-end;
}

.tv2 .search_modal .modal_content .title_box .close {
    border: none;
    background-color: transparent;
    font-size: 1.2rem;
    padding: 0;

    transition: 0.3s;
}

.tv2 .search_modal .modal_content .title_box .close:hover {
    color: #b5883c;
}

.tv2 .search_modal .modal_content h2 {
    margin: 0;
    font-weight: 500;
    letter-spacing: 1px;
    font-size: 1.4rem;
    padding: 0 1px;
    color: #7f5c1d;
}

.tv2 .search_modal .modal_content .search_form input {
    width: 100%;
    padding: 10px 15px;
    padding-top: 13px;
    border: 1px solid #e3e3e3;
    border-radius: 3px;
    margin: 10px 0;
}

.tv2 .search_modal .modal_content .search_form input:focus-visible {
    outline: 2px dotted red;
    outline-offset: 0px;
}

.tv2 .search_modal .modal_content .btn_box {
    text-align: right;
    padding: 0 1px;
    margin-top: 10px;
}

.tv2 .search_modal .modal_content .btn_box .v2-btn {
    letter-spacing: 1px;
    color: #000;
    border: 1px solid #b5883c;
    padding: 3px 25px;
    padding-bottom: 4px;
    transition: 0.3s;
    margin-left: 15px;
}

.tv2 .search_modal .modal_content .btn_box .v2-btn:hover {
    background-color: #b5883c;
    border: 1px solid #b5883c;
    color: #fff;
}

/* 選單 */
.tv2 .head .menu_box {
    width: 100%;
}

.tv2 .head .menu_box .menu {
    margin: 0;
    padding: 15px 0;
    list-style: none;

    display: flex;
    justify-content: space-between;
}

.tv2 .head .menu_box .menu li {
    position: relative;
}

.tv2 .head .menu_box .menu li .v2-btn {
    display: inline-block;
    border: none;
    background-color: transparent;
    padding: 5px 10px;
    color: #000;
    text-decoration: none;
    font-size: 1.3rem;
    letter-spacing: 1px;

    transition: 0.3s;
}

.tv2 .head .menu_box .menu li .v2-btn:hover {
    color: #9e752d;
}

.tv2 .head .menu_box .menu li .v2-btn.active {
    color: #9e752d;
}

.tv2 .head .menu_box .menu li .childrenMenu {
    margin: 0;
    padding: 0;
    list-style: none;

    background-color: #efefef;
    box-shadow: 5px 5px 2px #00000020;
    text-align: center;

    position: absolute;
    top: 45px;
    left: 50%;
    transform: translateX(-50%);
    width: 150px;
    z-index: 55;
}

.tv2 .head .menu_box .menu li .childrenMenu a {
    display: inline-block;
    width: 100%;
    text-decoration: none;
    color: #000;
    padding: 12px 10px;
    border-bottom: 1px solid #c1a566;
    letter-spacing: 2px;
    transition: 0.3s;
}

.tv2 .head .menu_box .menu li .childrenMenu a:hover {
    background-color: #c1a566;
    color: #fff;
}

.tv2 .head .menu_box .menu .childrenMenu li:nth-last-child(1) a {
    border-bottom: none;
}

.tv2 .hamburger {
    display: none;
}


@media (max-width: 991.98px) {

    .tv2 .head .logo_box .submenu li {
        margin: 0 6px;
    }

    .tv2 .head .logo_box .submenu li .v2-btn {
        width: 25px;
        height: 25px;
    }

    .tv2 .head .logo_box .submenu li .v2-btn p {
        padding: 4px 2px;
        width: 80px;
        letter-spacing: 1px;
        font-size: 0.85rem;
        top: 26px;
    }
}

@media (max-width: 767.98px) {

    .tv2 .head .logo_box {
        grid-template-columns: 0fr auto 1fr;
        padding: 20px 20px;
    }

    .tv2 .head .logo_box .submenu {
        margin-right: 32px;
    }

    .tv2 .head .container {
        margin: 0;
        width: 100%;
    }

    /* 顯示漢堡按鈕 */
    .tv2 .hamburger {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 6px;
        width: 34px;
        height: 34px;
        padding: 0 5px;
        border: none;
        background: transparent;
        cursor: pointer;

        position: absolute;
        top: 25px;
        right: 15px;
    }

    .tv2 .hamburger span {
        display: block;
        width: 100%;
        height: 2px;
        background: #fff;
        transition: transform 0.25s, opacity 0.25s;
    }

    /* 漢堡展開後變成 X */
    .tv2 .mobile-open .hamburger span:nth-child(1) {
        transform: translateY(8px) rotate(45deg);
    }

    .tv2 .mobile-open .hamburger span:nth-child(2) {
        opacity: 0;
    }

    .tv2 .mobile-open .hamburger span:nth-child(3) {
        transform: translateY(-8px) rotate(-45deg);
    }

    /* 預設隱藏選單 */
    .tv2 .head .menu_box .menu {
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        width: 100%;
        /* margin-top: 8px; */
        background: #fff;
        padding: 5px 0;
    }

    /* 點擊漢堡後顯示 */
    .tv2 .head .menu_box.mobile-open .menu {
        display: flex;
    }

    .tv2 .head .menu_box .menu li .v2-btn {
        width: 100%;
        text-align: left;
        padding: 5px 20px;
        position: relative;
    }

    .tv2 .head .menu_box .menu li button.v2-btn::before {
        content: "";
        width: 15px;
        height: 10px;
        clip-path: polygon(0 0, 20% 0, 50% 60%, 80% 0, 100% 0px, 50% 100%);
        background-color: #000;

        position: absolute;
        top: 50%;
        right: 15px;
        transform: translateY(-50%);
        transition: 0.3s;
    }

    .tv2 .head .menu_box .menu li button.v2-btn.active::before {
        transform: translateY(-50%) scaleY(-1);
        background-color: #c1a566;
    }

    .tv2 .head .menu_box .menu li .childrenMenu {
        position: initial;
        transform: translateX(0);
        width: 100%;
        text-align: left;
        box-shadow: initial;
    }

    .tv2 .head .menu_box .menu li .childrenMenu a {
        padding: 12px 30px;
    }
}


@media (max-width: 575.98px) {

    .tv2 .head .logo_box {
        padding-top: 40px;
        padding-bottom: 5px;
    }

    .tv2 .head .logo_box .submenu {
        position: absolute;
        top: 8px;
        right: 0px;
        margin-right: 8px;
    }

    .tv2 .hamburger {
        top: 45px;
        right: 11px;
    }
}



/* 尾 */
.tv2 .footer {
    background-color: #4c4948;
}

.tv2 .footer .box {
    padding: 20px 0;

    display: flex;
    align-items: center;
}

.tv2 .footer .box .title h2 {
    color: #fff;
    font-weight: 600;
    letter-spacing: 1px;
    margin: 0;
    padding: 10px;
}

.tv2 .footer .box .logo_box {
    flex-basis: 200px;
}

.tv2 .footer .box .links_box {
    margin: 0 20px;
    margin-right: 40px;
    flex-basis: calc((100% - 200px) / 2);
}

.tv2 .footer .box .links_box .list {
    margin: 0;
    padding: 0;
    list-style: none;

    display: flex;
    flex-wrap: wrap;

    border-right: 1px solid #fff;
}

.tv2 .footer .box .links_box .list li {
    flex-basis: calc(100% / 2);
}

.tv2 .footer .box .links_box .list li .link {
    display: inline-block;
    color: #fff;
    padding: 5px 10px;
    text-decoration: none;
    transition: 0.3s;
}

.tv2 .footer .box .links_box .list li .link:hover {
    /* opacity: 0.8; */
    color: #f7dec6;
}

.tv2 .footer .box .links_box .list li .link p {
    margin: 0;
    letter-spacing: 1px;
}

.tv2 .footer .box .contact_box {
    flex-basis: calc((100% - 200px) / 2);
}

.tv2 .footer .box .contact_box .text_box {
    padding: 10px;
}

.tv2 .footer .box .contact_box .text_box p {
    margin: 0;
    color: #fff;
    letter-spacing: 1px;
    line-height: 1.6rem;
}

.tv2 .footer .bottom {
    background-color: #000000;
    text-align: center;
}

.tv2 .footer .bottom p {
    margin: 0;
    padding: 5px;
    color: #fff;
}


@media (max-width: 1199.98px) {

    .tv2 .footer .box {
        flex-wrap: wrap;
    }

    .tv2 .footer .box .logo_box {
        flex-basis: 100%;
        padding: 0 10px;
        padding-top: 20px;
    }

    .tv2 .footer .box .logo_box img {
        width: 200px;
    }

    .tv2 .footer .box .links_box {
        flex-basis: calc(100% / 2 - 40px);
        margin-left: 0;
    }

    .tv2 .footer .box .contact_box {
        flex-basis: calc(100% / 2 - 0px);
    }
}


@media (max-width: 991.98px) {

    .tv2 .footer .box .links_box {
        flex-basis: calc(52% - 20px);
        margin-left: 0;
        margin-right: 20px;
    }

    .tv2 .footer .box .contact_box {
        flex-basis: calc(48% - 0px);
    }
}

@media (max-width: 767.98px) {

    .tv2 .footer .box .links_box {
        flex-basis: 100%;
        margin-left: 0;
        margin-right: 0px;
        margin-bottom: 10px;

        border-bottom: 1px solid #fff;
    }

    .tv2 .footer .box .links_box .list {
        border-right: none;
    }

    .tv2 .footer .box .contact_box {
        flex-basis: 100%;
    }
}

@media (max-width: 575.98px) {

    .tv2 .footer .box .links_box .list li {
        flex-basis: 100%;
    }
}





/* 首頁 */
/* 輪播 */
.tv2 .home .banner_box .carousel_box {
    padding-bottom: 30px;
    margin-bottom: 5px;
}

.tv2 .home .banner_box .carousel_box .slick-slide>div {
    text-align: center;
}

.tv2 .home .banner_box .carousel_box a {
    display: inline-block;
    width: 100%;
}

.tv2 .home .banner_box .carousel_box a:focus-visible {
    outline-offset: -5px;
}

.tv2 .home .banner_box .carousel_box .img_box {
    overflow: hidden;
    width: 100%;
    /* height: 700px; */
    position: relative;
}

.tv2 .home .banner_box .carousel_box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tv2 .home .banner_box .carousel_box .slick-list {
    transition: height 0.5s ease-in-out;
}

.tv2 .home .banner_box .swiper-pagination-bullet-active {
    background-color: #dabb7c;
    transform: scale(1.2);
}

.tv2 .home .banner_box .swiper .swiper-pagination .swiper-pagination-bullet {
    margin: 0 8px;
}


/* 活動專區 */
.tv2 .home .activity_box {
    background-image: url(../img/HomeActivity_bg.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 20px 0;
}

.tv2 .home .activity_box .title_box {
    text-align: center;
    padding: 20px 0;
}

.tv2 .home .activity_box .title_box h2 {
    display: inline-block;
    margin: 0;
    letter-spacing: 2px;
    font-size: 1.8rem;

    position: relative;
    z-index: 1;
}

.tv2 .home .activity_box .title_box h2::before {
    content: "";
    width: 28px;
    height: 28px;
    border-radius: 20px;
    background-color: #d8bf8d;

    position: absolute;
    top: 0px;
    left: -13px;

    z-index: -1;
}

.tv2 .home .activity_box .title_box h2::after {
    content: "";
    width: 15px;
    height: 15px;
    border-radius: 20px;
    background-color: #f7e2c1;

    position: absolute;
    top: -3px;
    left: -16px;

    z-index: -1;
}

.tv2 .home .activity_box .tab_box {
    margin: 0;
    padding: 20px 0;
    list-style: none;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 20px;
}

.tv2 .home .activity_box .tab_box .tab {
    background: linear-gradient(-60deg, #a0a0a0 0%, #d9d9d9 20%, #ffffff 40%, #bfbfbf 70%, #a0a0a0 90%);
    border: 1px solid #898989;
    box-shadow: 3px 3px 2px #00000020;
    border-radius: 6px;
    padding: 8px 20px;
}

.tv2 .home .activity_box .tab_box .tab.active {
    background: linear-gradient(-60deg, #fff9d2 0%, #f7dec6 10%, #b99165 30%, #b8834c 70%, #fbecbc 95%, #d1a058 100%);
    border: 1px solid #7f5c1d;
    color: #fff;
}

.tv2 .home .activity_box .tab_box .tab .tab-text {
    margin: 0;
    letter-spacing: 1px;
    font-weight: 400;
}

.tv2 .home .activity_box .activity_main .img_box {
    margin: 20px auto;
    max-width: 700px;
}

.tv2 .home .activity_box .activity_main .img_box img {
    margin: 0 auto;
    width: 100%;
    /* box-shadow: 8px 8px 2px #00000015; */
    filter: drop-shadow(8px 8px 2px #00000015);
}

.tv2 .home .activity_box .activity_main h3 {
    font-size: 1.5rem;
    text-align: center;
    letter-spacing: 1px;
    font-weight: 400;
}

.tv2 .home .activity_box .activity_main .btn_box {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px 0;
}

.tv2 .home .activity_box .activity_main .activity_link {
    text-decoration: none;
    font-size: 1.1rem;
    letter-spacing: 1px;
    color: #000;
    border: 1px solid #7f5c1d;
    box-shadow: 3px 3px 1px #00000015;

    display: flex;
    align-items: center;
    padding: 5px 30px;

    transition: 0.3s;
}

.tv2 .home .activity_box .activity_main .activity_link:hover {
    /* background-color: #fff; */
    transform: scale(1.03);
}

.tv2 .home .activity_box .activity_main .activity_link img {
    display: inline-block;
    width: 18px;
    margin-right: 5px;
}

.tv2 .home .activity_box .activity_main .activity_link p {
    margin: 0;
}

@media (max-width: 991.98px) {

    .tv2 .home .activity_box .tab_box {
        flex-wrap: wrap;
    }
}




/* HOT新聞 圖文列表 */
.tv2 .home .list_box {
    padding: 20px 0;
}

.tv2 .home .list_box .title_box {
    text-align: center;
    padding: 20px 0;

    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-areas: "left title right";
    align-items: center;
}

.tv2 .home .list_box .title_box .title_left {
    grid-area: left;
}

.tv2 .home .list_box .title_box .title_right {
    grid-area: right;
}

.tv2 .home .list_box .title_box h2 {
    display: inline-block;
    margin: 0;
    letter-spacing: 2px;
    font-size: 1.8rem;

    position: relative;
    z-index: 1;

    grid-area: title;
}

.tv2 .home .list_box .title_box h2::before {
    content: "";
    width: 28px;
    height: 28px;
    border-radius: 20px;
    background-color: #d8bf8d;

    position: absolute;
    top: 0px;
    left: -13px;

    z-index: -1;
}

.tv2 .home .list_box .title_box h2::after {
    content: "";
    width: 15px;
    height: 15px;
    border-radius: 20px;
    background-color: #f7e2c1;

    position: absolute;
    top: -3px;
    left: -16px;

    z-index: -1;
}

.tv2 .home .list_box .tab_box {
    margin: 0;
    padding: 0px 0;
    list-style: none;

    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.tv2 .home .list_box .tab_box .tab {
    padding: 0 15px;
    font-size: 1.1rem;

    border: none;
    background-color: transparent;
    font-weight: 400;

    position: relative;
}

.tv2 .home .list_box .tab_box .tab::after {
    content: "";
    width: 1px;
    height: 15px;
    background-color: #000;

    position: absolute;

    top: 5px;
    right: 0;
}

.tv2 .home .list_box .tab_box li:nth-last-child(1) .tab:after {
    content: none;
}

.tv2 .home .list_box .tab_box .tab.active {
    color: #9e752d;
    font-weight: 500;
}

.tv2 .home .list_box .tab_box .tab .tab-text {
    margin: 0;
    letter-spacing: 1px;
    font-weight: 400;
}


.tv2 .home .list_box .list_main .list {
    margin: 0;
    padding: 0;
    list-style: none;

    display: flex;
}

.tv2 .home .list_box .list_main .list li {
    flex-basis: calc(100% / 3);
    padding: 10px 15px;
}

.tv2 .home .list_box .list_main .list .link {
    text-decoration: none;
    color: #000;
    display: inline-block;
    width: 100%;
}

.tv2 .home .list_box .list_main .list .link .img_box {
    border-radius: 0px 50px 0px 50px;
    overflow: hidden;

    padding-bottom: 56.25%;

    position: relative;

    box-shadow: 5px 5px 2px #00000015;
}

.tv2 .home .list_box .list_main .list .link .img_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    position: absolute;

    transition: 0.3s;
}

.tv2 .home .list_box .list_main .list .link:hover img {
    transform: scale(1.05);
}

.tv2 .home .list_box .list_main .list .link .title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.7rem;
    min-height: calc(1.7rem * 2);
    margin: 15px 0;
}

.tv2 .home .list_box .list_main .list .link h3 {
    margin: 0;
    font-size: 1.2rem;
    transition: 0.3s;
}

.tv2 .home .list_box .list_main .list .link:hover h3 {
    color: #7f5c1d;
}

.tv2 .home .list_box .list_main .list .link .text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    line-height: 1.5rem;
    min-height: calc(1.5rem * 4);

    margin: 10px 0;
}

.tv2 .home .list_box .list_main .list .link .text p {
    margin: 0;
    font-size: 1rem;
}

.tv2 .home .list_box .list_main .list .link .btn_box {
    display: flex;
    justify-content: flex-end;
    margin: 10px 0;
    margin-top: 20px;
}

.tv2 .home .list_box .list_main .list .link .btn_box .v2-btn {
    display: inline-block;

    border: 1px solid #7f5c1d;
    display: flex;
    align-items: center;
    justify-content: center;

    padding: 4px 15px 5px 38px;

    letter-spacing: 2px;
    font-size: 0.9rem;
    font-weight: 400;

    box-shadow: 3px 3px 3px #00000015;

    background: url(../img/list_search.svg), linear-gradient(0deg, #fff 0%, #fff 100%);
    background-repeat: no-repeat;
    background-size: 17px;
    background-position: 15px center;

    transition: 0.3s;
}

.tv2 .home .list_box .list_main .list .link:hover .btn_box .v2-btn {
    color: #fff;
    background: url(../img/list_search_w.svg), linear-gradient(110deg, #efd497 0%, #b5883c 70%);
    background-repeat: no-repeat;
    background-size: 17px, 100%;
    background-position: 15px center, center;

    border: 1px solid #efd497;
}

.tv2 .home .list_box .list_main .list .link .btn_box .v2-btn p {
    margin: 0;
}


.tv2 .home .list_box .list_main .listBtn_box {
    margin: 20px 0;
    display: flex;
    justify-content: center;
}

.tv2 .home .list_box .list_main .listBtn_box .v2-btn {
    background-color: #fff5eb;
    border: 1px solid #7f5c1d;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 5px 10px;
    width: 250px;

    text-decoration: none;
    color: #000;

    transition: 0.3s;
}

.tv2 .home .list_box .list_main .listBtn_box .v2-btn:hover {
    background-color: #fff;
    transform: scale(1.03);
}

.tv2 .home .list_box .list_main .listBtn_box .v2-btn img {
    width: 20px;
    margin-right: 5px;
}

.tv2 .home .list_box .list_main .listBtn_box .v2-btn p {
    margin: 0;
    letter-spacing: 2px;
}

@media (max-width: 991.98px) {

    .tv2 .home .list_box .tab_box .tab {
        font-size: 1rem;
        padding: 0 10px;
    }

    .tv2 .home .list_box .list_main .list {
        flex-wrap: wrap;
    }

    .tv2 .home .list_box .list_main .list li {
        flex-basis: calc(100% / 2);
    }

    .tv2 .home .list_box .list_main .list li:nth-last-child(1) {
        display: none;
    }
}

@media (max-width: 767.98px) {

    .tv2 .home .list_box .title_box {
        grid-template-columns: 1fr auto 1fr;
        grid-template-areas:
            ". title ."
            "right right right";
        row-gap: 8px;
    }

    .tv2 .home .list_box .tab_box .tab {
        font-size: 1.1rem;
    }
}

@media (max-width: 575.98px) {

    .tv2 .home .list_box .tab_box {
        justify-content: center;
    }

    .tv2 .home .list_box .list_main .list li {
        flex-basis: 100%;
    }

    .tv2 .home .list_box .list_main .list li:nth-last-child(1) {
        display: inline-block;
    }

    .tv2 .home .list_box .list_main .list .link .title {
        display: flex;
    }

    .tv2 .home .list_box .list_main .list .link .text {
        min-height: initial;
    }
}













/* 影音專區 */
.tv2 .home .video_box {
    background-image: url(../img/Homevideo_bg_overlay.svg), url(../img/Homevideo_bg_photo.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 20px 0;
}

.tv2 .home .video_box .title_box {
    text-align: center;
    padding: 20px 0;
}

.tv2 .home .video_box .title_box h2 {
    display: inline-block;
    margin: 0;
    letter-spacing: 2px;
    font-size: 1.8rem;

    position: relative;
    z-index: 1;
}

.tv2 .home .video_box .title_box h2::before {
    content: "";
    width: 28px;
    height: 28px;
    border-radius: 20px;
    background-color: #d8bf8d;

    position: absolute;
    top: 0px;
    left: -13px;

    z-index: -1;
}

.tv2 .home .video_box .title_box h2::after {
    content: "";
    width: 15px;
    height: 15px;
    border-radius: 20px;
    background-color: #f7e2c1;

    position: absolute;
    top: -3px;
    left: -16px;

    z-index: -1;
}

.tv2 .home .video_box .tab_box {
    margin: 0;
    padding: 20px 0;
    list-style: none;

    display: flex;
    justify-content: center;
}

.tv2 .home .video_box .tab_box li {
    border-left: 1px solid #595757;
    padding: 0 10px;
}

.tv2 .home .video_box .tab_box li:nth-last-child(1) {
    border-right: 1px solid #595757;
}

.tv2 .home .video_box .tab_box .tab {
    padding: 5px 25px;
    position: relative;
    border: none;
    background-color: transparent;

    transition: 0.3s;

    display: flex;
    flex-direction: column;
    align-items: center;
}

.tv2 .home .video_box .tab_box .tab.active::before {
    content: "";
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, #efd497 0%, #b5883c 100%);

    position: absolute;
    bottom: -2px;
    left: 0;
}

.tv2 .home .video_box .tab_box .tab img {
    width: 40px;
    transition: 0.3s;
}

.tv2 .home .video_box .tab_box .tab .img_active {
    position: absolute;
    top: 5px;
    opacity: 0;
}

.tv2 .home .video_box .tab_box .tab.active .img_normal {
    opacity: 0;
}

.tv2 .home .video_box .tab_box .tab.active .img_active {
    opacity: 1;
}

.tv2 .home .video_box .tab_box .tab .tab-text {
    margin: 0;
    letter-spacing: 1px;
    font-weight: 400;
}


.tv2 .home .video_box .video_main .video_carousel_box .link {
    color: #000;
    text-decoration: none;

    display: flex;
    align-items: center;

    padding: 10px;
}

.tv2 .home .video_box .video_main .video_carousel_box .link:focus-visible {
    outline-offset: -5px;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .text_box {
    flex-basis: 40%;
    background-color: #fff;
    padding: 20px;
    height: calc(1.5rem * 7 + 200px);

    box-shadow: 3px -6px 3px #00000025;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .text_box .tag {
    display: inline-block;
    border-radius: 30px;
    width: 50px;
    height: 50px;
    background: linear-gradient(110deg, #efd497 0%, #b5883c 70%);

    text-align: center;
    padding: 12px 0;
    color: #fff;
    font-weight: 400;
    letter-spacing: 1px;
    font-size: 1.1rem;
    margin: 10px;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .text_box .title h3 {
    margin: 10px;
    font-weight: 400;
    letter-spacing: 2px;
    font-size: 1.5rem;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .text_box .text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
    overflow: hidden;
    line-height: 1.5rem;
    min-height: calc(1.5rem * 7);
    margin: 10px 0;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .text_box .text p {
    margin: 10px;
    font-size: 1rem;
    letter-spacing: 1px;
    height: 100%;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .img_box {
    flex-basis: 60%;
    background-color: #000;
    position: relative;
    height: 500px;

    box-shadow: 5px 2px 2px #00000025;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .img_box .icon img {
    width: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}

.tv2 .home .video_box .video_main .video_carousel_box .link .img_box .img {
    height: 100%;
}

.tv2 .home .video_box .video_main .video_carousel_box .link .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}




/* 輪播箭頭 */
.tv2 .home .video_box .video_main .swiper_controls {
    text-align: right;
    margin-top: 20px;
}

.tv2 .home .video_box .video_main .swiper_controls .swiper_btn {
    display: inline-block;
    width: 30px;
    height: 30px;
    background-color: #4c4845;
    border: none;
    border-radius: 30px;
    margin: 0 10px;

    transition: 0.3s;
}

.tv2 .home .video_box .video_main .swiper_controls .swiper_btn:hover {
    opacity: 0.8;
}

.tv2 .home .video_box .video_main .swiper_controls .swiper_prev img {
    transform: scaleX(-1);
}

.tv2 .home .video_box .videoBtn_box {
    display: flex;
    justify-content: center;
}

.tv2 .home .video_box .videoBtn_box .v2-btn {
    background-color: #fff5eb;
    border: 1px solid #7f5c1d;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 5px 10px;
    width: 250px;

    text-decoration: none;
    color: #000;

    transition: 0.3s;

    transform: translateY(-35px);
}

.tv2 .home .video_box .videoBtn_box .v2-btn:hover {
    background-color: #fff;
    transform: translateY(-35px) scale(1.03);
}

.tv2 .home .video_box .videoBtn_box .v2-btn img {
    width: 20px;
    margin-right: 5px;
    padding-top: 1px;
}

.tv2 .home .video_box .videoBtn_box .v2-btn p {
    margin: 0;
    letter-spacing: 2px;
}


@media (max-width: 767.98px) {

    .tv2 .home .video_main {
        position: relative;
    }

    .tv2 .home .video_box .video_main .video_carousel_box .link {
        padding: 20px 10px;
        flex-wrap: wrap;
    }

    .tv2 .home .video_box .video_main .video_carousel_box .link .text_box {
        flex-basis: 100%;
        box-shadow: 5px 2px 2px #00000025;
    }

    .tv2 .home .video_box .video_main .video_carousel_box .link .img_box {
        flex-basis: 100%;
        height: 300px;
    }

    .tv2 .home .video_box .video_main .swiper_controls .swiper_btn {
        width: 40px;
        height: 40px;
        padding: 10px;

        position: absolute;
        top: 47%;
        left: -15px;

        z-index: 5;
    }

    .tv2 .home .video_box .video_main .swiper_controls .swiper_next {
        left: initial;
        right: -15px;
    }

    .tv2 .home .video_box .videoBtn_box {
        margin-bottom: 20px;
    }

    .tv2 .home .video_box .videoBtn_box .v2-btn {
        transform: translateY(0);
    }
}

@media (max-width: 575.98px) {

    .tv2 .home .video_box .tab_box li {
        padding: 0 5px;
        flex-grow: 1;
        display: flex;
        justify-content: center;
    }

    .tv2 .home .video_box .tab_box .tab {
        padding: 3px;
    }

    .tv2 .home .video_box .tab_box .tab .tab-text {
        font-size: 0.9rem;
    }
}



/* 相關平台 */
.tv2 .home .links_box {
    padding: 20px 0;
}

.tv2 .home .links_box .title_box {
    text-align: center;
    padding: 20px 0;
}

.tv2 .home .links_box .title_box h2 {
    display: inline-block;
    margin: 0;
    letter-spacing: 2px;
    font-size: 1.8rem;

    position: relative;
    z-index: 1;
}

.tv2 .home .links_box .title_box h2::before {
    content: "";
    width: 28px;
    height: 28px;
    border-radius: 20px;
    background-color: #d8bf8d;

    position: absolute;
    top: 0px;
    left: -13px;

    z-index: -1;
}

.tv2 .home .links_box .title_box h2::after {
    content: "";
    width: 15px;
    height: 15px;
    border-radius: 20px;
    background-color: #f7e2c1;

    position: absolute;
    top: -3px;
    left: -16px;

    z-index: -1;
}

.tv2 .home .links_box .links_main {
    position: relative;
    padding: 20px 60px;
}

.tv2 .home .links_box .links_main .link {
    display: inline-block;
    border: 1px solid #e5e4e0;
    padding: 10px;
    width: 100%;
}

.tv2 .home .links_box .links_main .link:focus-visible {
    outline-offset: -5px;
}

.tv2 .home .links_box .links_main .link .img_box {
    height: 100px;
}

.tv2 .home .links_box .links_main .link .img_box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.tv2 .home .links_box .links_main .swiper_controls .swiper_btn {
    display: inline-block;
    width: 30px;
    height: 30px;
    background-color: #b5b5b6;
    border: none;
    border-radius: 30px;
    margin: 0 10px;
    transition: 0.3s;

    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);

    z-index: 1;
}

.tv2 .home .links_box .links_main .swiper_controls .swiper_prev {
    right: initial;
    left: 5px;
}

.tv2 .home .links_box .links_main .swiper_controls .swiper_btn:hover {
    opacity: 0.8;
}

.tv2 .home .links_box .links_main .swiper_controls .swiper_prev img {
    transform: scaleX(-1);
}






/* 毛毛蟲 */
.tv2 .breadcrumb_box {
    background-color: #eeeeee;
}

.tv2 .breadcrumb_box .container .icon {
    width: 30px;
    /* margin-right: 5px; */
    /* transform: translateY(-2px); */
}

.tv2 .breadcrumb_box .v2-breadcrumb {
    margin: 0;
    /* margin: 15px 0; */
    padding: 10px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.tv2 .v2-breadcrumb .v2-breadcrumb-item a {
    text-decoration: none;
    color: #000;
    font-weight: 400;

    transition: 0.3s;
}

.tv2 .v2-breadcrumb .v2-breadcrumb-item a:hover {
    opacity: 0.8;
}

.tv2 .v2-breadcrumb .v2-breadcrumb-item {
    color: #9e752d;
    /* display: inline-block; */
    display: flex;
    align-items: center;
    padding: 0 5px;
    font-weight: 400;
    letter-spacing: 1px;
}

.tv2 .v2-breadcrumb-item+.v2-breadcrumb-item::before {
    content: "＞";
    font-size: 0.75rem;
    color: #000;
    /* right: 5px; */
    /* transform: translateY(3px); */
    transform: translateX(-4px);
}


/* 頁碼 */
.tv2 .page_box {
    margin: 0;
    padding: 30px 0px;
    list-style: none;

    display: flex;
    align-items: center;
    justify-content: center;
}

.tv2 .page_box button {
    border: none;
    /* border: 1px solid #b5b5b6; */
    background: linear-gradient(110deg, #8e8e8e 0%, #d9d9d9 40%, #ffffff 100%);


    border-radius: 30px;
    margin: 0 5px;
    font-size: 1.1rem;
    font-weight: 600;

    width: 35px;
    height: 35px;

    transition: 0.3s;
    cursor: pointer;
}

.tv2 .page_box button:hover {
    /* border: 1px solid #4a8eb7; */
    background: linear-gradient(-60deg, #fff9d2 0%, #f7dec6 10%, #b99165 30%, #b8834c 70%, #fbecbc 95%, #d1a058 100%);
    color: #fff !important;
}

.tv2 .page_box button.active {
    /* border: 1px solid #4a8eb7; */
    background: linear-gradient(-60deg, #fff9d2 0%, #f7dec6 10%, #b99165 30%, #b8834c 70%, #fbecbc 95%, #d1a058 100%);
    color: #fff !important;
}

.tv2 button.prev:disabled,
.tv2 button.next:disabled {
    pointer-events: none;
}

@media (max-width: 575.98px) {

    .tv2 .page_box li a {
        padding: 2px 9px 1px 9px;
        margin: 3px 4px;
    }

    .tv2 .page_box li.prev a,
.tv2 .page_box li.next a {
        width: 32px;
        height: 32px;
    }
}





/* 活動網站專區的圖文列表 */
.tv2 .activityList .activity_box {
    padding: 20px 0;
}

.tv2 .activityList .activity_box .tab_box {
    margin: 0;
    padding: 20px 0;
    list-style: none;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 10px 20px;
}

.tv2 .activityList .activity_box .tab_box .tab {
    background: linear-gradient(-60deg, #a0a0a0 0%, #d9d9d9 20%, #ffffff 40%, #bfbfbf 70%, #a0a0a0 90%);
    border: 1px solid #898989;
    box-shadow: 3px 3px 2px #00000020;
    border-radius: 6px;
    padding: 8px 20px;
}

.tv2 .activityList .activity_box .tab_box .tab.active {
    background: linear-gradient(-60deg, #fff9d2 0%, #f7dec6 10%, #b99165 30%, #b8834c 70%, #fbecbc 95%, #d1a058 100%);
    border: 1px solid #7f5c1d;
    color: #fff;
}

.tv2 .activityList .activity_box .tab_box .tab .tab-text {
    margin: 0;
    letter-spacing: 1px;
    font-weight: 400;
}


.tv2 .activityList .activity_main .list {
    margin: 0;
    padding: 0;
    list-style: none;

    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.tv2 .activityList .activity_main .list li {
    flex-basis: calc(100% / 3);
    padding: 20px 15px;
}

.tv2 .activityList .activity_main .list li .link {
    display: inline-block;
    width: 100%;
    text-decoration: none;
}

.tv2 .activityList .activity_main .list li .img_box {
    /* width: 100%; */
    overflow: hidden;
    padding-bottom: 75%;
    position: relative;
    margin-bottom: 10px;
}

.tv2 .activityList .activity_main .list li .img_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    position: absolute;

    transition: 0.3s;
}

.tv2 .activityList .activity_main .list li .link:hover .img_box img {
    transform: scale(1.05);
}

.tv2 .activityList .activity_main .list li .link .title {
    border: 1px solid transparent;
    border-bottom: 1px solid #000;
    color: #000;

    position: relative;
    transition: 0.3s;
}

.tv2 .activityList .activity_main .list li .link:hover .title {
    background: linear-gradient(-60deg, #fff9d2 0%, #f7dec6 10%, #b99165 30%, #b8834c 70%, #fbecbc 95%, #d1a058 100%);
    border: 1px solid #7f5c1d;
    color: #fff;
}

.tv2 .activityList .activity_main .list li .link .title::before {
    content: "";
    width: 25px;
    height: 25px;

    background-image: url(../img/activityList_arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;

    position: absolute;
    top: 10px;
    right: 100%;

    transition: 0.3s;
}

.tv2 .activityList .activity_main .list li .link:hover .title::before {
    content: "";
    width: 25px;
    height: 25px;

    background-image: url(../img/activityList_arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;

    position: absolute;
    top: 10px;
    right: 10px;
}

.tv2 .activityList .activity_main .list li .link .title p {
    margin: 0;
    font-size: 1.2rem;
    padding: 8px 0;
    text-align: center;
    letter-spacing: 2px;
}

@media (max-width: 991.98px) {

    .tv2 .activityList .activity_main .list li {
        flex-basis: calc(100% / 2);
        /* padding: 10px; */
    }

    .tv2 .activityList .activity_main .list li .img_box {
        margin-bottom: 5px;
    }

    .tv2 .activityList .activity_main .list li .link .title::before {
        width: 16px;
        height: 16px;
        top: 14px;
    }

    .tv2 .activityList .activity_main .list li .link:hover .title::before {
        width: 16px;
        height: 16px;
        top: 14px;
    }
}

@media (max-width: 767.98px) {

    .tv2 .activityList .activity_main .list li {
        padding: 10px;
    }

    .tv2 .activityList .activity_main .list li .link .title p {
        letter-spacing: 1px;
        font-size: 1.1rem;
    }
}

@media (max-width: 575.98px) {

    .tv2 .activityList .activity_main .list li {
        flex-basis: 100%;
        padding: 10px 0;
        padding-bottom: 20px;
    }

    .tv2 .activityList .activity_main .list li .link .title p {
        letter-spacing: 1px;
        font-size: 1.2rem;
    }
}

/*////////////////////////////// 設計稿未涵蓋的補充樣式 //////////////////////////////*/

/* 頁籤、按鈕內文字(原設計稿用 <p>，改為 <span> 以符合 HTML 結構) */
.tv2 .tab .tab-text,
.tv2 .v2-btn .v2-tip {
    display: block;
}

/* 次選單提示文字：鍵盤聚焦時也顯示 */
.tv2 .head .logo_box .submenu li .v2-btn:focus-visible .v2-tip {
    opacity: 1;
}

.tv2 .head .logo_box .submenu li .v2-btn:focus-visible {
    background-color: #c1a566;
}

.tv2 .head .logo_box .submenu li .v2-btn:focus-visible .hover {
    opacity: 1;
}

.tv2 .head .logo_box .submenu li .v2-btn:focus-visible .normal {
    opacity: 0;
}

.tv2 .head .logo_box .submenu li .v2-btn img {
    width: 100%;
    height: 100%;
}

/* 次選單下拉面板(會員專區) */
.tv2 .head .logo_box .submenu li.v2-dropdown {
    position: relative;
}

.tv2 .head .logo_box .submenu li.v2-dropdown.open .v2-tip {
    opacity: 0 !important;
}

.tv2 .head .v2-popup {
    position: absolute;
    top: 50px;
    right: 50%;
    transform: translateX(50%);
    z-index: 60;
    min-width: 150px;
    margin: 0;
    padding: 0;
    list-style: none;
    background-color: #efefef;
    box-shadow: 5px 5px 2px #00000020;
}

.tv2 .head .v2-popup a {
    display: block;
    width: 100%;
    padding: 12px 10px;
    border: none;
    border-bottom: 1px solid #c1a566;
    background: transparent;
    color: #000;
    text-align: center;
    text-decoration: none;
    letter-spacing: 2px;
    white-space: nowrap;
    transition: 0.3s;
}

.tv2 .head .v2-popup li:last-child a {
    border-bottom: none;
}

.tv2 .head .v2-popup a:hover {
    background-color: #c1a566;
    color: #fff;
}

@media (max-width: 575.98px) {
    .tv2 .head .v2-popup {
        right: 0;
        transform: none;
    }

}

/* 主選單：無子選單的一般項目與 Bootstrap 連結樣式隔離 */
.tv2 .head .menu_box .menu li a.v2-btn:hover,
.tv2 .head .menu_box .menu li a.v2-btn:focus {
    color: #9e752d;
}

.tv2 .head .logo_box .logo {
    margin: 0 auto;
    font-size: 0;
}

/* 首頁橫幅暫停鈕(WCAG 2.2.2) */
.tv2 .home .banner_box .carousel_box {
    position: relative;
}

.tv2 .home .banner_box .v2-banner-toggle {
    position: absolute;
    left: 16px;
    bottom: 4px;
    z-index: 5;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 1px solid #7f5c1d;
    border-radius: 50%;
    background-color: #fff;
    color: #7f5c1d;
    font-size: 0.75rem;
    line-height: 1;
}

.tv2 .home .banner_box .v2-banner-toggle:hover {
    background-color: #dabb7c;
    color: #fff;
}

/* 首頁影音：文字區塊高度固定時避免溢出 */
.tv2 .home .video_box .video_main .video_carousel_box .link .text_box {
    overflow: hidden;
}

.tv2 .home .video_box .video_main .swiper_controls .swiper_btn img {
    margin: 0 auto;
}

.tv2 .home .links_box .links_main .swiper_controls .swiper_btn img {
    margin: 0 auto;
}

/* 頁尾：無障礙標章 */
.tv2 .footer .bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 4px 20px;
    padding: 5px 10px;
}

.tv2 .footer .bottom a.accessibility_link {
    float: none;
    margin: 0;
}

.tv2 .footer .bottom a.accessibility_link img {
    width: 88px;
    height: 31px;
}

/* 主選單：項目數由後台決定，空間不足時縮小字級、不折行 */
.tv2 .head .menu_box .menu li .v2-btn {
    white-space: nowrap;
}

@media (max-width: 1199.98px) {
    .tv2 .head .menu_box .menu li .v2-btn {
        font-size: 1.15rem;
        padding: 5px 6px;
    }
}

@media (max-width: 991.98px) {
    .tv2 .head .menu_box .menu li .v2-btn {
        font-size: 1rem;
        letter-spacing: 0;
        padding: 5px 4px;
    }
}

@media (max-width: 767.98px) {
    .tv2 .head .menu_box .menu li .v2-btn {
        font-size: 1.1rem;
        letter-spacing: 1px;
        padding: 5px 20px;
        white-space: normal;
    }
}

/* 首頁活動網站專區：實際圖片多為直式海報，限制高度避免過長 */
.tv2 .home .activity_box .activity_main .img_box img {
    width: auto;
    max-width: 100%;
    max-height: 480px;
}

/* 頁尾聯絡資訊來自後台 HTML，統一字級 */
.tv2 .footer .box .contact_box .text_box,
.tv2 .footer .box .contact_box .text_box span {
    color: #fff;
    font-size: 1rem !important;
}

.tv2 .footer .box .contact_box .text_box p:empty,
.tv2 .footer .box .contact_box .text_box p:has(> br:only-child) {
    display: none;
}

/* 無資料提示 */
.tv2 .v2-empty {
    padding: 40px 0;
    text-align: center;
    color: #666;
    letter-spacing: 1px;
}
