/* custom.css — 留作未來擴充用 */
:root {
    --banner-ratio-624: calc(100vw * (729 / 624)); /* 預設比例 */
    --banner-ratio-1024: calc(100vw * (640 / 1024));
    --banner-ratio-1440: calc(100vw * (720 / 1440));
    --banner-ratio-1280: calc(100vw * (720 / 1280));
    --banner-ratio-1920: calc(100vw * (720 / 1920));

    --color-7590dd: #7590dd;
    --color-353535: #353535;
    --color-b8afff: #b8afff;
    --color-f79a06: #f79a06;
    --color-f5f5f5: #f5f5f5;

    --pkg-bg: #fff;
    --pkg-text: #5b5b5b;
    --pkg-muted: #909090;
    --pkg-orange: var(--color-f79a06);
    --pkg-orange-deep: #f39800;
    --page-accent: var(--pkg-orange);
    --page-accent-deep: var(--pkg-orange-deep);
    --pkg-orange-soft: #fff3dc;
    --pkg-pink: #ee316a;
    --pkg-pink-soft: #fff7f9;
    --pkg-pink-border: #ffe4ec;
    --pkg-panel: #eaedf1;
    --pkg-line: #dfdfdf;
    --pkg-navy: #344067;
}

.faq-page {
    position: relative;
    margin-top: -100px;
    z-index: 2;
    border-top: 1px solid #e8e8ea;
    background: linear-gradient(to bottom, #ffffff, #f6f6f6);
    font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
}

.faq-page__section {
    padding: 14px 0 72px;
}

/* .faq-page__section .container {
    max-width: 1620px;
    padding-left: 26px;
    padding-right: 26px;
} */

.faq-page__accordion {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.faq-page__item {
    border: 1px solid #e8e9ec;
    border-radius: 15px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(37, 46, 70, 0.035);
    overflow: hidden;
}

.faq-page__trigger {
    width: 100%;
    border: 0;
    background: transparent;
    padding: 20px 34px;
    display: flex;
    align-items: center;
    gap: 15px;
    color: #3f3f3f;
    text-align: left;
}

.faq-page__badge {
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    border-radius: 7px;
    background: #fdf9ef;
    color: #d9a43b;
    font-size: clamp(1rem, 0.96rem + 0.18vw, 1.12rem);
    font-weight: 700;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.faq-page__question {
    flex: 1 1 auto;
    min-width: 0;
    color: #3d3d3d;
    font-size: clamp(1.04rem, 0.96rem + 0.36vw, 1.28rem);
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.42;
}

.faq-page__chevron {
    position: relative;
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
}

.faq-page__chevron::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 45%;
    width: 9px;
    height: 9px;
    border-right: 2px solid #e3ac39;
    border-bottom: 2px solid #e3ac39;
    transform: translate(-50%, -50%) rotate(45deg);
    transition: transform 0.2s ease;
}

.faq-page__item.is-open .faq-page__chevron::before {
    transform: translate(-50%, -28%) rotate(-135deg);
}

.faq-page__answer-wrap {
    padding: 0 34px 20px;
}

.faq-page__answer {
    margin: 0;
    border-top: 1px solid #dbdbde;
    color: #656565;
    font-size: clamp(0.82rem, 0.78rem + 0.18vw, 0.95rem);
    font-weight: 500;
    line-height: 1.88;
    letter-spacing: 0.01em;
    padding-top: 15px;
}

.faq-page__support {
    margin-top: 26px;
}

.faq-page__support-box {
    position: relative;
    overflow: hidden;
    min-height: 236px;
    border: 1px solid #ececec;
    border-radius: 14px;
    text-align: center;
    padding: 48px 24px 30px;
    background-color: #f7f7f7;
    background-image: url("../images/06/06ban_bg624.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.faq-page__support-box::before {
    content: "";
    position: absolute;
    inset: 0;
    /* background: linear-gradient(
        90deg,
        rgba(247, 247, 247, 0.9) 0%,
        rgba(247, 247, 247, 0.82) 56%,
        rgba(247, 247, 247, 0.62) 100%
    ); */
}

.faq-page__support-title,
.faq-page__support-text,
.faq-page__support-btn {
    position: relative;
    z-index: 1;
}

.faq-page__support-title {
    margin: 0;
    color: #494949;
    font-size: clamp(1.14rem, 1rem + 0.52vw, 1.5rem);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.01em;
}

.faq-page__support-text {
    margin: 11px auto 12px;
    max-width: 980px;
    color: #646464;
    font-size: clamp(0.8rem, 0.76rem + 0.18vw, 0.94rem);
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0.01em;
}

.faq-page__support-btn {
    display: inline-block;
    line-height: 0;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.faq-page__support-btn:hover,
.faq-page__support-btn:focus-visible {
    opacity: 0.94;
}

.faq-page__support-btn img {
    width: 250px;
    height: auto;
    display: block;
}

@media (min-width: 768px) {
    .faq-page__support-box {
        background-image: url("../images/06/06ban_bg1024.jpg");
    }
}

@media (min-width: 1200px) {
    .faq-page__support-box {
        background-image: url("../images/06/06ban_bg1280.jpg");
    }
}

@media (min-width: 1400px) {
    .faq-page__support-box {
        background-image: url("../images/06/06ban_bg1440.jpg");
    }
}

@media (min-width: 1680px) {
    .faq-page__support-box {
        background-image: url("../images/06/06ban_bg1920.jpg");
    }
}

@media (max-width: 991px) {
    .faq-page {
        margin-top: -80px;
    }

    .faq-page .page-hero__intro {
        padding: 10px 0 14px;
    }

    .faq-page__section {
        padding: 10px 0 56px;
    }

    /* .faq-page__section .container {
        padding-left: 20px;
        padding-right: 20px;
    } */

    .faq-page__question {
        font-size: 1.04rem;
    }

    .faq-page__trigger {
        padding: 17px 20px;
        gap: 12px;
    }

    .faq-page__answer-wrap {
        padding: 0 20px 16px;
    }

    .faq-page__answer {
        padding-top: 12px;
    }

    .faq-page__support-box {
        min-height: 200px;
        padding: 36px 16px 20px;
    }

    .faq-page__support-title {
        font-size: 1.18rem;
    }

    .faq-page__support-text {
        margin: 9px auto 10px;
        font-size: 0.83rem;
    }
}

@media (max-width: 767.98px) {
    .faq-page {
        margin-top: -54px;
    }

    .faq-page .page-hero__intro {
        padding: 6px 0 10px;
    }

    .faq-page .page__title {
        letter-spacing: 0.11em;
    }

    .faq-page .page__text {
        margin-top: 8px;
    }

    .faq-page__section {
        padding: 8px 0 42px;
    }

    .faq-page__accordion {
        gap: 10px;
    }

    .faq-page__item {
        border-radius: 12px;
    }

    .faq-page__trigger {
        padding: 14px 14px;
        gap: 9px;
    }

    .faq-page__badge {
        width: 26px;
        height: 26px;
        border-radius: 5px;
        font-size: 0.88rem;
    }

    .faq-page__question {
        font-size: 0.93rem;
        line-height: 1.5;
    }

    .faq-page__chevron {
        width: 14px;
        height: 14px;
    }

    .faq-page__chevron::before {
        width: 6px;
        height: 6px;
        border-right-width: 2px;
        border-bottom-width: 2px;
    }

    .faq-page__answer-wrap {
        padding: 0 14px 11px;
    }

    .faq-page__answer {
        font-size: 11px;
        line-height: 1.75;
        padding-top: 10px;
    }

    .faq-page__support {
        margin-top: 16px;
    }

    .faq-page__support-box {
        min-height: 180px;
        border-radius: 14px;
        padding: 24px 12px 14px;
    }

    .faq-page__support-box::before {
        background: linear-gradient(
            180deg,
            rgba(247, 247, 247, 0.93) 0%,
            rgba(247, 247, 247, 0.89) 100%
        );
    }

    .faq-page__support-title {
        font-size: 1.03rem;
    }

    .faq-page__support-text {
        font-size: 11px;
        line-height: 1.65;
        margin: 8px auto 9px;
    }

    .faq-page__support-btn img {
        width: 210px;
    }
}

html,
body {
    scroll-behavior: smooth;
}

.resources-page {
    position: relative;
    /* margin-top: -100px; */
    z-index: 2;
    background: linear-gradient(to bottom, #ffffff, #f6f6f6);
}

.resources-page__subnav {
    position: relative;
    background: linear-gradient(
        90deg,
        #ece0cf 0%,
        #efb152 16%,
        #f1a22a 50%,
        #efb152 84%,
        #ece0cf 100%
    );
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.6);
    padding: 8px 0;
}

.resources-page .container {
    max-width: 1180px;
    padding-left: 20px;
    padding-right: 20px;
}

.resources-page__subnav-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0;
    flex-wrap: nowrap;
    overflow: hidden;
    padding-top: 0;
}

.resources-page__subnav-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 84px;
    padding: 6px 16px;
    margin: 0 4px;
    border-radius: 0;
    border: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.96);
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    text-decoration: none;
    transition: 0.2s ease;
    z-index: 0;
}

.resources-page__subnav-link:visited {
    color: rgba(255, 255, 255, 0.96);
}

.resources-page__subnav-link + .resources-page__subnav-link::before {
    content: "";
    position: absolute;
    left: -4px;
    top: 50%;
    width: 1px;
    height: 22px;
    background: rgba(255, 255, 255, 0.62);
    transform: translateY(-50%);
}

.resources-page__subnav-link:hover,
.resources-page__subnav-link.is-active {
    background: #33497b;
    border: 1px solid rgba(255, 255, 255, 0.75);
    border-radius: 12px;
    box-shadow: 0 6px 12px rgba(32, 46, 80, 0.22);
    color: #ffffff !important;
    z-index: 2;
}

.resources-page__subnav-icon {
    width: 15px;
    height: 15px;
    object-fit: contain;
    filter: brightness(0) invert(1);
    opacity: 0.95;
}

.resources-page__periods {
    padding-top: 28px;
}

.resources-page__period-shell {
    max-width: 760px;
    margin: 0 auto;
    position: relative;
}

.resources-page__period-panel {
    width: 100%;
    overflow: hidden;
    transition: max-height 0.24s ease;
}

.resources-page__period-track {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    flex-wrap: wrap;
}

.resources-page__period-shell:not(.is-collapsible)
    .resources-page__period-track {
    justify-content: center;
}

.resources-page__period-shell.is-collapsible .resources-page__period-panel {
    padding-right: 82px;
    max-height: var(--resources-period-collapsed-height, 40px);
}

.resources-page__period-shell.is-expanded .resources-page__period-panel {
    max-height: var(--resources-period-expanded-height, 240px);
}

.resources-page__period-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 116px;
    min-height: 34px;
    padding: 7px 18px;
    border: 1px solid #c7d0e1;
    border-radius: 8px;
    background: #f6f8fd;
    color: #6d7382;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
    transition: 0.2s ease;
    text-decoration: none;
}

.resources-page__period-pill.is-active {
    border-color: #2f3b63;
    background: #2f3b63;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(47, 59, 99, 0.16);
}

.resources-page__period-pill:hover,
.resources-page__period-pill:focus-visible {
    border-color: #2f3b63;
    background: #2f3b63;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(47, 59, 99, 0.16);
}

.resources-page__period-toggle {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex: 0 0 auto;
    min-width: 68px;
    height: 34px;
    padding: 0 12px;
    border: 1px solid #c7d0e1;
    border-radius: 8px;
    background: #ffffff;
    color: #6d7382;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
}

.resources-page__period-shell.is-collapsible .resources-page__period-toggle {
    display: inline-flex;
}

.resources-page__period-toggle-icon {
    position: relative;
    width: 10px;
    height: 10px;
}

.resources-page__period-toggle-icon::before,
.resources-page__period-toggle-icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    background: #7a8090;
    transform: translate(-50%, -50%);
}

.resources-page__period-toggle-icon::before {
    width: 10px;
    height: 1.5px;
}

.resources-page__period-toggle-icon::after {
    width: 1.5px;
    height: 10px;
    transition: opacity 0.2s ease;
}

.resources-page__period-toggle[aria-expanded="true"]
    .resources-page__period-toggle-icon::after {
    opacity: 0;
}

@media (max-width: 991px) {
    .resources-page {
        /* margin-top: -80px; */
    }

    .resources-page .container {
        padding-left: 18px;
        padding-right: 18px;
    }

    .resources-page__subnav {
        padding: 8px 0;
    }

    .resources-page__subnav-list {
        justify-content: flex-start;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-top: 0;
        padding-bottom: 1px;
    }

    .resources-page__subnav-list::-webkit-scrollbar {
        display: none;
    }

    .resources-page__subnav-link {
        flex: 0 0 auto;
        min-width: auto;
        padding: 7px 14px;
    }

    .resources-page__subnav-link + .resources-page__subnav-link::before {
        left: -3px;
        height: 20px;
    }

    .resources-page__period-track {
        gap: 8px;
    }
}

@media (max-width: 767.98px) {
    .resources-page {
        /* margin-top: -52px; */
    }

    .resources-page .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .resources-page__subnav {
        padding: 8px 0;
    }

    .resources-page__subnav-list {
        padding-top: 0;
    }

    .resources-page__subnav-link {
        gap: 6px;
        font-size: 0.85rem;
        padding: 6px 12px;
        margin: 0 3px;
    }

    .resources-page__subnav-link + .resources-page__subnav-link::before {
        left: -2px;
        height: 18px;
    }

    .resources-page__subnav-icon {
        width: 13px;
        height: 13px;
    }

    .resources-page__periods {
        padding-top: 22px;
    }

    .resources-page__period-shell {
        max-width: none;
    }

    .resources-page__period-panel {
        width: 100%;
    }

    .resources-page__period-shell.is-collapsible .resources-page__period-panel {
        padding-right: 74px;
    }

    .resources-page__period-pill {
        flex: 0 0 auto;
        min-width: auto;
        padding: 7px 16px;
    }

    .resources-page__period-track {
        justify-content: flex-start;
    }
}

p {
    color: var(--color-353535);
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.8;
}

.w-fit {
    width: fit-content;
}

.text-large-plus {
    font-size: 1.5rem !important;
}

.text-large {
    font-size: 1.25rem !important;
}

.text-medium {
    font-size: 1.1rem !important;
}

.text-normal {
    font-size: 1rem !important;
}

.text-small-normal {
    font-size: 0.85rem !important;
}

.text-small {
    font-size: 0.75rem !important;
}

.text-smaller {
    font-size: 0.625rem !important;
}

.line-height-1-8 {
    line-height: 1.8 !important;
}

.line-height-high {
    line-height: 1.8 !important;
}

.line-height-higher {
    line-height: 2 !important;
}

.letter-spacing-2 {
    letter-spacing: 2px !important;
}

.letter-spacing-3 {
    letter-spacing: 3px !important;
}

.letter-spacing-4 {
    letter-spacing: 4px !important;
}

.border-radius-30 {
    border-radius: 30px !important;
}

.text-353535 {
    color: var(--color-353535);
}

.text-f79a06 {
    color: var(--color-f79a06);
}

#hero .item1,
#hero .item2,
#hero .item3 {
    background-color: #fff;
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    /* width: 100vw; */
}

#hero .item1 {
    background-image: url(../images/00-hp/banner_624.jpg);
}
#hero .item2 {
    background-image: url(../images/03/banner_run624.jpg);
}
#hero .item3 {
    background-image: url(../images/00-hp/banner_624.jpg);
}

@media (max-width: 768px) {
    #hero .item1,
    #hero .item2,
    #hero .item3 {
        height: var(--banner-ratio-624);
        /* height: 100vw; 以正方形顯示 */
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    #hero .item1,
    #hero .item2,
    #hero .item3 {
        height: var(--banner-ratio-1024);
    }
}

@media (min-width: 1024px) and (max-width: 1280px) {
    #hero .item1,
    #hero .item2,
    #hero .item3 {
        height: var(--banner-ratio-1280);
    }
}

@media (min-width: 1280px) and (max-width: 1440px) {
    #hero .item1,
    #hero .item2,
    #hero .item3 {
        height: var(--banner-ratio-1440);
    }
}

@media (min-width: 1440px) {
    #hero .item1,
    #hero .item2,
    #hero .item3 {
        height: var(--banner-ratio-1920);
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    #hero .item1 {
        background-image: url(../images/00-hp/banner_1024.jpg);
    }
    #hero .item2 {
        background-image: url(../images/03/banner_run1024.jpg);
        height: calc(100vw * (624 / 1024)) !important;
    }
    #hero .item3 {
        background-image: url(../images/00-hp/banner_1024.jpg);
    }
}

@media (min-width: 1024px) and (max-width: 1280px) {
    #hero .item1 {
        background-image: url(../images/00-hp/banner_1280.jpg);
    }
    #hero .item2 {
        background-image: url(../images/03/banner_run1280.jpg);
        height: calc(100vw * (512 / 1280)) !important;
    }
    #hero .item3 {
        background-image: url(../images/00-hp/banner_1280.jpg);
    }
}

@media (min-width: 1280px) and (max-width: 1440px) {
    #hero .item1 {
        background-image: url(../images/00-hp/banner_1440.jpg);
    }
    #hero .item2 {
        background-image: url(../images/03/banner_run1440.jpg);
        height: calc(100vw * (512 / 1440)) !important;
    }
    #hero .item3 {
        background-image: url(../images/00-hp/banner_1440.jpg);
    }
}

@media (min-width: 1440px) {
    #hero .item1 {
        background-image: url(../images/00-hp/banner_1920.jpg);
    }
    #hero .item2 {
        background-image: url(../images/03/banner_run1920.jpg);
        height: calc(100vw * (512 / 1920)) !important;
    }
    #hero .item3 {
        background-image: url(../images/00-hp/banner_1920.jpg);
    }
}

/* ====== Navbar scrolled — frosted glass / 導覽列玻璃霧面 ====== */
.navbar.scrolled {
    background-color: rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(14px) saturate(180%);
    -webkit-backdrop-filter: blur(14px) saturate(180%);
    box-shadow: 0 1px 12px rgba(0, 0, 0, 0.06);
}

/* ====== Navbar logo RWD / 導覽列 Logo 響應式 ====== */
.navbar-brand {
    padding: 0;
}
.navbar-brand img {
    height: 54px;
    width: auto;
    display: block;
}

/* ====== Desktop Submenu / 電腦版子選單 ====== */
.navbar-nav .nav-link {
    display: flex;
    align-items: center;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--color-353535);
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .nav-link:focus,
.navbar-nav .nav-link:active {
    color: var(--color-7590dd) !important;
}

.nav-item-dropdown {
    position: relative;
    display: flex;
    justify-content: center;
}

.nav-submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-45%);
    list-style: none;
    margin: 0;
    padding: 5px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    white-space: nowrap;
    z-index: 1050;
}

.nav-item-dropdown:hover > .nav-submenu {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.nav-submenu li a {
    display: block;
    padding: 8px 20px;
    border-radius: 10px;
    color: var(--color-353535);
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 500;
    letter-spacing: 0.03em;
    transition: all 0.25s ease;
}

.nav-submenu li a:hover {
    background: linear-gradient(to right, #7590dd, #b8afff);
    color: #fff;
}

/* ====== Mobile Offcanvas Navigation / 手機版導覽抽屜 ====== */
.offcanvas#offcanvasNavbar {
    background: #f3f3f1;
    border-left: 0;
    box-shadow: -10px 0 30px rgba(0, 0, 0, 0.08);
}

.offcanvas#offcanvasNavbar .offcanvas-header {
    justify-content: flex-end;
    padding: 16px 22px 8px;
}

.offcanvas#offcanvasNavbar .offcanvas-body {
    display: flex;
    flex-direction: column;
    padding: 18px 34px 36px;
}

.offcanvas#offcanvasNavbar .offcanvas-close {
    width: auto;
    height: auto;
    color: #e49a32;
    font-size: 2.5rem;
    line-height: 1;
}

.offcanvas#offcanvasNavbar .offcanvas-close span {
    display: block;
    transform: translateY(-2px);
}

.hp-mobile-nav {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.hp-mobile-nav__group,
.hp-mobile-nav .nav-item {
    list-style: none;
}

.hp-mobile-nav__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: #424242;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0.02em;
    text-align: left;
    outline: 0;
    box-shadow: none;
    appearance: none;
    -webkit-appearance: none;
}

.hp-mobile-nav__toggle:hover,
.hp-mobile-nav__toggle:focus,
.hp-mobile-nav__toggle:active,
.hp-mobile-nav__toggle:focus-visible {
    border: 0;
    outline: 0;
    box-shadow: none;
    background: transparent;
}

.hp-mobile-nav__chevron {
    flex: 0 0 auto;
    width: 11px;
    height: 11px;
    margin-left: 12px;
    border-right: 2.5px solid #e49a32;
    border-bottom: 2.5px solid #e49a32;
    transform: rotate(-135deg);
    transition: transform 0.25s ease;
}

.hp-mobile-nav__toggle.collapsed .hp-mobile-nav__chevron {
    transform: rotate(45deg);
}

.hp-mobile-nav__collapse {
    padding-top: 8px;
}

.hp-mobile-nav__submenu {
    margin: 0;
    padding: 0 0 0 18px;
    margin-left: 9px;
    border-left: 3px solid #d7d4ce;
}

.hp-mobile-nav__submenu li {
    list-style: none;
}

.offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link,
.offcanvas#offcanvasNavbar .hp-mobile-nav__link {
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
    color: #585858;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.01em;
    text-decoration: none;
}

.offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link {
    color: #6e6e6e;
    font-size: 18px;
}

.offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link:hover,
.offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link:focus,
.offcanvas#offcanvasNavbar .hp-mobile-nav__link:hover,
.offcanvas#offcanvasNavbar .hp-mobile-nav__link:focus {
    color: #424242;
}

.hp-mobile-nav__actions {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 28px;
}

.hp-mobile-nav__action {
    display: block;
}

.hp-mobile-nav__action img {
    display: block;
    width: 120px;
    max-width: 120px;
}

/* ==========================================================
   Steps + About — Combined Section
   ========================================================== */

/* Parent wrapper — overlaps hero, unified gradient bg */
.hp-main {
    position: relative;
    z-index: 2;
    margin-top: -60px;
    padding: 0 20px;
}

/* White card */
.hp-steps__card {
    position: relative;
    background: transparent;
    padding: 46px 50px 50px;
    border-radius: 22px 22px 0 0;
    max-width: 1320px;
    margin: 0 auto;
    isolation: isolate;
}

/* White background layer — renders ABOVE shadow, BELOW content */
.hp-steps__card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #fff;
    border-radius: inherit;
    z-index: -1;
}

/* Shadow layer — mask fades shadow from top→bottom */
.hp-steps__card-shadow {
    position: absolute;
    inset: -40px;
    pointer-events: none;
    z-index: -2;
    -webkit-mask-image: linear-gradient(
        to bottom,
        black 0%,
        black 35%,
        transparent 75%
    );
    mask-image: linear-gradient(
        to bottom,
        black 0%,
        black 35%,
        transparent 75%
    );
}
.hp-steps__card-shadow::before {
    content: "";
    position: absolute;
    inset: 40px;
    border-radius: 22px 22px 0 0;
    box-shadow: 0px 4px 28px rgba(14, 5, 10, 0.13);
}

/* Title block */
.hp-steps__head {
    margin-bottom: 46px;
}

.hp-steps__title {
    font-size: 26px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 21px;
    letter-spacing: 0.04em;
}
.hp-steps__title--blue {
    color: #7590dd;
}
.hp-steps__title--orange {
    color: #f79a06;
}

.hp-steps__subtitle {
    font-size: 15px;
    color: #5e5e5e;
    margin-bottom: 0;
    letter-spacing: 0.02em;
}

/* 7-step icon grid */
.hp-steps__grid {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 900px;
    margin: 0 auto;
    padding-top: 10px;
    margin-bottom: 40px;
}

.hp-steps__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 0 0 auto;
    width: calc(100% / 7);
    position: relative;
    z-index: 2;
}

.hp-steps__item img {
    width: 92px;
    height: 92px;
    object-fit: contain;
    padding: 16px;
    margin-bottom: 10px;
    border-radius: 50% !important;
    background: #fff;
    border: 1px solid #eaeaea;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.hp-steps__item span {
    font-size: 14px;
    font-weight: 500;
    color: #353535;
    letter-spacing: 0.06em;
    white-space: nowrap;
}

/* Wave: high(1,3,5,7)=even children, low(2,4,6)=odd children */
/* wave-line is child 1, so items are children 2-8 */
.hp-steps__item:nth-child(even) {
    transform: translateY(0);
}
.hp-steps__item:nth-child(odd) {
    transform: translateY(55px);
}

/* Wavy dashed line — JS-generated arcs between icon borders */
.hp-steps__wave-line {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
}

/* ==========================================================
   About Section (inside .hp-main)
   ========================================================== */
.hp-about {
    padding: 44px 0 80px;
}

/* White card — inverted (bottom rounded, top flat) */
.hp-about__card {
    position: relative;
    /* background: transparent; */
    padding: 50px;
    border-radius: 0 0 22px 22px;
    max-width: 1320px;
    margin: 0 auto;
    isolation: isolate;
    /* background: linear-gradient(to bottom, #ffffff 0%, #fff8f3 40%); */
}

/* White background layer — renders ABOVE shadow, BELOW content */
.hp-about__card::before {
    content: "";
    position: absolute;
    inset: 0;
    /* background: #fff; */
    background: linear-gradient(to bottom, #ffffff 0%, #fff8f3 40%);
    border-radius: inherit;
    z-index: -1;
}

/* Shadow layer — mask fades shadow from bottom→top (inverted) */
.hp-about__card-shadow {
    position: absolute;
    inset: -40px;
    pointer-events: none;
    z-index: -2;
    -webkit-mask-image: linear-gradient(
        to bottom,
        transparent 25%,
        black 65%,
        black 100%
    );
    mask-image: linear-gradient(
        to bottom,
        transparent 25%,
        black 65%,
        black 100%
    );
}
.hp-about__card-shadow::before {
    content: "";
    position: absolute;
    inset: 40px;
    border-radius: 0 0 22px 22px;
    /* box-shadow: 0px 4px 28px rgba(14, 5, 10, 0.13); */
}

.hp-about__title {
    font-size: 32px;
    font-weight: 700;
    color: #f79a06;
    letter-spacing: 0.04em;
    margin-bottom: 40px;
    line-height: 1.4;
}

.hp-about__content {
    display: flex;
    align-items: center;
    gap: 60px;
}

.hp-about__pic {
    flex: 0 0 45%;
    max-width: 45%;
}

.hp-about__pic img {
    width: 100%;
    height: auto;
    border-radius: 0 !important;
}

.hp-about__text {
    flex: 1;
}

.hp-about__text p {
    font-size: 17px;
    line-height: 1.8;
    color: #5e5e5e;
    margin-bottom: 0;
}

.hp-about__text--spacer {
    margin-top: 24px !important;
}

.hp-about__text p.hp-about__text--bold {
    font-weight: 700;
    font-size: 22px !important;
    color: #f79a06;
}

/* ==========================================================
   RWD — Tablet (≤991px)
   ========================================================== */
@media (max-width: 991px) {
    .navbar-brand img {
        height: 46px;
    }
    .offcanvas#offcanvasNavbar {
        width: min(86vw, 252px) !important;
    }
    .hp-main {
        margin-top: -40px;
        padding: 0 16px;
    }
    .hp-steps__card {
        padding: 36px 32px 40px;
        border-radius: 18px 18px 0 0;
    }
    .hp-steps__card-shadow::before {
        border-radius: 18px 18px 0 0;
    }
    .hp-steps__head {
        margin-bottom: 32px;
    }
    .hp-steps__title {
        font-size: 22px;
        margin-bottom: 16px;
    }
    .hp-steps__subtitle {
        font-size: 14px;
    }
    .hp-steps__item img {
        width: 72px;
        height: 72px;
        padding: 12px;
    }
    .hp-steps__item span {
        font-size: 13px;
    }
    .hp-steps__grid {
        max-width: 100%;
        margin-bottom: 30px;
    }
    .hp-steps__item:nth-child(odd) {
        transform: translateY(40px);
    }
    /* wave-line: JS handles SVG re-render on resize */
    .hp-about {
        padding: 36px 0 50px;
    }
    .hp-about__card {
        padding: 40px 32px;
        border-radius: 0 0 18px 18px;
    }
    .hp-about__card-shadow::before {
        border-radius: 0 0 18px 18px;
    }
    .hp-about__title {
        font-size: 26px;
        margin-bottom: 28px;
    }
    .hp-about__content {
        gap: 40px;
    }
    .hp-about__pic {
        flex: 0 0 44%;
        max-width: 44%;
    }
    .hp-about__text p {
        font-size: 15px;
    }
    .hp-about__text p.hp-about__text--bold {
        font-size: 18px !important;
    }
}

/* ==========================================================
   RWD — Mobile (≤767px)
   ========================================================== */
@media (max-width: 767px) {
    .navbar-brand img {
        height: 40px;
    }
    .offcanvas#offcanvasNavbar .offcanvas-header {
        padding: 14px 22px 6px;
    }
    .offcanvas#offcanvasNavbar .offcanvas-body {
        padding: 18px 34px 32px;
    }
    .hp-mobile-nav {
        gap: 13px;
    }
    .hp-mobile-nav__toggle {
        font-size: 19px;
    }
    .offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link,
    .offcanvas#offcanvasNavbar .hp-mobile-nav__link {
        font-size: 18px;
    }
    .offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link {
        font-size: 17px;
    }
    .hp-main {
        margin-top: -30px;
        padding: 0 12px;
    }
    .hp-steps__card {
        padding: 28px 20px 24px;
        border-radius: 16px 16px 0 0;
    }
    .hp-steps__card-shadow::before {
        border-radius: 16px 16px 0 0;
    }
    .hp-steps__head {
        margin-bottom: 18px;
    }
    .hp-steps__title {
        font-size: 18px;
        margin-bottom: 12px;
    }
    .hp-steps__subtitle {
        font-size: 13px;
    }
    .hp-steps__grid {
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px 0;
        padding-top: 0;
        margin-bottom: 0;
    }
    .hp-steps__item {
        width: calc(100% / 4);
    }
    .hp-steps__item img {
        width: 56px;
        height: 56px;
        padding: 10px;
    }
    .hp-steps__item span {
        font-size: 12px;
    }
    .hp-steps__item:nth-child(odd),
    .hp-steps__item:nth-child(even) {
        transform: none;
    }
    .hp-steps__wave-line {
        display: none;
    }
    .hp-about {
        padding: 28px 0 40px;
    }
    .hp-about__card {
        padding: 28px 20px;
        border-radius: 0 0 16px 16px;
    }
    .hp-about__card-shadow::before {
        border-radius: 0 0 16px 16px;
    }
    .hp-about__title {
        font-size: 22px;
        margin-bottom: 24px;
    }
    .hp-about__content {
        flex-direction: column;
        gap: 24px;
    }
    .hp-about__pic {
        flex: 0 0 auto;
        max-width: 80%;
        margin: 0 auto;
    }
    .hp-about__text {
        text-align: center;
    }
    .hp-about__text p {
        font-size: 14px;
        line-height: 1.9;
    }
    .hp-about__text p.hp-about__text--bold {
        font-size: 18px !important;
    }
}

/* ==========================================================
   RWD — Small Mobile (≤480px)
   ========================================================== */
@media (max-width: 480px) {
    .navbar-brand img {
        height: 34px;
    }
    .offcanvas#offcanvasNavbar {
        width: min(88vw, 236px) !important;
    }
    .offcanvas#offcanvasNavbar .offcanvas-body {
        padding: 12px 34px 28px;
    }
    .hp-mobile-nav__toggle {
        font-size: 17px;
    }
    .offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link,
    .offcanvas#offcanvasNavbar .hp-mobile-nav__link {
        font-size: 17px;
    }
    .offcanvas#offcanvasNavbar .hp-mobile-nav__submenu .nav-link {
        font-size: 16px;
    }
    .hp-mobile-nav__actions {
        margin-top: 24px;
    }
    .hp-steps__title {
        font-size: 16px;
    }
    .hp-steps__item {
        width: calc(100% / 3);
    }
    .hp-about__title {
        font-size: 18px;
    }
    .hp-about__pic {
        max-width: 90%;
    }
    .hp-about__text p {
        font-size: 13px;
    }
}

/* ==========================================================
   HP Cases — 成功案例卡片區塊
   ========================================================== */
.hp-cases {
    background: linear-gradient(to bottom, #ffffff, #f6f6f6);
    padding: 80px 0 70px;
}

/* --- Section Header --- */
.hp-cases__header {
    margin-bottom: 48px;
}
.hp-cases__heading {
    font-size: 28px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 10px;
}
.hp-cases__subtitle {
    font-size: 16px;
    color: #888888;
    margin: 0;
}

/* --- Card --- */
.hp-cases__card {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 2px 6px 24px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}
.hp-cases__card:hover {
    transform: translateY(-4px);
    box-shadow: 2px 10px 32px rgba(0, 0, 0, 0.13);
}

/* --- Card Image --- */
.hp-cases__img {
    overflow: hidden;
    aspect-ratio: 4 / 3;
    flex-shrink: 0;
}
.hp-cases__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}
.hp-cases__card:hover .hp-cases__img img {
    transform: scale(1.04);
}

/* --- Card Body --- */
.hp-cases__body {
    padding: 28px 28px 32px;
    text-align: center;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.hp-cases__title {
    font-size: 20px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 14px;
    line-height: 1.4;
}

.hp-cases__desc {
    font-size: 15px;
    line-height: 1.75;
    color: #666666;
    margin: 0 0 24px;
    flex: 1;
}

/* --- Divider with 運用服務 label (centered, splitting line) --- */
.hp-cases__divider {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}
.hp-cases__divider::before,
.hp-cases__divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e8c99b;
}
.hp-cases__divider-label {
    color: #f79a06;
    font-weight: 700;
    font-size: 14px;
    white-space: nowrap;
    letter-spacing: 0.05em;
}

/* --- Tags / Pills --- */
.hp-cases__tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}
.hp-cases__tag {
    display: inline-block;
    padding: 5px 16px;
    border: 1px solid #f79a06;
    border-radius: 50px;
    color: #f79a06;
    font-size: 13px;
    line-height: 1.4;
    white-space: nowrap;
    transition:
        background 0.2s ease,
        color 0.2s ease;
}
.hp-cases__tag:hover {
    background: #f79a06;
    color: #ffffff;
}

/* --- CTA Button --- */
.hp-cases__cta {
    text-align: center;
    margin-top: 28px;
}
.hp-cases__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 40px;
    background: #f79a06;
    color: #ffffff;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    letter-spacing: 0.03em;
    transition:
        background 0.3s ease,
        transform 0.2s ease;
}
.hp-cases__btn:hover {
    background: #e68a00;
    color: #ffffff;
    transform: translateY(-2px);
}
.hp-cases__btn-arrow {
    font-size: 22px;
    line-height: 1;
}

/* --- HP Cases RWD — Tablet (≤991px) --- */
@media (max-width: 991px) {
    .hp-cases {
        padding: 60px 0 50px;
    }
    .hp-cases__header {
        margin-bottom: 36px;
    }
    .hp-cases__heading {
        font-size: 24px;
    }
    .hp-cases__body {
        padding: 22px 22px 28px;
    }
    .hp-cases__title {
        font-size: 18px;
    }
    .hp-cases__desc {
        font-size: 14px;
    }
}

/* --- HP Cases RWD — Mobile (≤767px) --- */
@media (max-width: 767px) {
    .hp-cases {
        padding: 48px 0 40px;
    }
    .hp-cases__header {
        margin-bottom: 28px;
    }
    .hp-cases__heading {
        font-size: 22px;
    }
    .hp-cases__subtitle {
        font-size: 14px;
    }
    .hp-cases__body {
        padding: 20px 20px 24px;
    }
    .hp-cases__title {
        font-size: 17px;
    }
    .hp-cases__desc {
        font-size: 14px;
        margin-bottom: 20px;
    }
    .hp-cases__cta {
        margin-top: 36px;
    }
    .hp-cases__btn {
        padding: 12px 32px;
        font-size: 15px;
    }
}

/* --- HP Cases RWD — Small Mobile (≤480px) --- */
@media (max-width: 480px) {
    .hp-cases__tag {
        padding: 4px 12px;
        font-size: 12px;
    }
}

/* ==========================================================
   HP Challenges — 在地真相挑戰區塊
   ========================================================== */
.hp-challenges {
    background: #fff;
    padding: 80px 0 70px;
}

/* --- Section Header --- */
.hp-challenges__header {
    margin-bottom: 32px;
}
.hp-challenges__heading {
    font-size: 30px;
    font-weight: 700;
    color: #3b6cb5;
    margin: 0 0 16px;
    line-height: 1.4;
}
.hp-challenges__heading--accent {
    color: #e8652e;
}
.hp-challenges__subtitle {
    font-size: 16px;
    color: #555555;
    margin: 0;
    line-height: 1.8;
}

/* --- CTA Button --- */
.hp-challenges__cta {
    margin-bottom: 44px;
    margin-top: 8px;
}
.hp-challenges__btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 36px;
    background: #313a55;
    color: #ffffff;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    letter-spacing: 0.03em;
    transition:
        background 0.3s ease,
        transform 0.2s ease;
}
.hp-challenges__btn:hover {
    background: #252d44;
    color: #ffffff;
    transform: translateY(-2px);
}
.hp-challenges__btn-icon {
    width: 22px;
    height: 22px;
    object-fit: contain;
    flex-shrink: 0;
}

/* --- Challenge Cards --- */
.hp-challenges__card {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 28px 28px;
    background: #f6f8fc;
    border: 1px solid #c6cfe9;
    border-radius: 14px;
    height: 100%;
    transition:
        box-shadow 0.3s ease,
        transform 0.2s ease;
}
.hp-challenges__card:hover {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    transform: translateY(-2px);
}

/* --- Card Icon --- */
.hp-challenges__icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
}
.hp-challenges__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

/* --- Card Text --- */
.hp-challenges__text {
    flex: 1;
    min-width: 0;
}
.hp-challenges__card-title {
    font-size: 18px;
    font-weight: 700;
    color: #353535;
    margin: 0 0 10px;
    line-height: 1.4;
}
.hp-challenges__card-desc {
    font-size: 15px;
    line-height: 1.75;
    color: #666666;
    margin: 0;
}

/* --- HP Challenges RWD — Tablet (≤991px) --- */
@media (max-width: 991px) {
    .hp-challenges {
        padding: 60px 0 50px;
    }
    .hp-challenges__heading {
        font-size: 26px;
    }
    .hp-challenges__card {
        padding: 24px 22px;
    }
    .hp-challenges__icon {
        width: 52px;
        height: 52px;
    }
    .hp-challenges__card-title {
        font-size: 17px;
    }
    .hp-challenges__card-desc {
        font-size: 14px;
    }
}

/* --- HP Challenges RWD — Mobile (≤767px) --- */
@media (max-width: 767px) {
    .hp-challenges {
        padding: 48px 0 40px;
    }
    .hp-challenges__header {
        margin-bottom: 24px;
    }
    .hp-challenges__heading {
        font-size: 22px;
    }
    .hp-challenges__subtitle {
        font-size: 14px;
    }
    .hp-challenges__btn {
        padding: 12px 28px;
        font-size: 15px;
    }
    .hp-challenges__cta {
        margin-bottom: 32px;
    }
    .hp-challenges__card {
        padding: 20px 18px;
        gap: 16px;
    }
    .hp-challenges__icon {
        width: 48px;
        height: 48px;
    }
    .hp-challenges__card-title {
        font-size: 16px;
    }
    .hp-challenges__card-desc {
        font-size: 13px;
    }
}

/* =========================================
   HP Subsidy — 花蓮在地補助資訊
   ========================================= */
.hp-subsidy {
    background: linear-gradient(to bottom, #fff9f0, #fff 85%);
    padding: 80px 0 90px;
}

.hp-subsidy__header {
    margin-bottom: 20px;
}

.hp-subsidy__heading {
    font-size: 32px;
    font-weight: 700;
    color: #353535;
    margin-bottom: 12px;
}

.hp-subsidy__subtitle {
    font-size: 16px;
    color: #5e5e5e;
    line-height: 1.7;
}

/* CTA Button — outlined pill */
.hp-subsidy__cta {
    margin-bottom: 44px;
}

.hp-subsidy__btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 30px;
    border: 1.5px solid #f5a100;
    border-radius: 10px;
    color: #f5a100;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    background: #fff;
    transition: all 0.3s ease;
}

.hp-subsidy__btn:hover {
    background: #f5a100;
    color: #fff;
}

.hp-subsidy__btn-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    /* border: 1.5px solid currentColor; */
    border-radius: 50%;
    font-size: 14px;
    line-height: 1;
    transition: inherit;
}

/* Card — double border */
.hp-subsidy__card-outer {
    border: 5px solid #ffeed2;
    border-radius: 20px;
    padding: 0px;
    background: #fff;
    height: 100%;
}

.hp-subsidy__card {
    display: flex;
    border: 2px solid #f5a100;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    height: 100%;
}

/* Card image */
.hp-subsidy__card-img-wrap {
    width: 40%;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    /* background: #fffbf5; */
}

.hp-subsidy__card-img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

/* Card body */
.hp-subsidy__card-body {
    display: flex;
    flex-direction: column;
    padding: 15px 12px 15px 15px;
    flex: 1;
    min-width: 0;
}

.hp-subsidy__card-title {
    font-size: 20px;
    font-weight: 700;
    color: #353535;
    margin-bottom: 12px;
    line-height: 1.4;
}

.hp-subsidy__card-desc {
    font-size: 15px;
    color: #5e5e5e;
    line-height: 1.7;
    margin-bottom: 12px;
}

/* Tags */
.hp-subsidy__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: auto;
}

.hp-subsidy__tag {
    display: inline-block;
    padding: 3px 12px;
    border: 1px solid #f2f7f9;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 500;
    color: #989898;
    background: #f2f7f9;
}

/* "了解詳情" link */
.hp-subsidy__link {
    align-self: flex-end;
    color: #f5a100;
    font-size: 15px;
    font-weight: 500;
    /* font-style: italic; */
    text-decoration: none;
    margin-top: 12px;
    transition: color 0.2s ease;
    border-bottom: 1px solid #f5a100;
}

.hp-subsidy__link:hover {
    color: #e09000;
}

.hp-subsidy__link-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    /* border: 1.5px solid currentColor; */
    border-radius: 50%;
    font-size: 13px;
    font-style: normal;
    margin-left: 4px;
    vertical-align: middle;
    line-height: 1;
}

/* --- HP Subsidy RWD — Tablet (≤991px) --- */
@media (max-width: 991px) {
    .hp-subsidy {
        padding: 60px 0 70px;
    }
    .hp-subsidy__heading {
        font-size: 28px;
    }
    .hp-subsidy__card-body {
        padding: 20px 18px 18px 12px;
    }
    .hp-subsidy__card-title {
        font-size: 18px;
    }
    .hp-subsidy__card-desc {
        font-size: 14px;
    }
}

/* --- HP Subsidy RWD — Mobile (≤767px) --- */
@media (max-width: 767px) {
    .hp-subsidy {
        padding: 48px 0 56px;
    }
    .hp-subsidy__heading {
        font-size: 24px;
    }
    .hp-subsidy__subtitle {
        font-size: 14px;
    }
    .hp-subsidy__btn {
        padding: 10px 24px;
        font-size: 14px;
    }
    .hp-subsidy__card {
        flex-direction: column;
    }
    .hp-subsidy__card-img-wrap {
        width: 100%;
        max-height: 200px;
        padding: 20px;
    }
    .hp-subsidy__card-body {
        padding: 20px;
    }
    .hp-subsidy__card-title {
        font-size: 17px;
    }
    .hp-subsidy__card-desc {
        font-size: 13px;
    }
}

/* =============================================
   HP Services — 疾速開店方案
   ============================================= */

.hp-services {
    padding: 80px 0 90px;
    background: linear-gradient(to bottom, #ffffff 0%, #f3f7f9 25%);
    /* border-bottom: 1px solid #e8ecf4; */
}

/* Section Header */
.hp-services__header {
    margin-bottom: 48px;
}

.hp-services__title {
    font-size: 32px;
    font-weight: 700;
    color: #2d2d2d;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.hp-services__title-icon {
    width: 32px;
    height: auto;
    flex-shrink: 0;
}

.hp-services__subtitle {
    font-size: 16px;
    color: #6b7280;
    margin-bottom: 0;
    letter-spacing: 0.3px;
}

/* Service Cards */
.hp-services__card {
    border: 1px solid #e8ecf4;
    border-radius: 20px;
    overflow: hidden;
    height: 100%;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.hp-services__card:hover {
    transform: translateY(-4px);
    border: 1px solid #f5a100 !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
}

/* Card Image */
.hp-services__card-img-wrap {
    padding: 20px 20px 0;
}

/* .hp-services__card-img-wrap--featured {
  padding: 16px 16px 0;
} */

.hp-services__card-img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 12px;
    display: block;
}

/* .hp-services__card-img-wrap--featured .hp-services__card-img {
  border: 2.5px solid #F5A100;
  border-radius: 14px;
} */

/* Card Body */
.hp-services__card-body {
    padding: 24px 20px 32px;
    text-align: center;
}

.hp-services__card-title {
    font-size: 20px;
    font-weight: 700;
    color: #2d2d2d;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.hp-services__card-icon {
    width: 22px;
    height: 22px;
    object-fit: contain;
    flex-shrink: 0;
}

.hp-services__card-desc {
    font-size: 15px;
    color: #6b7280;
    margin-bottom: 0;
    line-height: 1.6;
}

/* RWD — Tablet */
@media (max-width: 991px) {
    .hp-services {
        padding: 60px 0 70px;
    }
    .hp-services__title {
        font-size: 28px;
    }
    .hp-services__header {
        margin-bottom: 36px;
    }
}

/* RWD — Mobile */
@media (max-width: 767px) {
    .hp-services {
        padding: 48px 0 56px;
    }
    .hp-services__title {
        font-size: 24px;
    }
    .hp-services__title-icon {
        width: 26px;
    }
    .hp-services__subtitle {
        font-size: 14px;
    }
    .hp-services__header {
        margin-bottom: 28px;
    }
    .hp-services__card-body {
        padding: 20px 16px 28px;
    }
    .hp-services__card-title {
        font-size: 18px;
    }
    .hp-services__card-desc {
        font-size: 14px;
    }
}

/* =============================================
   HP CTA — 準備好開始您的創業旅程了嗎？
   ============================================= */

.hp-cta {
    position: relative;
    padding: 80px 0 70px;
    overflow: hidden;
    background: #f8f9fb;
}

/* Background storefront illustrations */
.hp-cta__bg {
    position: absolute;
    inset: 0;
    background-image: url("../images/00-hp/start_bg1440.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: invert(1);
    opacity: 0.18;
    pointer-events: none;
}

/* Content */
.hp-cta__content {
    position: relative;
    z-index: 1;
}

.hp-cta__title {
    font-size: 30px;
    font-weight: 700;
    color: #f5a100;
    margin-bottom: 16px;
}

.hp-cta__subtitle {
    font-size: 17px;
    color: #5e5e5e;
    /* margin-bottom: 36px; */
}

/* LINE CTA Button */
.hp-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #06c755;
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    padding: 18px 48px;
    border-radius: 14px;
    text-decoration: none;
    transition:
        background 0.3s ease,
        transform 0.2s ease;
    letter-spacing: 1px;
}

.hp-cta__btn:hover {
    background: #05b34c;
    color: #ffffff;
    transform: translateY(-2px);
}

.hp-cta__btn-icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
}

/* Service Hours */
.hp-cta__hours {
    font-size: 14px;
    color: #8c8c8c;
    margin-top: 32px;
    margin-bottom: 0;
}

/* Responsive bg images */
@media (max-width: 1279px) {
    .hp-cta__bg {
        background-image: url("../images/00-hp/start_bg1024.png");
    }
}
@media (max-width: 767px) {
    .hp-cta__bg {
        background-image: url("../images/00-hp/start_bg640.png");
    }
}

/* RWD — Tablet */
@media (max-width: 991px) {
    .hp-cta {
        padding: 64px 0 56px;
    }
    .hp-cta__title {
        font-size: 26px;
    }
    .hp-cta__btn {
        font-size: 20px;
        padding: 16px 40px;
    }
}

/* RWD — Mobile */
@media (max-width: 767px) {
    .hp-cta {
        padding: 48px 0 44px;
    }
    .hp-cta__title {
        font-size: 22px;
    }
    .hp-cta__subtitle {
        font-size: 15px;
        margin-bottom: 28px;
    }
    .hp-cta__btn {
        font-size: 18px;
        padding: 14px 32px;
        border-radius: 12px;
        gap: 8px;
    }
    .hp-cta__btn-icon {
        width: 24px;
        height: 24px;
    }
    .hp-cta__hours {
        font-size: 13px;
        margin-top: 24px;
    }
}

/* =============================================
   HP Footer
   ============================================= */

.hp-footer {
    position: relative;
    overflow: hidden;
    padding: 0;
    background-color: transparent !important;
    color: #3a3a3a !important;
}

.hp-footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        #e8d0b8 30%,
        #c0bde0 70%,
        transparent
    );
    opacity: 0.6;
    z-index: 1;
}

/* Pastel gradient background */
.hp-footer__bg {
    position: absolute;
    inset: 0;
    background-image: url("../images/00-hp/footer_bg1440.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    pointer-events: none;
}

/* Main content area */
.hp-footer__main {
    position: relative;
    padding: 72px 0 0;
}

/* Logo + Stats */
.hp-footer__brand {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.hp-footer__logo {
    width: 210px;
    height: auto;
}

.hp-footer__stats {
    display: flex;
    gap: 20px;
    font-size: 13px;
    color: #f79a06;
}

.hp-footer__stats strong {
    color: #f79a06;
}

/* Contact Us */
.hp-footer__contact-title {
    font-size: 1.3rem;
    font-weight: 700;
    color: #ffa36b;
    margin-bottom: 14px;
    letter-spacing: 1.5px;
}

.hp-footer__contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #4a4a4a;
    margin-bottom: 10px;
}

.hp-footer__contact-icon {
    width: 22px;
    height: 22px;
    object-fit: contain;
    flex-shrink: 0;
    border-radius: 4px;
}

/* Navigation columns */
.hp-footer__nav-title {
    font-size: 15px;
    font-weight: 700;
    color: #7590dd;
    margin-bottom: 12px;
    text-align: center;
}

.hp-footer__nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.hp-footer__nav-list li {
    margin-bottom: 6px;
    text-align: center;
}

.hp-footer__nav-list a {
    font-size: 14px;
    color: #353535 !important;
    text-decoration: none;
    transition: color 0.2s;
}

.hp-footer__nav-list a:hover {
    color: #f5a100 !important;
}

/* Orange accent links */
.hp-footer__nav-list--accent a {
    color: #7590dd !important;
    font-weight: 500;
}

.hp-footer__nav-list--accent a:hover {
    color: #e08e00 !important;
}

/* Facebook social icon */
.hp-footer__social {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.2s;
}

.hp-footer__social:hover {
    transform: scale(1.08);
}

.hp-footer__social-icon {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Separator line */
.hp-footer__divider {
    border: none;
    border-top: 1px solid #afade1;
    margin: 48px 0 20px;
    opacity: 1;
    position: relative;
}

/* Copyright */
.hp-footer__copyright {
    position: relative;
    text-align: center;
    padding-bottom: 24px;
}

.hp-footer__copyright p {
    font-size: 12px;
    color: #8989d4;
    margin: 0;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

/* Responsive bg images */
@media (max-width: 1279px) {
    .hp-footer__bg {
        background-image: url("../images/00-hp/footer_bg1024.jpg");
    }
}
@media (max-width: 767px) {
    .hp-footer__bg {
        background-image: url("../images/00-hp/footer_bg750.jpg");
    }
}

/* RWD — Tablet */
@media (max-width: 991px) {
    .hp-footer__main {
        padding: 48px 0 0;
    }
    .hp-footer__stats {
        flex-direction: column;
        gap: 4px;
    }
    .hp-footer__social {
        width: 44px;
        height: 44px;
    }
}

/* RWD — Mobile */
@media (max-width: 767px) {
    .hp-footer__main {
        padding: 36px 0 0;
    }
    .hp-footer__logo {
        width: 160px;
    }
    .hp-footer__nav-title {
        text-align: start;
        font-size: 14px;
        margin-bottom: 8px;
    }
    .hp-footer__nav-list li {
        text-align: start;
    }
    .hp-footer__nav-list a {
        font-size: 13px;
    }
    .hp-footer__contact-title {
        font-size: 14px;
    }
    .hp-footer__contact-item {
        font-size: 13px;
    }
    .hp-footer__divider {
        margin: 24px 0 16px;
    }
    .hp-footer__copyright p {
        font-size: 11px;
    }
    .hp-footer__social {
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 768px) {
    .back-to-top {
        bottom: 60px;
    }
    .hp-footer {
        margin-bottom: 45px !important;
    }
}

.social-links-btn-mobile {
    width: 100vw;
    height: 45px;
    z-index: 9999;
}

.s-line-btn {
    background: linear-gradient(to bottom, #99b974 0%, #779850 100%);
    height: 100%;
    /* border-right: 0.5px solid #fff; */
    /* border-left: 0.5px solid #fff; */
}

.s-phone-btn {
    background: linear-gradient(to bottom, #c7a686 0%, #ae7f5f 100%);
    height: 100%;
    /* border-right: 0.5px solid #fff; */
    border-left: 0.5px solid #fff;
}

.s-location-btn {
    background: linear-gradient(to bottom, #ebb260 0%, #e19d3c 100%);
    height: 100%;
    /* border-right: 0.5px solid #fff; */
    border-left: 0.5px solid #fff;
}

.social-links-btn-mobile a {
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    line-height: 50px;
}

.social-links-btn {
    position: fixed;
    z-index: 8;
    /* top: 50%; */
    right: 2rem;
    bottom: 3rem;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
}

.social-links-btn a {
    width: 4rem;
    margin: 0.5rem 0rem;
}

/* ==========================================================
   Packages Page v2
   ========================================================== */

.pkg-page {
    background-color: var(--pkg-bg);
    color: var(--pkg-text);
    font-family: "Noto Sans TC", "Inter", sans-serif;
    padding-bottom: 72px;
    box-shadow: 0 -4px 10px 0 #e1e3f5;
}

.pkg-page .container {
    max-width: 1180px;
    padding-left: 20px;
    padding-right: 20px;
}

.pkg-page a,
.cst-page a {
    text-decoration: none;
}

.pkg-page__subnav,
.svc-page__subnav,
.cst-page__subnav {
    background: linear-gradient(
        90deg,
        #efe5d5 0%,
        #efb24e 14%,
        #f1a220 50%,
        #efb24e 86%,
        #efe5d5 100%
    );
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.65);
    padding: 10px 0;
}

.pkg-page__subnav-list,
.svc-page__subnav-list,
.cst-page__subnav-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.pkg-page__subnav-link,
.svc-page__subnav-link,
.cst-page__subnav-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 84px;
    padding: 6px 14px;
    margin: 0 4px;
    border-radius: 0;
    border: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.94);
    font-size: 0.85rem;
    font-weight: 500;
    line-height: 1;
    transition: 0.2s ease;
}

.pkg-page__subnav-link + .pkg-page__subnav-link::before,
.svc-page__subnav-link + .svc-page__subnav-link::before,
.cst-page__subnav-link + .cst-page__subnav-link::before {
    content: "";
    position: absolute;
    left: -8px;
    top: 50%;
    width: 1px;
    height: 20px;
    background: rgba(255, 255, 255, 0.58);
    transform: translateY(-50%);
}

.pkg-page__subnav-link:hover,
.svc-page__subnav-link:hover,
.cst-page__subnav-link:hover {
    background: #ef9f1d;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 10px;
    color: #ffffff;
    box-shadow: 0 3px 8px rgba(201, 119, 0, 0.18);
}

.pkg-page__subnav-link.is-active,
.svc-page__subnav-link.is-active,
.cst-page__subnav-link.is-active {
    background: #ef9f1d;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 10px;
    color: #ffffff;
    box-shadow: 0 3px 8px rgba(201, 119, 0, 0.18);
}

.pkg-page__subnav-icon,
.svc-page__subnav-icon,
.cst-page__subnav-icon {
    width: 13px;
    height: 13px;
    object-fit: contain;
    filter: brightness(0) invert(1);
    opacity: 0.95;
}

.pkg-page__hero,
.svc-page__hero,
.cst-page__hero {
    padding: 12px 0 8px;
}

.pkg-page__hero-copy,
.svc-page__hero-copy,
.cst-page__hero-copy {
    text-align: center;
}

.pkg-page__hero-eyebrow,
.svc-page__hero-eyebrow,
.cst-page__hero-eyebrow {
    position: relative;
    display: inline-block;
    color: var(--color-f79a06);
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 0.32em;
    padding: 0 22px;
    margin: 0 0 5px;
}

.pkg-page__hero-eyebrow::before,
.pkg-page__hero-eyebrow::after,
.svc-page__hero-eyebrow::before,
.svc-page__hero-eyebrow::after,
.cst-page__hero-eyebrow::before,
.cst-page__hero-eyebrow::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 13px;
    height: 1px;
    background: #e1bc84;
    transform: translateY(-50%);
}

.pkg-page__hero-eyebrow::before,
.svc-page__hero-eyebrow::before,
.cst-page__hero-eyebrow::before {
    left: 0;
}

.pkg-page__hero-eyebrow::after,
.svc-page__hero-eyebrow::after,
.cst-page__hero-eyebrow::after {
    right: 0;
}

.pkg-page__hero-title,
.svc-page__hero-title,
.cst-page__hero-title {
    color: var(--color-f79a06);
    font-size: 1.65rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    margin: 0;
    line-height: 1.15;
}

.pkg-page__hero-text,
.svc-page__hero-text,
.cst-page__hero-text {
    color: #7a7a7a;
    font-size: 13px;
    font-weight: 500;
    margin: 8px 0 0;
    letter-spacing: 0.03em;
}

.pkg-page__filter,
.svc-page__filter {
    padding-top: 10px;
}

.pkg-page__filter-bar,
.svc-page__filter-bar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    flex-wrap: wrap;
    background: #e9edf0;
    border-radius: 8px;
    padding: 5px;
}

.pkg-page__filter-pill,
.svc-page__filter-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    padding: 6px 14px;
    border-radius: 6px;
    color: #7d828a;
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    transition: 0.2s ease;
}

.pkg-page__filter-pill:hover,
.svc-page__filter-pill:hover {
    color: #353535;
}

.pkg-page__filter-pill.is-active,
.svc-page__filter-pill.is-active {
    background: #ffffff;
    color: #353535;
    border: 1px solid var(--color-f79a06);
    box-shadow: 0 2px 8px rgba(90, 99, 110, 0.08);
}

.pkg-page__filter-icon,
.svc-page__filter-icon {
    width: 17px;
    height: 17px;
    object-fit: contain;
    opacity: 0.58;
}

.pkg-page__section {
    padding-top: 36px;
}

.pkg-page__section-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 15px;
}

.pkg-page__section-heading--plans {
    margin-bottom: 18px;
}

.pkg-page__section-title-wrap,
.svc-page__heading-wrap,
.cst-page__section-title-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.pkg-page__section-icon,
.svc-page__heading-icon,
.cst-page__section-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
    flex: 0 0 auto;
}

.pkg-page__section-title,
.svc-page__heading-title,
.cst-page__section-title {
    color: #3f3f3f;
    font-size: 22px;
    font-weight: 700;
    margin: 0;
    letter-spacing: 0.02em;
    line-height: 1.2;
}

.pkg-page__section-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 31px;
    padding: 0 15px;
    border: 1px solid #ffbace;
    border-radius: 10px;
    background: #ffe4ec;
    color: #ee316a;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
}

.pkg-page__combo-card {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 178px;
    background: var(--pkg-pink-soft);
    border: 1px solid var(--pkg-pink-border);
    border-radius: 18px;
    padding: 14px;
}

.pkg-page__combo-media {
    flex: 0 0 43%;
    max-width: 43%;
}

.pkg-page__combo-image {
    width: 100%;
    height: 138px;
    border-radius: 16px;
    object-fit: cover;
    display: block;
}

.pkg-page__combo-image--left {
    object-position: 34% center;
}

.pkg-page__combo-image--right {
    object-position: center center;
}

.pkg-page__combo-body {
    flex: 1 1 auto;
    min-width: 0;
}

.pkg-page__combo-title {
    color: #454545;
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 8px;
    line-height: 1.3;
}

.pkg-page__combo-description {
    color: #787878;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.75;
    margin: 0 0 14px;
}

.pkg-page__combo-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
}

.pkg-page__combo-price-group {
    display: flex;
    align-items: baseline;
    gap: 10px;
    flex-wrap: wrap;
}

.pkg-page__combo-price {
    color: var(--pkg-pink);
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
}

.pkg-page__combo-price-original {
    color: #858b8e;
    font-size: 12px;
    font-weight: 600;
    text-decoration: line-through;
}

.pkg-page__combo-button,
.pkg-page__plan-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: 8px;
    font-size: 14.5px;
    font-weight: 600;
    line-height: 1;
    transition: 0.2s ease;
}

.pkg-page__combo-button {
    min-width: 76px;
    height: 35px;
    background: #ee316a;
    color: #ffffff;
    padding: 0 12px;
}

.pkg-page__plan-button {
    width: 100%;
    height: 34px;
    background: var(--pkg-navy);
    color: #ffffff;
    border-radius: 9px;
}

.pkg-page__button-icon {
    width: 16px;
    height: 16px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.pkg-page__button-icon--light {
    opacity: 0.82;
}

.pkg-page__plan-card {
    background: #ffffff;
    border: 1px solid #e1e4e2;
    border-radius: 15px;
    box-shadow: 0 8px 20px rgba(139, 139, 139, 0.09);
    overflow: hidden;
    height: 100%;
}

.pkg-page__plan-visual {
    position: relative;
    height: 192px;
    overflow: hidden;
}

.pkg-page__plan-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.pkg-page__plan-overlay {
    position: absolute;
    inset: auto 0 0 0;
    padding: 58px 16px 14px;
    background: linear-gradient(
        180deg,
        rgba(27, 27, 27, 0) 0%,
        rgba(27, 27, 27, 0.83) 100%
    );
}

.pkg-page__plan-title {
    color: #ffffff;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}

.pkg-page__plan-badge {
    position: absolute;
    top: 11px;
    right: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--pkg-orange);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 6px 14px rgba(243, 152, 0, 0.28);
}

.pkg-page__plan-body {
    display: flex;
    flex-direction: column;
    padding: 14px 14px 10px;
    min-height: calc(100% - 192px);
}

.pkg-page__plan-description {
    color: #8a8a8a;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    margin: 0 0 13px;
    min-height: 42px;
}

.pkg-page__plan-box {
    background: #f3f7f9;
    border-radius: 10px;
    border: 1px solid #e8edf0;
    padding: 17px 15px 15px;
    margin-bottom: 14px;
}

.pkg-page__plan-box-title {
    position: relative;
    color: #858b8e;
    font-size: 13.5px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 13px;
}

.pkg-page__plan-box-title::before,
.pkg-page__plan-box-title::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 72px;
    height: 1px;
    background: #e8edf0;
    transform: translateY(-50%);
}

.pkg-page__plan-box-title::before {
    left: calc(50% - 118px);
}

.pkg-page__plan-box-title::after {
    right: calc(50% - 118px);
}

.pkg-page__plan-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.pkg-page__plan-list li {
    position: relative;
    color: #6f6f6f;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.9;
    padding-left: 14px;
}

.pkg-page__plan-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--pkg-orange);
    font-size: 13.5px;
    font-weight: 700;
}

.pkg-page__plan-price-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    margin-bottom: 12px;
}

.pkg-page__plan-price-original {
    color: #bababa;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
}

.pkg-page__plan-price {
    color: var(--pkg-orange-deep);
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}

.pkg-page__divider,
.svc-page__divider {
    margin: 26px 0;
    border-color: var(--pkg-line);
    opacity: 1;
}

.pkg-page__section--consult {
    padding-top: 28px;
}

.pkg-page__consult-heading,
.svc-page__consult-heading,
.cst-page__consult-heading {
    margin-bottom: 14px;
}

.pkg-page__consult-note,
.svc-page__consult-note,
.svc-page__consult-note,
.cst-page__consult-note {
    color: #353535;
    font-size: 12.5px;
    font-weight: 400;
    margin: 7px 0 0;
    line-height: 1.7;
}

.pkg-page__consult-note span,
.svc-page__consult-note span,
.cst-page__consult-note span {
    color: var(--page-accent);
    font-weight: 700;
}

.pkg-page__form,
.svc-page__form,
.cst-page__form {
    margin-top: 2px;
}

.pkg-page__label,
.svc-page__label,
.cst-page__label {
    display: block;
    color: #8f8f8f;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 7px;
}

.pkg-page__control,
.svc-page__control,
.cst-page__control {
    min-height: 42px;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    background-color: #f6f6f6;
    color: #666666;
    font-size: 13px;
    font-weight: 500;
    padding: 8px 12px;
    box-shadow: none;
}

.pkg-page__control::placeholder,
.svc-page__control::placeholder,
.cst-page__control::placeholder {
    color: #b2b2b2;
}

.pkg-page__control:focus,
.svc-page__control:focus,
.cst-page__control:focus {
    border-color: #edbf6f;
    box-shadow: 0 0 0 0.12rem rgba(244, 161, 31, 0.18);
    background-color: #ffffff;
}

.pkg-page__control--textarea,
.svc-page__control--textarea,
.cst-page__control--textarea {
    min-height: 140px;
    resize: none;
}

.pkg-page__submit,
.svc-page__submit,
.cst-page__submit {
    width: 100%;
    border: 0;
    border-radius: 4px;
    background: var(--page-accent-deep);
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1;
    padding: 12px 18px;
    margin-top: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    box-shadow: 0 8px 18px rgba(243, 152, 0, 0.18);
}

.pkg-page__submit-icon,
.svc-page__submit-icon,
.cst-page__submit-icon {
    width: 18px;
    height: 18px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

@media (max-width: 991.98px) {
    .pkg-page {
        padding-bottom: 96px;
    }

    .pkg-page .container {
        padding-left: 18px;
        padding-right: 18px;
    }

    .pkg-page__hero-title,
    .svc-page__hero-title,
    .cst-page__hero-title {
        font-size: 32px;
    }

    .pkg-page__combo-card {
        min-height: unset;
    }

    .pkg-page__plan-box-title::before,
    .pkg-page__plan-box-title::after {
        width: 54px;
    }

    .pkg-page__plan-box-title::before {
        left: calc(50% - 98px);
    }

    .pkg-page__plan-box-title::after {
        right: calc(50% - 98px);
    }
}

@media (max-width: 767.98px) {
    .pkg-page__subnav,
    .svc-page__subnav,
    .cst-page__subnav {
        padding: 8px 0;
    }

    .pkg-page .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .pkg-page__subnav-list,
    .svc-page__subnav-list,
    .cst-page__subnav-list {
        gap: 6px;
    }

    .pkg-page__subnav-link,
    .svc-page__subnav-link,
    .cst-page__subnav-link {
        min-width: 92px;
        padding: 6px 12px;
        margin: 0 3px;
    }

    .pkg-page__subnav-link + .pkg-page__subnav-link::before,
    .svc-page__subnav-link + .svc-page__subnav-link::before,
    .cst-page__subnav-link + .cst-page__subnav-link::before {
        left: -6px;
        height: 18px;
    }

    .pkg-page__hero,
    .svc-page__hero,
    .cst-page__hero {
        padding-top: 18px;
    }

    .pkg-page__hero-title,
    .svc-page__hero-title,
    .cst-page__hero-title {
        font-size: 26px;
        letter-spacing: 0.12em;
    }

    .pkg-page__hero-text,
    .svc-page__hero-text,
    .cst-page__hero-text {
        font-size: 11px;
    }

    .pkg-page__section {
        padding-top: 32px;
    }

    .pkg-page__section-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 14px;
    }

    .pkg-page__section-badge {
        margin-left: 30px;
    }

    .pkg-page__combo-card {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
        padding: 14px;
    }

    .pkg-page__combo-media {
        flex: 0 0 auto;
        max-width: none;
    }

    .pkg-page__combo-image {
        height: 176px;
    }

    .pkg-page__combo-footer {
        align-items: center;
    }

    .pkg-page__combo-price-group {
        gap: 8px;
    }

    .pkg-page__combo-price {
        font-size: 26px;
    }

    .pkg-page__plan-visual {
        height: 206px;
    }

    .pkg-page__plan-body {
        min-height: unset;
    }

    .pkg-page__plan-price {
        font-size: 28px;
    }

    .pkg-page__plan-box-title::before,
    .pkg-page__plan-box-title::after {
        display: none;
    }
}

/* ==========================================================
   Services Page
   ========================================================== */
.svc-page {
    --svc-bg: #fff;
    --svc-text: #5b5b5b;
    --svc-muted: #8d8d8d;
    --svc-line: #dfdfdf;
    --svc-orange: #f4a11f;
    --svc-orange-deep: #f39800;
    --page-accent: var(--svc-orange);
    --page-accent-deep: var(--svc-orange-deep);
    --svc-orange-soft: #fff7e9;
    --svc-orange-border: #f1d79c;
    --svc-filter-bg: #e9edf0;
    --svc-card-border: #ececec;
    --svc-card-shadow: 0 8px 18px rgba(154, 154, 154, 0.05);
    --svc-button-muted: #eef1f4;
    --svc-button-text: #8d95a1;
    background-color: var(--svc-bg);
    color: var(--svc-text);
    font-family: "Noto Sans TC", "Inter", sans-serif;
    padding-bottom: 72px;
}

.svc-page .container {
    max-width: 1180px;
    padding-left: 20px;
    padding-right: 20px;
}

.svc-page a {
    text-decoration: none;
}

.svc-page__grid-section {
    padding-top: 28px;
}

.svc-page__card {
    display: flex;
    flex-direction: column;
    min-height: 156px;
    height: 100%;
    background: #ffffff;
    border: 1px solid var(--svc-card-border);
    border-radius: 10px;
    padding: 16px 16px 14px;
    box-shadow: var(--svc-card-shadow);
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}

.svc-page__card.is-featured,
.svc-page__card:hover {
    background: var(--svc-orange-soft);
    border-color: var(--svc-orange-border);
    box-shadow: 0 10px 22px rgba(243, 152, 0, 0.08);
}

.svc-page__card.is-featured .svc-page__card-footer,
.svc-page__card:hover .svc-page__card-footer {
    border-top-color: #efd39a;
}

.svc-page__card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
}

.svc-page__card-title {
    font-size: 17px;
    font-weight: 700;
    line-height: 1.4;
    color: #4a4a4a;
    margin: 0;
    min-height: 44px;
}

.svc-page__card-icon {
    width: 50px;
    height: 50px;
    object-fit: contain;
    flex: 0 0 auto;
    opacity: 0.8;
}

.svc-page__card-description {
    color: var(--svc-muted);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.7;
    margin: 0 0 18px;
    min-height: 38px;
}

.svc-page__card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid #e6e6e6;
}

.svc-page__card-price {
    color: #5a5a5a;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
}

.svc-page__card-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-width: 62px;
    height: 25px;
    padding: 0 10px;
    border-radius: 6px;
    background: var(--svc-button-muted);
    color: var(--svc-button-text);
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1;
    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

.svc-page__card-button.is-featured,
.svc-page__card:hover .svc-page__card-button {
    background: var(--svc-orange);
    color: #ffffff;
}

.svc-page__card-button-icon {
    width: 14px;
    height: 14px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.svc-page__card-button-icon.is-muted {
    filter: none;
    opacity: 0.8;
}

.svc-page__card:hover .svc-page__card-button-icon {
    filter: brightness(0) invert(1);
    opacity: 1;
}

@media (max-width: 991.98px) {
    .svc-page {
        padding-bottom: 96px;
    }

    .svc-page .container {
        padding-left: 18px;
        padding-right: 18px;
    }
}

@media (max-width: 767.98px) {
    .svc-page .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .svc-page__grid-section {
        padding-top: 24px;
    }

    .svc-page__card {
        min-height: 148px;
    }
}

/* ==========================================================
   Customized Page
   ========================================================== */
.cst-page {
    --cst-bg: #fff;
    --cst-text: #5b5b5b;
    --cst-muted: #8d8d8d;
    --cst-orange: #f4a11f;
    --cst-orange-deep: #f39800;
    --page-accent: var(--cst-orange);
    --page-accent-deep: var(--cst-orange-deep);
    background-color: var(--cst-bg);
    color: var(--cst-text);
    font-family: "Noto Sans TC", "Inter", sans-serif;
    padding-bottom: 72px;
}

.cst-page .container {
    max-width: 1180px;
    padding-left: 20px;
    padding-right: 20px;
}

.cst-page__section {
    padding: 18px 0 52px;
}

.cst-page__hero-text {
    font-size: 13px;
}

.cst-page__brief-card {
    display: flex;
    flex-direction: column;
    min-height: 430px;
    height: 100%;
    background: #ffffff;
    border: 1px solid #efefef;
    border-radius: 18px;
    padding: 26px 28px 28px;
    box-shadow: 0 14px 30px rgba(151, 151, 151, 0.12);
}

.cst-page__brief-copy {
    padding-right: 10px;
}

.cst-page__brief-title {
    margin: 0 0 14px;
    line-height: 1.35;
}

.cst-page__brief-title-main,
.cst-page__brief-title-accent {
    display: block;
    font-size: 22px;
    font-weight: 700;
}

.cst-page__brief-title-main {
    color: #3f3f3f;
}

.cst-page__brief-title-accent {
    color: var(--cst-orange);
    margin-top: 2px;
}

.cst-page__brief-lead {
    color: #686868;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.8;
    margin: 0 0 10px;
}

.cst-page__brief-text {
    color: var(--cst-muted);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.85;
    margin: 0 0 24px;
    max-width: 92%;
}

.cst-page__brief-media {
    margin-top: auto;
}

.cst-page__brief-image {
    display: block;
    width: 100%;
    height: 160px;
    object-fit: cover;
    border-radius: 12px;
}

.cst-page__consult {
    padding-top: 8px;
}

.cst-page__section-title {
    font-size: 22px;
}

.cst-page__consult-note {
    max-width: 460px;
    font-size: 12.5px;
}

.cst-page__form {
    margin-top: 10px;
}

.cst-page__label {
    font-size: 12.5px;
    margin-bottom: 8px;
}

.cst-page__control {
    background-color: #fbfbfb;
    min-height: 42px;
    font-size: 13px;
}

.cst-page__control--textarea {
    min-height: 128px;
}

@media (max-width: 991.98px) {
    .cst-page {
        padding-bottom: 96px;
    }

    .cst-page .container {
        padding-left: 18px;
        padding-right: 18px;
    }

    .cst-page__section {
        padding-top: 10px;
    }

    .cst-page__brief-card {
        min-height: unset;
    }

    .cst-page__consult {
        padding-top: 0;
    }
}

@media (max-width: 767.98px) {
    .cst-page .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .cst-page__section {
        padding-bottom: 40px;
    }

    .cst-page__brief-card {
        padding: 22px 20px 20px;
        border-radius: 16px;
    }

    .cst-page__brief-title-main,
    .cst-page__brief-title-accent {
        font-size: 18px;
    }

    .cst-page__brief-text {
        max-width: 100%;
    }

    .cst-page__brief-image {
        height: 148px;
    }
}

/* ==========================================================
   Smart Assistant Page
   ========================================================== */
.sa-page {
    --sa-bg: #ffffff;
    --sa-text: #4f4f4f;
    --sa-muted: #8a8f98;
    --sa-orange: #f5a21f;
    --sa-orange-deep: #f08f00;
    --sa-green: #20b65a;
    --sa-green-dark: #159d48;
    --sa-blue: #6f8fde;
    --sa-line: #dfe6fb;
    background-color: var(--sa-bg);
    color: var(--sa-text);
    font-family: "Noto Sans TC", "Inter", sans-serif;
    padding-bottom: 72px;
}

.sa-page .container {
    max-width: 980px;
    padding-left: 20px;
    padding-right: 20px;
}

.sa-page a {
    text-decoration: none;
}

.solution-page-heading {
    text-align: center;
}

.solution-page-heading__eyebrow {
    position: relative;
    display: inline-block;
    color: #d4a565;
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 0.32em;
    padding: 0 22px;
    margin: 0 0 5px;
}

.solution-page-heading__eyebrow::before,
.solution-page-heading__eyebrow::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 13px;
    height: 1px;
    background: #e1bc84;
    transform: translateY(-50%);
}

.solution-page-heading__eyebrow::before {
    left: 0;
}

.solution-page-heading__eyebrow::after {
    right: 0;
}

.solution-page-heading__title {
    color: var(--color-f79a06);
    font-size: 1.65rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    margin: 0;
    line-height: 1.15;
}

.solution-page-heading__text {
    color: #7a7a7a;
    font-size: 13px;
    font-weight: 500;
    margin: 8px 0 0;
    letter-spacing: 0.03em;
}

.sa-page__category-bar {
    background: linear-gradient(
        90deg,
        #f6eddd 0%,
        #f3af45 18%,
        #f19c17 50%,
        #f3af45 82%,
        #f6eddd 100%
    );
    padding: 8px 0;
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.55);
}

.sa-page__category-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0;
    flex-wrap: nowrap;
    overflow: hidden;
}

.sa-page__category-pill {
    display: inline-flex;
    align-items: center;
    min-width: auto;
    padding: 6px 18px;
    margin: 0 4px;
    border-radius: 0;
    border: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.96);
    transition: 0.2s ease;
    position: relative;
    flex: 0 0 auto;
    z-index: 0;
}

.sa-page__category-pill + .sa-page__category-pill::before {
    content: "";
    position: absolute;
    left: -4px;
    top: 50%;
    width: 1px;
    height: 22px;
    background: rgba(255, 255, 255, 0.6);
    transform: translateY(-50%);
}

.sa-page__category-pill:hover,
.sa-page__category-pill.is-active {
    background: #ea9c10;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 10px;
    border-color: #fff3d2;
    box-shadow: 0 6px 12px rgba(191, 112, 0, 0.16);
    z-index: 2;
}

.sa-page__category-icon {
    width: 18px;
    height: 18px;
    object-fit: contain;
    filter: brightness(0) invert(1);
    opacity: 0.95;
    flex: 0 0 auto;
}

.sa-page__category-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
    min-width: max-content;
    justify-content: center;
    text-align: center;
}

.sa-page__category-main {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.sa-page__category-label {
    font-size: 12.5px;
    font-weight: 700;
    white-space: nowrap;
}

.sa-page__category-sub {
    display: block;
    font-size: 10px;
    font-weight: 500;
    margin-top: 2px;
    white-space: nowrap;
}

.sa-page__intro {
    padding: 16px 0 10px;
}

.sa-page__heading {
    margin-bottom: 8px;
}

.sa-page__section-title-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
    flex: 0 0 auto;
}

.sa-page__section {
    padding: 10px 0 0;
}

.sa-page__section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.sa-page__section-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 0;
}

.sa-page__section-title--value {
    margin-top: 24px;
    margin-bottom: 18px;
}

.sa-page__section-title-text {
    color: #3f3f3f;
    font-size: 22px;
    font-weight: 700;
    margin: 0;
    line-height: 1.2;
}

.sa-page__section-title-text span {
    color: #4d4d4d;
    font-size: 18px;
    font-weight: 700;
}

.sa-page__section-title--value .sa-page__section-title-text,
.sa-page__section-title--value .sa-page__section-title-text span {
    color: #27a784;
}

.sa-page__contact-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 176px;
    height: 40px;
    padding: 0 16px;
    border: 2px solid #32c84c;
    border-radius: 14px;
    background: #ffffff;
    color: #27b33f;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 5px 10px rgba(50, 200, 76, 0.08);
}

.sa-page__contact-button-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.sa-page__timeline {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sa-page__timeline::before {
    content: "";
    position: absolute;
    left: 22px;
    top: 8px;
    bottom: 8px;
    width: 2px;
    background: linear-gradient(180deg, #cfe0ff 0%, #bfcff8 100%);
}

.sa-page__process {
    position: relative;
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 20px;
    align-items: start;
}

.sa-page__process-side {
    display: flex;
    justify-content: center;
    min-height: 92px;
}

.sa-page__process-step,
.sa-page__value-step {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: linear-gradient(180deg, #81a0ef 0%, #6587dd 100%);
    color: #ffffff;
    font-size: 24px;
    font-weight: 700;
    border: 4px solid #d5def9;
    box-shadow: 0 5px 10px rgba(101, 135, 221, 0.16);
}

.sa-page__process-card,
.sa-page__value-card {
    background: #ffffff;
    border: 1px solid #ededed;
    border-radius: 12px;
    box-shadow: 0 8px 18px rgba(169, 169, 169, 0.08);
}

.sa-page__process-card {
    padding: 22px 24px 20px;
}

.sa-page__process.is-expanded .sa-page__process-card {
    padding-bottom: 18px;
}

.sa-page__process-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.sa-page__process-title {
    color: #444444;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 6px;
}

.sa-page__process-desc {
    color: #8b8f96;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.7;
    margin: 0;
}

.sa-page__process-toggle {
    width: 26px;
    height: 26px;
    object-fit: contain;
    flex: 0 0 auto;
    margin-top: 2px;
    padding: 5px;
    border-radius: 999px;
    background: #fff8ec;
}

.sa-page__process-detail {
    display: flex;
    align-items: stretch;
    gap: 16px;
    margin-top: 16px;
    padding: 18px 18px 16px;
    border-radius: 10px;
    background: #fff6e5;
    border: 1px solid #f7e8bb;
}

.sa-page__process-tip {
    flex: 1 1 auto;
}

.sa-page__process-tip-head {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #8a7a4b;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 8px;
}

.sa-page__process-tip-icon {
    width: 16px;
    height: 16px;
    object-fit: contain;
}

.sa-page__process-tip-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sa-page__process-tip-list li {
    position: relative;
    color: #9a8d67;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    padding-left: 14px;
}

.sa-page__process-tip-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: #f2c252;
}

.sa-page__cta-box {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin: 18px 0 26px;
    padding: 34px 28px 36px;
    border: 1px solid #e7d9ad;
    border-radius: 18px;
    background:
        url("../images/02/02_con_bg_l.png") 18px center / 46px auto no-repeat,
        url("../images/02/02_con_bg_r.png") calc(100% - 18px) center / 86px auto
            no-repeat,
        #fffdf7;
}

.sa-page__cta-copy {
    text-align: center;
    position: relative;
    z-index: 1;
    max-width: 520px;
}

.sa-page__cta-title {
    color: #565656;
    font-size: 19px;
    font-weight: 700;
    margin: 0 0 8px;
}

.sa-page__cta-text {
    color: #717171;
    font-size: 13px;
    font-weight: 500;
    margin: 0;
    line-height: 1.6;
}

.sa-page__cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 170px;
    height: 38px;
    padding: 0 18px;
    border-radius: 9px;
    background: linear-gradient(
        180deg,
        var(--sa-green) 0%,
        var(--sa-green-dark) 100%
    );
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 10px 18px rgba(32, 182, 90, 0.2);
}

.sa-page__cta-button-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.sa-page__value-list {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sa-page__value-list::before {
    content: "";
    position: absolute;
    left: 22px;
    top: 8px;
    bottom: 8px;
    width: 2px;
    background: linear-gradient(180deg, #cfe0ff 0%, #bfcff8 100%);
}

.sa-page__value-item {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 20px;
    align-items: start;
}

.sa-page__value-side {
    display: flex;
    justify-content: center;
    min-height: 86px;
}

.sa-page__value-card {
    padding: 22px 24px 20px;
}

.sa-page__value-body {
    min-width: 0;
}

.sa-page__value-title {
    color: #464646;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 6px;
    line-height: 1.3;
}

.sa-page__value-text {
    color: #8c9198;
    font-size: 12.5px;
    font-weight: 500;
    margin: 0;
    line-height: 1.7;
}

@media (max-width: 991.98px) {
    .sa-page {
        padding-bottom: 96px;
    }

    .sa-page .container {
        padding-left: 18px;
        padding-right: 18px;
    }

    .sa-page__cta-box {
        padding: 20px 22px;
    }
}

@media (max-width: 767.98px) {
    .sa-page .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .sa-page__category-list {
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 0;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 2px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .sa-page__category-list::-webkit-scrollbar {
        display: none;
    }

    .sa-page__category-pill {
        flex: 0 0 auto;
        min-width: auto;
        padding: 7px 16px;
    }

    .sa-page__category-pill.is-active {
        margin: 0 6px;
    }

    .solution-page-heading__eyebrow {
        font-size: 0.95rem;
        letter-spacing: 0.22em;
    }

    .solution-page-heading__title {
        font-size: 1.65rem;
        letter-spacing: 0.12em;
    }

    .solution-page-heading__text {
        font-size: 12px;
    }

    .sa-page__section-head {
        align-items: flex-start;
        flex-direction: column;
        margin-bottom: 14px;
    }

    .sa-page__section-title {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .sa-page__section-title-text {
        font-size: 20px;
    }

    .sa-page__section-title-text span {
        display: block;
        font-size: 15px;
        margin-top: 2px;
    }

    .sa-page__timeline::before,
    .sa-page__value-list::before {
        left: 16px;
    }

    .sa-page__process,
    .sa-page__value-item {
        grid-template-columns: 32px 1fr;
        gap: 12px;
    }

    .sa-page__process-side,
    .sa-page__value-side {
        min-height: auto;
    }

    .sa-page__process-step,
    .sa-page__value-step {
        width: 32px;
        height: 32px;
        font-size: 18px;
        border-width: 3px;
    }

    .sa-page__process-card {
        padding: 16px 16px 14px;
    }

    .sa-page__process-detail {
        flex-direction: column;
        gap: 10px;
        padding: 14px;
    }

    .sa-page__cta-title {
        font-size: 17px;
    }

    .sa-page__cta-text {
        font-size: 12px;
    }

    .sa-page__value-card {
        padding: 16px 16px 14px;
    }
}

.page__heading {
    text-align: center;
}

.page__eyebrow {
    position: relative;
    display: inline-block;
    color: #d4a565;
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 0.32em;
    padding: 0 22px;
    margin: 0 0 5px;
}

.page__eyebrow::before,
.page__eyebrow::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 13px;
    height: 1px;
    background: #e1bc84;
    transform: translateY(-50%);
}

.page__eyebrow::before {
    left: 0;
}

.page__eyebrow::after {
    right: 0;
}

.page__title {
    color: var(--color-f79a06);
    font-size: 1.65rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    margin: 0;
    line-height: 1.15;
}

.page__text {
    color: #7a7a7a;
    font-size: 13px;
    font-weight: 500;
    margin: 8px 0 0;
    letter-spacing: 0.03em;
}

.cases-page {
    position: relative;
    margin-top: -100px;
    z-index: 2;
    background: linear-gradient(to bottom, #fff, #f6f6f6);
}

.cases-page__category-list {
    padding-top: 28px;
}

.cases-page__category-shell {
    max-width: 760px;
    margin: 0 auto;
    position: relative;
}

.cases-page__category-panel {
    width: 100%;
    overflow: hidden;
    transition: max-height 0.24s ease;
}

.cases-page__category-track {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    flex-wrap: wrap;
}

.cases-page__category-shell:not(.is-collapsible) .cases-page__category-track {
    justify-content: center;
}

.cases-page__category-shell.is-collapsible .cases-page__category-panel {
    padding-right: 82px;
    max-height: var(--cases-category-collapsed-height, 40px);
}

.cases-page__category-shell.is-expanded .cases-page__category-panel {
    max-height: var(--cases-category-expanded-height, 240px);
}

.cases-page__category-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 116px;
    min-height: 34px;
    padding: 7px 18px;
    border: 1px solid #c7d0e1;
    border-radius: 8px;
    background: #f6f8fd;
    color: #6d7382;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
    transition: 0.2s ease;
}

.cases-page__category-pill.is-active {
    border-color: #2f3b63;
    background: #2f3b63;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(47, 59, 99, 0.16);
}

.cases-page__category-pill:hover,
.cases-page__category-pill:focus-visible {
    border-color: #2f3b63;
    background: #2f3b63;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(47, 59, 99, 0.16);
}

.cases-page__category-toggle {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex: 0 0 auto;
    min-width: 68px;
    height: 34px;
    padding: 0 12px;
    border: 1px solid #c7d0e1;
    border-radius: 8px;
    background: #ffffff;
    color: #6d7382;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
}

.cases-page__category-shell.is-collapsible .cases-page__category-toggle {
    display: inline-flex;
}

.cases-page__category-toggle-icon {
    position: relative;
    width: 10px;
    height: 10px;
}

.cases-page__category-toggle-icon::before,
.cases-page__category-toggle-icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    background: #7a8090;
    transform: translate(-50%, -50%);
}

.cases-page__category-toggle-icon::before {
    width: 10px;
    height: 1.5px;
}

.cases-page__category-toggle-icon::after {
    width: 1.5px;
    height: 10px;
    transition: opacity 0.2s ease;
}

.cases-page__category-toggle[aria-expanded="true"]
    .cases-page__category-toggle-icon::after {
    opacity: 0;
}

@media (max-width: 991px) {
    .cases-page {
        margin-top: -80px;
    }

    .cases-page__category-track {
        gap: 8px;
    }
}

@media (max-width: 767.98px) {
    .cases-page {
        margin-top: -50px;
    }

    .cases-page__category-list {
        padding-top: 22px;
    }

    .cases-page__category-shell {
        max-width: none;
    }

    .cases-page__category-panel {
        width: 100%;
    }

    .cases-page__category-shell.is-collapsible .cases-page__category-panel {
        padding-right: 74px;
    }

    .cases-page__category-pill {
        flex: 0 0 auto;
        min-width: auto;
        padding: 7px 16px;
    }

    .cases-page__category-track {
        justify-content: flex-start;
    }
}

.cases-page__detail-card {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 20px 0 0;
    box-shadow: none;
}

.cases-page__detail-header {
    text-align: center;
    padding: 0 18px;
}

.cases-page__detail-category {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #666666;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.1em;
}

.cases-page__detail-category::before,
.cases-page__detail-category::after {
    content: "";
    display: block;
    width: 24px;
    height: 1px;
    background: #b8b8b8;
}

.cases-page__detail-category-label {
    display: inline-block;
    color: inherit;
}

.cases-page__detail-title {
    margin: 22px 0 0;
    color: #3b3b3b;
    font-size: clamp(1.45rem, 1.75vw, 2rem);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.01em;
}

.cases-page__detail-divider {
    width: 100%;
    height: 1px;
    margin: 34px 0 24px;
    background: #dddddd;
}

.cases-page__detail-info {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 0;
}

.cases-page__detail-info-item {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 6px;
    color: #6a6a6a;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
}

.cases-page__detail-info-item + .cases-page__detail-info-item::before {
    content: "|";
    display: inline-block;
    margin: 0 14px;
    color: #a6a6a6;
    font-weight: 400;
}

.cases-page__detail-info-label {
    color: #7e7e7e;
    font-weight: 600;
}

.cases-page__detail-info-value {
    color: #505050;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0;
}

.cases-page__detail-info-item:not(:last-child) .cases-page__detail-info-value {
    font-size: 1rem;
}

.cases-page__detail-info-item:last-child .cases-page__detail-info-value {
    color: var(--color-f79a06);
}

@media (max-width: 991px) {
    .cases-page__detail-card {
        padding-top: 14px;
    }

    .cases-page__detail-title {
        font-size: clamp(1.38rem, 3.3vw, 1.82rem);
    }

    .cases-page__detail-info-item {
        font-size: 15px;
    }

    .cases-page__detail-info-value {
        font-size: 1rem;
    }
}

@media (max-width: 767.98px) {
    .cases-page__detail-card {
        padding-top: 10px;
    }

    .cases-page__detail-category {
        gap: 10px;
        font-size: 12px;
        letter-spacing: 0.08em;
    }

    .cases-page__detail-category::before,
    .cases-page__detail-category::after {
        width: 34px;
    }

    .cases-page__detail-title {
        margin-top: 14px;
        font-size: 1.5rem;
    }

    .cases-page__detail-divider {
        margin: 24px 0 20px;
    }

    .cases-page__detail-info {
        flex-direction: column;
        gap: 8px;
    }

    .cases-page__detail-info-item {
        flex-wrap: wrap;
        gap: 4px 8px;
        font-size: 14px;
    }

    .cases-page__detail-info-item + .cases-page__detail-info-item::before {
        content: none;
    }

    .cases-page__detail-info-value,
    .cases-page__detail-info-item:not(:last-child)
        .cases-page__detail-info-value {
        font-size: 1rem;
    }
}

.cases-page__detail-service-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px solid #f79a06;
    border-radius: 50px;
    background-color: #fff6e5;
    color: #f79a06 !important;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
    padding: 3px 15px;
    min-width: 120px;
    text-align: center;
}

.cases-page__detail-service-item p {
    color: #f79a06 !important;
    font-size: 15px;
    font-weight: 500;
}

.cases-page__detail-card-wrapper {
    border-top: 1px solid #ddd;
    border-radius: 10px;
    background-color: #fff;
    padding: 3rem;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.case-page__detail-body * {
    color: #353535;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 2;
}

.cases-page__detail-prev {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 20px;
    border: 1px solid #f79a06;
    border-radius: 10px;
    background-color: #fff;
    color: #f79a06;
    box-shadow: 0 4px 10px #f79b067e;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
    text-decoration: none;
    transition: all 0.3s ease;
}

.experts-page {
    position: relative;
    margin-top: -100px;
    z-index: 2;
    background: linear-gradient(to bottom, #fff, #f6f6f6);
}

.experts-page__section {
    padding: 18px 0 72px;
}

.experts-page__heading {
    text-align: center;
    margin-bottom: 28px;
}

.experts-page__heading-mark {
    margin: 0;
    color: #ee9a21;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.16em;
}

.experts-page__heading-text {
    margin: 10px 0 0;
    color: #666666;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.75;
}

.experts-page__cards-row {
    --bs-gutter-x: 24px;
    --bs-gutter-y: 24px;
}

.experts-page__cards-row--bottom {
    margin-top: 2px;
}

.experts-page__card {
    position: relative;
    height: 100%;
    min-height: 248px;
    padding: 18px 18px 16px;
    border: 1px solid #e8e8e8;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 6px 16px rgba(30, 41, 59, 0.04);
}

.experts-page__card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.95) 0%,
        rgba(255, 255, 255, 0) 42%
    );
    pointer-events: none;
}

.experts-page__card-head,
.experts-page__card-body {
    position: relative;
    z-index: 1;
}

.experts-page__card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 58px;
    margin-bottom: 12px;
    padding: 10px 14px 10px 16px;
    border-radius: 12px;
}

.experts-page__card-title {
    margin: 0;
    color: #444444;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.02em;
}

.experts-page__card-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 auto;
    object-fit: contain;
}

.experts-page__card-body {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.experts-page__service-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.experts-page__service-copy {
    min-width: 0;
}

.experts-page__service-title {
    margin: 0;
    color: #4a4a4a;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.58;
}

.experts-page__service-note {
    margin: 3px 0 0;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.62;
    letter-spacing: 0.01em;
    color: #7c7c7c;
}

.experts-page__service-brand {
    margin: 2px 0 0;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.55;
    letter-spacing: 0.01em;
}

.experts-page__service-years {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
    flex: 0 0 auto;
    white-space: nowrap;
    line-height: 1.05;
}

.experts-page__service-years-num {
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1;
    color: #323232;
}

.experts-page__service-years-label {
    font-size: 11px;
    font-weight: 600;
    line-height: 1.32;
    color: #9c9c9c;
}

.experts-page__card--blue {
    border-color: #dcecf9;
}

.experts-page__card--blue .experts-page__card-head {
    background: linear-gradient(180deg, #eef8ff 0%, #f8fcff 100%);
}

.experts-page__card--blue .experts-page__service-note {
    color: #7c7c7c;
}

.experts-page__card--blue .experts-page__service-brand {
    color: #6a9fcd;
}

.experts-page__card--pink {
    border-color: #f5dfe7;
}

.experts-page__card--pink .experts-page__card-head {
    background: linear-gradient(180deg, #fff0f5 0%, #fff8fb 100%);
}

.experts-page__card--pink .experts-page__service-note {
    color: #7c7c7c;
}

.experts-page__card--pink .experts-page__service-brand {
    color: #cc6f93;
}

.experts-page__card--gold {
    border-color: #f5e7c8;
}

.experts-page__card--gold .experts-page__card-head {
    background: linear-gradient(180deg, #fff7e7 0%, #fffbf3 100%);
}

.experts-page__card--gold .experts-page__service-note {
    color: #7c7c7c;
}

.experts-page__card--gold .experts-page__service-brand {
    color: #b8914e;
}

.experts-page__card--purple {
    border-color: #e5ddf4;
}

.experts-page__card--purple .experts-page__card-head {
    background: linear-gradient(180deg, #f6f2ff 0%, #fbf9ff 100%);
}

.experts-page__card--purple .experts-page__service-note {
    color: #7c7c7c;
}

.experts-page__card--purple .experts-page__service-brand {
    color: #9180bc;
}

.experts-page__card--green {
    border-color: #dcefdc;
}

.experts-page__card--green .experts-page__card-head {
    background: linear-gradient(180deg, #eefcf1 0%, #f8fffa 100%);
}

.experts-page__card--green .experts-page__service-note {
    color: #7c7c7c;
}

.experts-page__card--green .experts-page__service-brand {
    color: #56aa78;
}

.experts-page__cta {
    margin-top: 18px;
}

.experts-page__cta-box {
    position: relative;
    overflow: hidden;
    min-height: 156px;
    padding: 28px 36px 26px;
    border: 1px solid #ececec;
    border-radius: 16px;
    background-color: #f7f7f7;
    background-image: url("../images/05/05ban_bg624.jpg");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
    text-align: center;
    box-shadow: 0 8px 18px rgba(30, 41, 59, 0.04);
}

.experts-page__cta-box::before {
    content: "";
    position: absolute;
    inset: 0;
    /* background: linear-gradient(90deg, rgba(247, 247, 247, 0.98) 0%, rgba(247, 247, 247, 0.93) 48%, rgba(247, 247, 247, 0.82) 100%); */
}

.experts-page__cta-title,
.experts-page__cta-text,
.experts-page__cta-button {
    position: relative;
    z-index: 1;
}

.experts-page__cta-title {
    margin: 0;
    color: #444444;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.4;
}

.experts-page__cta-text {
    max-width: 720px;
    margin: 10px auto 14px;
    color: #666666;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.75;
}

.experts-page__cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 182px;
    height: 34px;
    padding: 0 18px;
    border-radius: 999px;
    background: #2dbc3d;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(45, 188, 61, 0.22);
}

.experts-page__cta-button img {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}

@media (min-width: 768px) {
    .experts-page__cta-box {
        background-image: url("../images/05/05ban_bg1024.jpg");
    }
}

@media (min-width: 1200px) {
    .experts-page__cta-box {
        background-image: url("../images/05/05ban_bg1280.jpg");
    }
}

@media (min-width: 1400px) {
    .experts-page__cta-box {
        background-image: url("../images/05/05ban_bg1440.jpg");
    }
}

@media (min-width: 1680px) {
    .experts-page__cta-box {
        background-image: url("../images/05/05ban_bg1920.jpg");
    }
}

@media (max-width: 1199.98px) {
    .experts-page__card {
        min-height: 100%;
    }
}

@media (max-width: 991px) {
    .experts-page {
        margin-top: -80px;
    }

    .experts-page__section {
        padding-bottom: 56px;
    }

    .experts-page__heading-mark {
        font-size: 1.2rem;
    }

    .experts-page__cards-row {
        --bs-gutter-x: 18px;
        --bs-gutter-y: 18px;
    }

    .experts-page__cta-box {
        padding: 26px 24px 24px;
        background-position: 62% bottom;
    }
}

@media (max-width: 767.98px) {
    .experts-page {
        margin-top: -50px;
    }

    .experts-page__section {
        padding: 12px 0 44px;
    }

    .experts-page__heading {
        margin-bottom: 22px;
    }

    .experts-page__heading-mark {
        font-size: 1.08rem;
        letter-spacing: 0.12em;
    }

    .experts-page__heading-text {
        font-size: 12px;
        line-height: 1.7;
    }

    .experts-page__cards-row {
        --bs-gutter-x: 18px;
        --bs-gutter-y: 18px;
    }

    .experts-page__card {
        min-height: auto;
        padding: 16px;
        border-radius: 12px;
    }

    .experts-page__card-head {
        min-height: 54px;
        margin-bottom: 10px;
        padding: 10px 12px 10px 14px;
    }

    .experts-page__card-title {
        font-size: 1.05rem;
    }

    .experts-page__card-icon {
        width: 42px;
        height: 42px;
    }

    .experts-page__service-title {
        font-size: 13px;
        line-height: 1.54;
    }

    .experts-page__service-note {
        font-size: 10px;
        line-height: 1.58;
    }

    .experts-page__service-brand {
        font-size: 10px;
        line-height: 1.5;
    }

    .experts-page__service-years-num {
        font-size: 1rem;
    }

    .experts-page__cta {
        margin-top: 16px;
    }

    .experts-page__cta-box {
        min-height: 184px;
        padding: 24px 18px 22px;
        background-position: 68% bottom;
    }

    .experts-page__cta-box::before {
        background: linear-gradient(
            180deg,
            rgba(247, 247, 247, 0.94) 0%,
            rgba(247, 247, 247, 0.9) 100%
        );
    }

    .experts-page__cta-title {
        font-size: 0.95rem;
    }

    .experts-page__cta-text {
        margin: 10px auto 12px;
        font-size: 11px;
        line-height: 1.7;
    }
}

.resources-page__detail-prev {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 20px;
    border: 1px solid #f79a06;
    border-radius: 10px;
    background-color: #fff;
    color: #f79a06;
    box-shadow: 0 4px 10px #f79b067e;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
    text-decoration: none;
    transition: all 0.3s ease;
}

.resources-page__details-header {
    text-align: center;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #f79a06;
    padding-bottom: 0.85rem;
}

.resources-page__detail-category-label {
    color: #fff;
    background-color: #f79a06;
    padding: 2px 6px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
}

.resources-page__details-content-item {
    background-color: #f6f8fd;
    padding: 2rem 3rem;
    display: flex;
    flex-direction: column;
    /* justify-content: start;
    align-items: center; */
    height: 100%;
}
