/* ================= 全局样式 ================= */
body {
    background-color: #ffffff;
    font-family: "Microsoft YaHei", "SimSun", sans-serif;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

/* ================= 1. 导航栏样式 ================= */
.navbar { 
    border-bottom: 1px solid #f0f0f0; 
    padding: 1rem 0; 
}
.navbar-brand svg { 
    height: 50px; 
    width: auto; 
}
.nav-link { 
    color: #333 !important; 
    font-size: 15px; 
    font-weight: 500; 
    padding: 0.5rem 12px !important; 
    transition: 0.3s; 
}
.nav-link:hover, .nav-link.show { 
    color: #8a1f1f !important; 
}
.dropdown-menu { 
    border: none; 
    box-shadow: 0 10px 30px rgba(0,0,0,0.08); 
    border-radius: 4px; 
    padding: 10px 0; 
}
.dropdown-item { 
    font-size: 14px; 
    padding: 8px 20px; 
    color: #555; 
}
.dropdown-item:hover { 
    background-color: #fcf4f4; 
    color: #8a1f1f; 
}
.social-icons .bi { 
    font-size: 18px; 
    color: #000; 
    margin-left: 15px; 
    transition: 0.3s; 
}
.social-icons .bi:hover { 
    color: #8a1f1f; 
}

@media (min-width: 992px) {
    .nav-item.dropdown:hover .dropdown-menu { 
        display: block; 
        animation: fadeIn 0.3s forwards; 
    }
    .navbar-nav { 
        align-items: center; 
    }
}

@keyframes fadeIn { 
    from { opacity: 0; transform: translateY(10px); } 
    to { opacity: 1; transform: translateY(0); } 
}

@media (max-width: 991px) { 
    .navbar-nav { padding: 20px 0; } 
    .social-icons { margin-top: 15px; } 
}

/* ================= 2. 顶部大图轮播样式 ================= */
.custom-carousel .carousel-item { 
    height: 500px; 
    background-color: #f4f4f4; 
}
.custom-carousel .carousel-item img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    object-position: center; 
}
.custom-carousel .carousel-control-prev, 
.custom-carousel .carousel-control-next { 
    z-index: 10; 
    width: 8%; 
}
.custom-carousel .carousel-control-prev-icon, 
.custom-carousel .carousel-control-next-icon { 
    filter: invert(1) grayscale(100%); 
    opacity: 0.8; 
    width: 3rem; 
    height: 3rem; 
}

@media (max-width: 768px) { 
    .custom-carousel .carousel-item { height: 260px; } 
}

/* ================= 3. 宗旨区块样式 ================= */
.purpose-section { 
    background-color: #ededed; 
    padding: 100px 0; 
}
.purpose-subtitle { 
    font-size: 16px; 
    color: #444444; 
    margin-bottom: 25px; 
    letter-spacing: 1px; 
}
.purpose-title { 
    font-size: 34px; 
    color: #000000; 
    font-weight: 500; 
    line-height: 1.4; 
}
.purpose-text { 
    font-size: 16px; 
    color: #111111; 
    line-height: 1.8; 
    max-width: 520px; 
    text-align: right; 
    margin-left: auto; 
}

@media (max-width: 991px) {
    .purpose-section { padding: 60px 0; }
    .purpose-title { font-size: 26px; margin-bottom: 30px; }
    .purpose-text { text-align: left; max-width: 100%; }
}

/* ================= 4. 客户反馈样式 ================= */
.qa-section { 
    padding: 80px 0; 
    background-color: #ffffff; 
}
.section-headline { 
    font-size: 32px; 
    font-weight: bold; 
    color: #111111; 
    letter-spacing: 1px; 
}
.qa-title { 
    font-size: 16px; 
    font-weight: 500; 
    line-height: 1.4; 
    color: #111111; 
    margin: 25px 0; 
}
.qa-desc { 
    font-size: 15px; 
    color: #555555; 
    line-height: 1.8; 
    text-align: justify; 
}
.qa-img-wrapper img { 
    width: 100%; 
    max-width: 460px; 
    height: auto; 
    object-fit: cover; 
}
.qa-right-box { 
    max-width: 480px; 
    margin-left: auto; 
}

.qa-right-box img{max-width:100%; height:auto}

.qa-carousel-control { 
    width: 5%; 
    filter: invert(1) grayscale(100%); 
    opacity: 0.8; 
}

@media (max-width: 991px) {
    .qa-title { font-size: 22px; text-align: center; }
    .qa-img-wrapper { text-align: center !important; margin-bottom: 20px; }
    .qa-right-box { margin-left: 0; max-width: 100%; }
    .qa-img-bottom { text-align: center !important; margin-top: 20px; }
}

/* ================= 5. 以养生为核心理念样式 ================= */
.philosophy-section { 
    background-color: #f9f9f9; 
    padding: 100px 0; 
}
.philosophy-title { 
    font-size: 42px; 
    font-weight: bold; 
    color: #000000; 
    margin-bottom: 40px; 
}
.philosophy-desc { 
    font-size: 15px; 
    color: #333333; 
    line-height: 2; 
    max-width: 500px; 
    text-align: justify; 
}
.mosaic-grid { 
    display: block; 
    position: relative; 
    width: 100%; 
    min-height: 550px; 
}
.mosaic-item { 
    position: absolute; 
    overflow: hidden; 
    background-color: #eee; 
}
.mosaic-item img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    transition: transform 0.4s ease; 
}
.mosaic-item img:hover { 
    transform: scale(1.03); 
}
.img-top-right { width: 52%; height: 320px; top: 0; right: 0; z-index: 2; }
.img-mid-left  { width: 44%; height: 360px; top: 140px; left: 0; z-index: 3; }
.img-bot-right { width: 46%; height: 180px; top: 380px; right: 4%; z-index: 1; }

@media (max-width: 991px) {
    .philosophy-section { padding: 60px 0; }
    .philosophy-title { font-size: 30px; text-align: center; }
    .philosophy-desc { max-width: 100%; margin-bottom: 40px; }
    .mosaic-grid { min-height: auto; }
    .mosaic-item { 
        position: relative !important; 
        width: 100% !important; 
        height: 240px !important; 
        top: 0 !important; 
        left: 0 !important; 
        right: 0 !important; 
        margin-bottom: 20px; 
    }
}

/* ================= 6. 外治疗法样式 ================= */
.multi-therapy-section { 
    padding: 100px 0; 
    background-color: #ffffff; 
}
.center-headline-box { 
    text-align: center; 
    margin-bottom: 60px; 
    width: 100%; 
}
.center-headline { 
    font-size: 34px; 
    font-weight: bold; 
    color: #111111; 
    position: relative; 
    display: inline-block; 
    padding-bottom: 15px; 
}
.center-headline::after { 
    content: ''; 
    position: absolute; 
    bottom: 0; 
    left: 50%; 
    transform: translateX(-50%); 
    width: 60px; 
    height: 3px; 
    background-color: #8a1f1f; 
}
.therapy-card { 
    background: #fafafa; 
    border: 1px solid #eeeeee; 
    border-radius: 8px; 
    overflow: hidden; 
    transition: 0.3s; 
    height: 100%; 
}
.therapy-card:hover { 
    transform: translateY(-5px); 
    box-shadow: 0 10px 25px rgba(0,0,0,0.05); 
}
.therapy-card img { 
    height: 260px; 
    width: 100%; 
    object-fit: cover; 
}
.therapy-card-body { 
    padding: 30px; 
}
.therapy-card-title { 
    font-size: 22px; 
    font-weight: bold; 
    color: #111111; 
    margin-bottom: 15px; 
}
.therapy-card-text { 
    font-size: 14.5px; 
    color: #666666; 
    line-height: 1.8; 
    text-align: justify; 
}
.therapy-list { 
    list-style: none; 
    padding-left: 0; 
    margin-top: 15px; 
}
.therapy-list li { 
    font-size: 14px; 
    color: #444444; 
    margin-bottom: 8px; 
    display: flex; 
    align-items: center; 
}
.therapy-list li::before { 
    content: "•"; 
    color: #8a1f1f; 
    font-weight: bold; 
    font-size: 18px; 
    margin-right: 8px; 
}
.multi-therapy-section .carousel-indicators { 
    position: relative; 
    margin-top: 40px; 
    margin-bottom: 0; 
    bottom: 0; 
}
.multi-therapy-section .carousel-indicators button { 
    width: 10px; 
    height: 10px; 
    border-radius: 50%; 
    background-color: #bbbbbb; 
    border: none; 
    margin: 0 6px; 
    opacity: 1; 
    transition: 0.3s; 
}
.multi-therapy-section .carousel-indicators .active { 
    background-color: #8a1f1f; 
    width: 12px; 
    height: 12px; 
}

@media (max-width: 991px) { 
    .multi-therapy-section { padding: 60px 0; } 
    .center-headline { font-size: 26px; } 
}

/* ================= 7. 新闻资讯样式 ================= */
.news-section { 
    padding: 60px 0 100px 0; 
    background-color: #ffffff; 
}
.news-header-bar { 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    margin-bottom: 25px; 
    border-bottom: 1px solid #eeeeee; 
    padding-bottom: 15px; 
}
.news-section-title { 
    font-size: 15px; 
    font-weight: 500; 
    color: #111111; 
    letter-spacing: 1px; 
}
.news-controls { 
    display: flex; 
    gap: 20px; 
}
.news-btn { 
    background: none; 
    border: none; 
    font-size: 22px; 
    color: #999999; 
    cursor: pointer; 
    transition: 0.3s; 
    padding: 0 5px; 
    line-height: 1; 
}
.news-btn:hover { 
    color: #8a1f1f; 
}
.news-carousel-item { 
    width: 100%; 
}
.news-img-holder { 
    width: 100%; 
    height: 580px; 
    overflow: hidden; 
    background-color: #f7f7f7; 
    border-radius: 4px; 
}
.news-img-holder img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    transition: transform 0.6s ease; 
}
.news-img-holder:hover img { 
    transform: scale(1.02); 
}
.news-content-box { 
    padding-top: 25px; 
    text-align: left; 
}
.news-main-title { 
    font-size: 24px; 
    font-weight: bold; 
    color: #111111; 
    margin-bottom: 12px; 
    line-height: 1.4; 
    transition: 0.3s; 
    text-decoration: none; 
    display: block; 
}
.news-main-title:hover { 
    color: #8a1f1f; 
}
.news-readmore { 
    font-size: 14px; 
    color: #333333; 
    font-weight: 500; 
    text-decoration: none; 
    display: inline-block; 
    margin-bottom: 8px; 
    border-bottom: 1px solid #333333; 
    padding-bottom: 2px; 
    transition: 0.3s; 
}
.news-readmore:hover { 
    color: #8a1f1f; 
    border-color: #8a1f1f; 
}
.news-date { 
    font-size: 13px; 
    color: #999999; 
}

@media (max-width: 991px) { 
    .news-section { padding: 40px 0 60px 0; } 
    .news-img-holder { height: 300px; } 
    .news-main-title { font-size: 18px; } 
}

/* ================= 8. Footer（页脚）样式 ================= */
.custom-footer { 
    background-color: #ededed; 
    color: #222222; 
    padding: 80px 0 40px 0; 
    font-size: 14.5px; 
}
.footer-clinic-title { 
    font-size: 16px; 
    font-weight: 500; 
    margin-bottom: 15px; 
    color: #000000; 
}
.footer-address { 
    font-size: 14px; 
    color: #444444; 
    margin-bottom: 5px; 
}
.footer-section-title { 
    font-size: 15px; 
    font-weight: bold; 
    color: #9b7250; 
    margin-bottom: 20px; 
    letter-spacing: 0.5px; 
}
.appointment-box { 
    margin-top: 25px; 
}
.appointment-title { 
    font-size: 15px; 
    font-weight: bold; 
    color: #000000; 
    margin-bottom: 8px; 
}
.appointment-links a { 
    color: #9b7250; 
    text-decoration: none; 
    margin-right: 8px; 
    font-weight: 500; 
    transition: 0.3s; 
    border-bottom: 1px solid transparent; 
}
.appointment-links a:hover { 
    color: #8a1f1f; 
    border-color: #8a1f1f; 
}
.appointment-links span { 
    color: #888888; 
    margin-right: 8px; 
}
.footer-search-bar { 
    position: relative; 
    max-width: 240px; 
    margin-top: 20px; 
}
.footer-search-bar input { 
    width: 100%; 
    padding: 6px 35px 6px 30px; 
    border: 1px solid #cccccc; 
    border-radius: 20px; 
    background-color: #ffffff; 
    font-size: 13px; 
    color: #333333; 
    outline: none; 
}
.footer-search-bar .bi-search { 
    position: absolute; 
    left: 12px; 
    top: 50%; 
    transform: translateY(-50%); 
    color: #666666; 
    font-size: 13px; 
}
.footer-search-bar .bi-mic { 
    position: absolute; 
    right: 12px; 
    top: 50%; 
    transform: translateY(-50%); 
    color: #666666; 
    font-size: 13px; 
}
.footer-services-list { 
    list-style: none; 
    padding-left: 0; 
    margin-bottom: 0; 
}
.footer-services-list li { 
    margin-bottom: 12px; 
    color: #222222; 
    font-size: 14.5px; 
}

.footer-services-list li a{color:#000; text-decoration:none}
.footer-services-list li a:link{color:#000; text-decoration:none}
.footer-services-list li a:hover{color:#000; text-decoration:none}
.footer-bottom-bar { 
    border-top: 1px solid #dbdbdb; 
    margin-top: 60px; 
    padding-top: 30px; 
    text-align: center; 
    font-size: 13px; 
    color: #444444; 
}
.footer-privacy-link { 
    color: #9b7250; 
    text-decoration: underline; 
    transition: 0.3s; 
    display: inline-block; 
    margin-top: 8px; 
}
.footer-privacy-link:hover { 
    color: #8a1f1f; 
}
.cookie-bar { 
    background-color: #ffffff; 
    border-top: 1px solid #e5e5e5; 
    padding: 12px 24px; 
    font-size: 12px; 
    color: #333333; 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    position: relative; 
}
.cookie-btn-ok { 
    background-color: #927157; 
    color: #ffffff; 
    border: none; 
    padding: 4px 16px; 
    font-size: 12px; 
    border-radius: 4px; 
    cursor: pointer; 
    transition: 0.3s; 
    font-weight: 500; 
}
.cookie-btn-ok:hover { 
    background-color: #765a44; 
}

@media (max-width: 991px) {
    .custom-footer { text-align: center; padding: 50px 0 20px 0; }
    .footer-search-bar { margin: 20px auto 40px auto; }
    .footer-bottom-bar { margin-top: 40px; }
    .cookie-bar { flex-direction: column; text-align: center; gap: 10px; }
}



/* ==========================================================================
   4. 高级定制分页组件 (Custom Pagination)
   ========================================================================== */
   
   /* ==========================================================================
   3. 新闻列表主区块 - 完美交错式排版 (News List Layout)
   ========================================================================== */
.news-list-section {
    padding: 80px 0 60px 0;
    background-color: #ffffff;
}

/* 面包屑与页面标题区 */
.page-header-box {
    margin-bottom: 60px;
}

.page-title {
    font-size: 28px;
    font-weight: bold;
    color: #111111;
    letter-spacing: 1px;
}

/* 新闻列表行距 */
.news-list-row {
    margin-bottom: 100px;
    align-items: center;
}

/* 图片平切无边框设计与微浮动特效 */
.news-card-img-wrapper {
    width: 100%;
    height: 300px;
    overflow: hidden;
    display: flex;
    justify-content: center; /* 水平居中 */
    align-items: center;     /* 垂直居中 */
    background-color: #f7f7f7;
}

.news-card-img-wrapper img {
    max-width: 100%;
    max-height: 100%; /* 建议加上 max-height，防止高图超出容器 */
    height: auto;
    width: auto;
    object-fit: cover;
    /* object-fit: cover; */
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.news-card-img-wrapper:hover img {
    transform: scale(1.02);
}

/* 新闻图文间距与文本样式 */
.news-card-text-box {
    padding: 0 10px;
}

.news-card-date {
    font-size: 14px;
    font-family: 'Georgia', serif;
    color: #666666;
    margin-bottom: 15px;
    letter-spacing: 0.5px;
}

.news-card-title {
    font-size: 1.2rem;
    font-weight: 500;
    color: #000000;
    line-height: 1.4;
    margin-bottom: 25px;
    text-decoration: none;
    display: block;
    transition: color 0.3s ease;
}

.news-card-title:hover {
    color: #8a1f1f;
}

/* 优雅的棕色 Read More 超链接 */
.news-card-link {
    font-size: 14px;
    font-family: 'Georgia', serif;
    color: #9b7250;
    text-decoration: none;
    font-weight: 500;
    display: inline-block;
    border-bottom: 1px solid #9b7250;
    padding-bottom: 3px;
    transition: all 0.3s ease;
}

.news-card-link:hover {
    color: #8a1f1f;
    border-color: #8a1f1f;
}

/* 移动端新闻列表适配优化 */
@media (max-width: 991px) {
    .news-list-section { padding: 40px 0; }
    .news-list-row { margin-bottom: 50px; }
    .news-card-title { font-size: 20px; margin-bottom: 15px; }
    
    /* 移动端取消电脑端的右对齐与特殊内边距，统一恢复左对齐直觉 */
    .text-lg-end { text-align: left !important; } 
    .pe-lg-5 { padding-right: 0 !important; }
    .ps-lg-5 { padding-left: 0 !important; }
}

.custom-pagination-container {
    margin-top: 20px;
    margin-bottom: 80px;
}

.custom-pagination {
    display: flex;
    justify-content: center;
    list-style: none;
    padding-left: 0;
    gap: 10px;
}

.custom-pagination .page-item .page-link {
    border: 1px solid #dddddd;
    color: #555555;
    background-color: #ffffff;
    padding: 8px 16px;
    font-size: 14px;
    text-decoration: none;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.custom-pagination .page-item:hover .page-link {
    background-color: #fcf4f4;
    color: #8a1f1f;
    border-color: #8a1f1f;
}

/* 激活状态高亮 */
.custom-pagination .page-item.active .page-link {
    background-color: #8a1f1f;
    border-color: #8a1f1f;
    color: #ffffff;
    font-weight: bold;
}

/* 禁用状态 */
.custom-pagination .page-item.disabled .page-link {
    color: #cccccc;
    background-color: #fafafa;
    border-color: #eeeeee;
    pointer-events: none;
}



/* ==========================================================================
   3. 【新增】联系我们主区块 - 极简东方留白美学 (Contact Us Layout)
   ========================================================================== */
.contact-section {
    padding: 100px 0 120px 0;
    background-color: #ffffff;
}

/* 左侧文本排版样式 */
.contact-title {
    font-family: 'Georgia', 'Times New Roman', serif;
    font-size: 48px;
    font-weight: 400;
    color: #111111;
    margin-bottom: 50px;
    letter-spacing: -0.5px;
}

.contact-info-group {
    margin-bottom: 35px;
}

.contact-info-label {
    font-size: 14px;
    font-weight: bold;
    color: #000000;
    margin-bottom: 8px;
    text-transform: capitalize;
}

.contact-info-value {
    font-size: 15px;
    color: #444444;
    line-height: 1.6;
}
.contact-info-value a{
    font-size: 15px;
    color: #444444;
    text-decoration: none;
    line-height: 1.6;
}
/* 联系页面的特殊预约链接设计 */
.contact-appointment-links {
    margin-top: 5px;
}
.contact-appointment-links a {
    color: #9b7250;
    text-decoration: none;
    font-weight: 500;
    border-bottom: 1px solid #9b7250;
    padding-bottom: 2px;
    margin-right: 12px;
    transition: all 0.3s ease;
}
.contact-appointment-links a:hover {
    color: #8a1f1f;
    border-color: #8a1f1f;
}

/* 搜索样式的语音框输入组件 */
.contact-voice-search {
    position: relative;
    max-width: 260px;
    margin-top: 25px;
}
.contact-voice-search input {
    width: 100%;
    padding: 8px 40px 8px 35px;
    border: 1px solid #cccccc;
    border-radius: 25px;
    background-color: #ffffff;
    font-size: 14px;
    color: #333333;
    outline: none;
}
.contact-voice-search .bi-search {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #666666;
}
.contact-voice-search .bi-mic {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #666666;
}

/* 右侧大图容器：完美复刻图9的四个大圆角弧度 */
.contact-img-wrapper {
    width: 100%;
    height: 100%;
    min-height: 480px;
    overflow: hidden;
    border-radius: 45px; /* 极具现代流线美的大圆角 */
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.04);
}
.contact-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 991px) {
    .contact-section { padding: 50px 0; }
    .contact-title { font-size: 36px; margin-bottom: 35px; }
    .contact-img-wrapper { min-height: 320px; margin-top: 40px; border-radius: 30px; }
}



/* ==========================================================================
   3. 【新增】关于我们页面专用样式 (About Us Premium Layout)
   ========================================================================== */
.about-hero-section {
    padding: 100px 0 80px 0;
    background-color: #ffffff;
}

/* 经典大气的 Serif 英文字体标题 */
.about-serif-title {
    font-family: 'Georgia', 'Times New Roman', serif;
    font-size: 42px;
    font-weight: 400;
    color: #111111;
    margin-bottom: 25px;
}

.about-subtitle {
    font-size: 16px;
    font-weight: 500;
    color: #666666;
    letter-spacing: 2px;
    margin-bottom: 30px;
}

/* 带有圆角的图片容器 */
.about-img-box {
    border-radius: 30px;
    overflow: hidden;
    width: 100%;
}
.about-img-box img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* 特殊的古典拱形门框图设计 */
.about-arch-img-box {
    border-radius: 160px 160px 20px 20px;
    overflow: hidden;
    width: 100%;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
}
.about-arch-img-box img {
    width: 100%;
    height: auto;
}

/* 描述性段落 */
.about-desc-text {
    font-size: 15px;
    color: #444444;
    line-height: 2;
    text-align: justify;
}

/* 高端褐色实体按钮 */
.about-btn-brown {
    background-color: #a38165;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 500;
    padding: 12px 35px;
    border: none;
    border-radius: 4px;
    display: inline-block;
    transition: background-color 0.3s;
}
.about-btn-brown:hover {
    background-color: #8c6b51;
}


/* 响应式媒体查询适配 */
@media (max-width: 991px) {
    .about-serif-title { font-size: 32px; text-align: center; }
    .about-subtitle { text-align: center; }
    .about-desc-text { font-size: 14.5px; }
    .custom-footer { text-align: center; padding: 50px 0 20px 0; }
    .footer-search-bar { margin: 20px auto 40px auto; }
    .footer-bottom-bar { margin-top: 40px; }
    .cookie-bar { flex-direction: column; text-align: center; gap: 10px; position: static; }
}


/* ==========================================================================
   3. 【新增】服务页面专用样式 (Services Premium Layout)
   ========================================================================== */
.services-hero {
    padding: 90px 0 60px 0;
    background-color: #fafafa;
    text-align: center;
}
.services-hero-title {
    font-family: 'Georgia', 'Times New Roman', serif;
    font-size: 45px;
    color: #111111;
    margin-bottom: 15px;
}
.services-hero-subtitle {
    font-size: 15px;
    color: #9b7250;
    letter-spacing: 3px;
    text-transform: uppercase;
}

/* 服务核心分类卡片矩阵 */
.service-grid-section {
    padding: 80px 0;
    background-color: #ffffff;
}
.service-main-card {
    background: #ffffff;
    border: 1px solid #eeeeee;
    border-radius: 24px;
    padding: 40px 30px;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
}
.service-main-card:hover {
    transform: translateY(-8px);
    border-color: #8a1f1f;
    box-shadow: 0 20px 40px rgba(138, 31, 31, 0.05);
}
.service-icon-wrapper {
    width: 70px;
    height: 70px;
    background-color: #fcf4f4;
    color: #8a1f1f;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px auto;
    font-size: 28px;
    transition: all 0.3s;
}
.service-main-card:hover .service-icon-wrapper {
    background-color: #8a1f1f;
    color: #ffffff;
}
.service-card-title {
    font-size: 20px;
    font-weight: bold;
    color: #111111;
    margin-bottom: 15px;
}
.service-card-desc {
    font-size: 14px;
    color: #666666;
    line-height: 1.8;
    margin-bottom: 25px;
}
.service-card-btn {
    font-size: 13.5px;
    color: #9b7250;
    font-weight: 500;
    border-bottom: 1px solid #9b7250;
    padding-bottom: 2px;
    transition: all 0.3s;
}
.service-main-card:hover .service-card-btn {
    color: #8a1f1f;
    border-color: #8a1f1f;
}

/* 深度图文介绍大块 (1:1 交错排版) */
.service-detail-row {
    margin-bottom: 100px;
    align-items: center;
}
.service-detail-img-box {
    border-radius: 35px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0,0,0,0.03);
}
.service-detail-tag {
    font-size: 12px;
    font-weight: bold;
    color: #a38165;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 15px;
}
.service-detail-title {
    font-size: 32px;
    font-weight: 500;
    color: #111111;
    margin-bottom: 20px;
}
.service-detail-p {
    font-size: 14.5px;
    color: #555555;
    line-height: 2;
    text-align: justify;
    margin-bottom: 25px;
}
.service-bullet-list {
    padding-left: 0;
    margin-bottom: 30px;
}
.service-bullet-list li {
    font-size: 14px;
    color: #222222;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}
.service-bullet-list li i {
    color: #8a1f1f;
    margin-right: 10px;
    font-size: 16px;
}

 /* ==========================================================================
   8. 【图13专属】服务页面 1:1 终极高保真还原样式 (Image 13 Service Styles)
   ========================================================================== */

/* 顶部：中醫的養生智慧 - 上工治未病 */
.tcm-hero-banner {
    position: relative;
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), 
                url('https://images.unsplash.com/photo-1502082553048-f009c37129b9?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
    padding: 120px 0;
    color: #ffffff;
    text-align: center;
}
.tcm-hero-tag {
    font-size: 14px;
    letter-spacing: 4px;
    color: #dddddd;
    margin-bottom: 10px;
}
.tcm-hero-main-title {
    font-size: 42px;
    font-weight: bold;
    letter-spacing: 2px;
    margin-bottom: 25px;
}
.tcm-hero-desc {
    font-size: 13.5px;
    max-width: 800px;
    margin: 0 auto;
    line-height: 2;
    color: #eeeeee;
}

/* 九大服务细分矩阵网格 */
.tcm-grid-section {
    padding: 80px 0;
    background-color: #ffffff;
}
.tcm-grid-item {
    margin-bottom: 40px;
}
.tcm-grid-title {
    font-size: 15px;
    font-weight: bold;
    color: #000000;
    margin-bottom: 10px;
}
.tcm-grid-desc {
    font-size: 13px;
    color: #555555;
    line-height: 1.8;
    text-align: justify;
}

/* 中部：我們有哪些服務？带绿色植物树影大 Banner */
.tcm-middle-banner {
    background: linear-gradient(rgba(0,0,0,0.65), rgba(0,0,0,0.65)), 
                url('https://images.unsplash.com/photo-1448375240586-882707db888b?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
    padding: 90px 0;
    color: #ffffff;
    text-align: center;
}
.tcm-middle-tag {
    font-size: 13px;
    letter-spacing: 2px;
    color: #cccccc;
    margin-bottom: 10px;
}
.tcm-middle-title {
    font-size: 32px;
    font-weight: 500;
    margin-bottom: 20px;
}
.tcm-middle-desc {
    font-size: 13.5px;
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.8;
    color: #dddddd;
}

/* 浅灰色块看诊价格及描述卡片 */
.tcm-gray-card {
    background-color: #f7f7f7;
    padding: 35px 25px;
    text-align: center;
    height: 100%;
}
.tcm-card-header {
    font-size: 18px;
    font-weight: bold;
    color: #000000;
    margin-bottom: 5px;
}
.tcm-card-time {
    font-size: 12px;
    color: #777777;
    margin-bottom: 20px;
}
.tcm-card-body-text {
    font-size: 13px;
    color: #333333;
    line-height: 1.8;
    text-align: justify;
    margin-bottom: 15px;
}
.tcm-card-bullet {
    list-style: none;
    padding-left: 0;
    text-align: left;
    font-size: 12.5px;
    color: #444444;
    margin-top: 15px;
}
.tcm-card-bullet li {
    margin-bottom: 8px;
    position: relative;
    padding-left: 18px;
}
.tcm-card-bullet li::before {
    content: "•";
    color: #9b7250;
    position: absolute;
    left: 4px;
    font-weight: bold;
}

/* 经典暗调大山背景大Banner (Personalized...) */
.tcm-mountain-banner {
    background: linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.2)), 
                url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
    padding: 140px 0;
    color: #ffffff;
    text-align: center;
}
.tcm-mountain-tag {
    font-size: 14px;
    color: #ffffff;
    margin-bottom: 15px;
}
.tcm-mountain-title {
    font-family: 'Georgia', serif;
    font-size: 46px;
    font-weight: 400;
    margin-bottom: 30px;
}
.tcm-btn-outline-white {
    border: 1px solid #ffffff;
    color: #ffffff;
    background: transparent;
    font-size: 13px;
    padding: 10px 30px;
    transition: all 0.3s;
}
.tcm-btn-outline-white:hover {
    background-color: #ffffff;
    color: #000000;
}

/* 横向超大流动跑马灯：治未病？如何透过中医养生 */
.tcm-giant-marquee {
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    padding: 30px 0;
    overflow: hidden;
    white-space: nowrap;
    background-color: #ffffff;
}
.tcm-giant-marquee-content {
    display: inline-block;
    font-size: 45px;
    font-weight: bold;
    color: #000000;
}

/* 1234定期针灸细化排版 */
.tcm-numbered-section {
    padding: 80px 0;
    background-color: #ffffff;
}
.tcm-numbered-list {
    list-style: none;
    padding-left: 0;
    font-size: 13.5px;
    line-height: 2;
    color: #333333;
}
.tcm-numbered-list strong {
    color: #000000;
}
.tcm-numbered-sublist {
    list-style: none;
    padding-left: 15px;
}
.tcm-highlight-brown {
    color: #a38165;
    font-weight: bold;
    text-decoration: underline;
}

/* 会员专属特权与健康不将就区块 */
.tcm-member-section {
    background-color: #f2f2f2;
    padding: 60px 0;
}
.tcm-member-tag {
    font-size: 13px;
    color: #666666;
    margin-bottom: 10px;
}
.tcm-member-title {
    font-size: 24px;
    font-weight: bold;
    color: #000000;
}
.tcm-member-link {
    font-size: 12px;
    color: #333333;
    text-decoration: underline;
    display: block;
    margin-bottom: 5px;
}

/* 横向极简连续走字：健康的关键在于预防 */
.tcm-thin-marquee {
    border-top: 1px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
    padding: 15px 0;
    overflow: hidden;
    white-space: nowrap;
    font-size: 13px;
    color: #444444;
}

/* 底部：FAQs 问答手风琴订制样式 */
.tcm-faq-section {
    padding: 80px 0;
    background-color: #ffffff;
}
.tcm-faq-heading {
    font-family: 'Georgia', serif;
    font-size: 40px;
    text-align: center;
    margin-bottom: 50px;
}
.tcm-faq-accordion .accordion-item {
    border: none;
    border-bottom: 1px solid #dddddd;
    border-radius: 0;
}
.tcm-faq-accordion .accordion-button {
    font-size: 14px;
    color: #000000;
    font-weight: 500;
    background-color: transparent;
    padding: 20px 0;
    box-shadow: none;
}
.tcm-faq-accordion .accordion-button:not(.collapsed) {
    color: #8a1f1f;
    background-color: transparent;
}
.tcm-faq-accordion .accordion-body {
    padding: 0 0 20px 0;
    font-size: 13.5px;
    color: #555555;
    line-height: 1.8;
}

@media (max-width: 991px) {
    .tcm-hero-main-title { font-size: 32px; }
    .tcm-giant-marquee-content { font-size: 28px; }
    .tcm-mountain-title { font-size: 30px; }
}


/* ==========================================================================
   9. 【圖 image_f9403d.png 專屬】藥食同源頁面 1:1 復刻樣式
   ========================================================================== */

/* 頂部超大交錯字體區 */
.diet-giant-title-row {
    overflow: hidden;
    white-space: nowrap;
    padding: 60px 0 30px 0;
    background-color: #ffffff;
}
.diet-giant-text {
    font-size: 55px;
    font-weight: bold;
    color: #111111;
    letter-spacing: 2px;
}

/* 頂部三欄不對稱交錯結構 */
.diet-intro-section {
    background-color: #ffffff;
    padding-bottom: 90px;
}
.diet-intro-p {
    font-size: 13.5px;
    color: #222222;
    line-height: 2;
    text-align: justify;
}
.diet-center-img-box {
    width: 100%;
    max-width: 380px;
    margin: 0 auto;
    box-shadow: 0 15px 40px rgba(0,0,0,0.04);
}
.diet-center-img-box img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* 核心產品三欄大圓角矩陣 */
.diet-product-section {
    background-color: #fcfcfc;
    padding: 100px 0;
}
.diet-prod-card {
    text-align: center;
    margin-bottom: 40px;
}
.diet-prod-img-wrapper {
    border-radius: 32px; /* 完美復刻圖中的大圓角曲線 */
    overflow: hidden;
    margin-bottom: 25px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    aspect-ratio: 1 / 1; /* 保持正方形比例 */
}
.diet-prod-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}
.diet-prod-card:hover .diet-prod-img-wrapper img {
    transform: scale(1.04);
}
.diet-prod-title {
    font-size: 14.5px;
    font-weight: bold;
    color: #9b7250; /* 經典雅緻咖色 */
    margin-bottom: 15px;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.diet-prod-desc {
    font-size: 12.5px;
    color: #666666;
    line-height: 1.6;
}

/* 底部高山迷霧樹海 Banner */
.diet-forest-banner {
    position: relative;
    background: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.25)), 
                url('https://images.unsplash.com/photo-1448375240586-882707db888b?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
    padding: 160px 0;
    color: #ffffff;
    text-align: center;
}
.diet-forest-title {
    font-size: 38px;
    font-weight: bold;
    letter-spacing: 4px;
    margin-bottom: 25px;
}
.diet-forest-desc {
    font-size: 13.5px;
    max-width: 680px;
    margin: 0 auto;
    line-height: 2;
    color: #f5f5f5;
    letter-spacing: 0.5px;
}

/* 響應式優化 */
@media (max-width: 991px) {
    .diet-giant-text { font-size: 32px; }
    .diet-intro-section { padding-bottom: 50px; }
    .diet-product-section { padding: 60px 0; }
    .diet-forest-title { font-size: 28px; }
    .diet-forest-banner { padding: 100px 0; }
}



/* ==========================================================================
   10. 【圖 image_fa20bf.png 專屬】諮詢與預約須知頁面 1:1 復刻樣式
   ========================================================================== */

/* 頂部極簡大氣標題區 */
.consult-hero {
    text-align: center;
    padding: 60px 0 40px 0;
    background-color: #ffffff;
}
.consult-hero-top-p {
    font-size: 13px;
    color: #444444;
    letter-spacing: 1px;
    margin-bottom: 8px;
}
.consult-how-to-book {
    font-family: 'Georgia', serif;
    font-size: 32px;
    color: #222222;
    margin-bottom: 15px;
}
.consult-main-title {
    font-family: 'Georgia', serif;
    font-size: 48px;
    font-weight: 300;
    color: #000000;
    letter-spacing: 2px;
    margin-bottom: 25px;
}
.consult-main-title span {
    font-style: italic;
    border-bottom: 1px solid #000000;
    padding-bottom: 2px;
}
.consult-hero-bottom-p {
    font-size: 13px;
    color: #666666;
    letter-spacing: 2px;
}

/* 諮詢問答交錯對話流結構 */
.consult-qa-section {
    padding: 80px 0;
    background-color: #ffffff;
}
.consult-qa-row {
    margin-bottom: 90px;
    align-items: center;
}
.consult-qa-title {
    font-size: 22px;
    font-weight: bold;
    color: #111111;
    line-height: 1.5;
    margin-bottom: 20px;
    position: relative;
}
.consult-qa-p {
    font-size: 13px;
    color: #444444;
    line-height: 2;
    text-align: justify;
    margin-bottom: 15px;
}
.consult-circle-img {
    width: 220px;
    height: 220px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto;
    box-shadow: 0 10px 25px rgba(0,0,0,0.04);
}
.consult-circle-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 橫向過渡小深色 Banner (初次來診所，請選擇初診診療) */
.consult-mid-dark-banner {
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), 
                url('https://images.unsplash.com/photo-1448375240586-882707db888b?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
    padding: 60px 0;
    color: #ffffff;
    text-align: center;
}
.consult-mid-title {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 2px;
    margin-bottom: 10px;
}
.consult-mid-subtitle {
    font-size: 12px;
    color: #cccccc;
}

/* 底部：準備好迎接更健康美好的自己了嗎？ */
.consult-ready-section {
    background-color: #f7f7f7;
    padding: 100px 0;
    text-align: center;
}
.consult-ready-title {
    font-size: 32px;
    font-weight: bold;
    color: #111111;
    margin-bottom: 30px;
    letter-spacing: 2px;
}
.consult-ready-p {
    font-size: 14px;
    color: #444444;
    max-width: 650px;
    margin: 0 auto 40px auto;
    line-height: 2;
}
.consult-btn-brown-large {
    background-color: #a38165;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 500;
    padding: 15px 50px;
    border-radius: 4px;
    display: inline-block;
    letter-spacing: 2px;
    transition: background 0.3s;
}
.consult-btn-brown-large:hover {
    background-color: #8c6b51;
}

/* 底部聯絡小圖標組合 */
.consult-footer-icons {
    margin-top: 40px;
    display: flex;
    justify-content: center;
    gap: 30px;
}
.consult-footer-icons a {
    font-size: 24px;
    color: #333333;
    transition: color 0.3s;
}
.consult-footer-icons a:hover {
    color: #8a1f1f;
}

/* 響應式微調 */
@media (max-width: 991px) {
    .consult-main-title { font-size: 36px; }
    .consult-qa-title { font-size: 18px; text-align: center; }
    .consult-qa-row { margin-bottom: 50px; text-align: justify; }
    .consult-circle-img { margin-bottom: 25px; width: 180px; height: 180px; }
    .consult-ready-title { font-size: 24px; }
}


/* ==========================================================================
   11. 【圖 image_fafedb.png 專屬】套餐頁面 1:1 終極高保真復刻樣式
   ========================================================================== */

/* 頂部奢華優雅標題區 */
.pkg-hero {
    text-align: center;
    padding: 80px 0 50px 0;
    background-color: #ffffff;
}
.pkg-hero-en {
    font-family: 'Georgia', serif;
    font-size: 26px;
    color: #a38165;
    letter-spacing: 1px;
    margin-bottom: 20px;
}
.pkg-hero-bold-desc {
    font-size: 14px;
    font-weight: bold;
    color: #111111;
    max-width: 800px;
    margin: 0 auto 50px auto;
    line-height: 2;
}
.pkg-main-title {
    font-size: 26px;
    color: #000000;
    letter-spacing: 4px;
    margin-bottom: 5px;
}
.pkg-main-subtitle {
    font-family: 'Georgia', serif;
    font-size: 13px;
    color: #a38165;
    letter-spacing: 1px;
}

/* What you'll get 八大優勢網格 */
.pkg-why-section {
    padding: 80px 0;
    background-color: #ffffff;
}
.pkg-why-grid-item {
    margin-bottom: 50px;
    padding: 0 25px;
}
.pkg-why-title {
    font-size: 18px;
    font-weight: bold;
    color: #111111;
    margin-bottom: 15px;
    letter-spacing: 1px;
}
.pkg-why-desc {
    font-size: 12.5px;
    color: #444444;
    line-height: 1.8;
}

/* 做月子觀念宣導區 */
.pkg-concept-section {
    background-color: #ffffff;
    padding-bottom: 80px;
}
.pkg-concept-box {
    max-width: 850px;
    margin: 0 auto;
}
.pkg-concept-left-title {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.4;
    color: #111111;
}

/* 橫向過渡淡樹影長條 */
.pkg-transition-bar {
    background: linear-gradient(rgba(255,255,255,0.85), rgba(255,255,255,0.85)), 
                url('https://images.unsplash.com/photo-1448375240586-882707db888b?auto=format&fit=crop&w=1800&q=80') center/center no-repeat;
    padding: 50px 0;
    text-align: center;
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
}
.pkg-trans-title {
    font-size: 20px;
    color: #555555;
    letter-spacing: 6px;
    margin-bottom: 12px;
}

/* 三大天數核心套餐級別結構 */
.pkg-matrix-container {
    padding: 80px 0;
    background-color: #ffffff;
}
.pkg-matrix-header-title {
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    color: #000000;
    margin-bottom: 50px;
    letter-spacing: 2px;
}

/* 三卡片對比列（Bronze / Silver / Gold） */
.pkg-card {
    background-color: #f4f4f4; /* 完美還原長圖中的淺灰底色 */
    padding: 40px 25px;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.pkg-card-tier {
    font-family: 'Georgia', serif;
    font-size: 18px;
    font-weight: bold;
    color: #222222;
    text-align: center;
    margin-bottom: 10px;
}
.pkg-card-price {
    font-size: 13px;
    color: #555555;
    text-align: center;
    margin-bottom: 30px;
}
.pkg-card-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
    font-size: 11.5px;
    color: #111111;
    line-height: 1.8;
}
.pkg-card-list li {
    margin-bottom: 10px;
    position: relative;
    padding-left: 14px;
    text-align: left;
}
.pkg-card-list li.pkg-check::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #111111;
    font-weight: bold;
}
.pkg-card-list li.pkg-gift-header {
    font-weight: bold;
    text-align: center;
    padding-left: 0;
    margin-top: 20px;
    margin-bottom: 10px;
}
.pkg-card-list li.pkg-gift::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #a38165;
}

/* 響應式佈局調整 */
@media (max-width: 991px) {
    .pkg-concept-left-title { text-align: center; margin-bottom: 20px; font-size: 24px; }
    .pkg-why-grid-item { text-align: center; margin-bottom: 30px; }
    .pkg-card { margin-bottom: 30px; }
    .pkg-matrix-header-title { font-size: 22px; }
}


.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px;}
.pagination>li{display:inline;}
.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857;text-decoration:none;color:#337ab7;background-color:#fff;border:1px solid #ddd;margin-left:-1px;}
.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px;}
.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px;}
.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd;}
.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;background-color:#337ab7;border-color:#337ab7;cursor:default;}
