/* =========================================================
   Huaxia Journeys — Site closing block (footer)
   ========================================================= */

.hxf{
    background:#14100f;
    color:rgba(255,255,255,.72);
    font-family:inherit;
}

.hxf *{
    box-sizing:border-box;
}

.hxf-wrap{
    max-width:1240px;
    margin:0 auto;
    padding:0 32px;
}

/* ---------------- CTA ---------------- */
.hxf-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:56px;
    padding:66px 0 58px;
    border-bottom:1px solid rgba(255,255,255,.10);
}

.hxf-eyebrow{
    font-size:12px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    color:#ddbd91;
    margin:0 0 14px;
}

.hxf-cta h2{
    font-size:34px;
    font-weight:600;
    line-height:1.32;
    color:#fff;
    margin:0 0 14px;
}

.hxf-cta-sub{
    font-size:16px;
    line-height:1.75;
    color:rgba(255,255,255,.60);
    margin:0;
    max-width:560px;
}

.hxf-cta-btns{
    display:flex;
    flex-direction:column;
    gap:12px;
    flex:0 0 auto;
    min-width:290px;
}

.hxf-btn{
    display:block;
    font-size:15px;
    font-weight:600;
    line-height:1.2;
    text-align:center;
    text-decoration:none;
    padding:16px 26px;
    border-radius:3px;
    border:1px solid transparent;
    transition:background .18s ease, color .18s ease, border-color .18s ease;
}

.hxf-btn:focus-visible{
    outline:3px solid #b8d4ff;
    outline-offset:2px;
}

.hxf-btn-primary{
    background:#c8102e;
    color:#fff;
}

.hxf-btn-primary:hover{
    background:#a30c24;
    color:#fff;
}

.hxf-btn-ghost{
    background:transparent;
    color:#fff;
    border-color:rgba(255,255,255,.30);
}

.hxf-btn-ghost:hover{
    border-color:#ddbd91;
    color:#ddbd91;
}

/* ---------------- 主网格 ---------------- */
.hxf-grid{
    display:grid;
    grid-template-columns:1.6fr 1fr 1fr 1fr;
    gap:48px;
    padding:58px 0 50px;
    border-bottom:1px solid rgba(255,255,255,.10);
}

/* 选择器加 .hxf 是为了压过下方 .hxf-col a 的优先级 */
.hxf .hxf-logo{
    display:inline-block;
    font-size:22px;
    font-weight:700;
    line-height:1.2;
    letter-spacing:.3px;
    color:#fff;
    text-decoration:none;
}

.hxf .hxf-logo span{
    color:#ddbd91;
}

.hxf-brand-desc{
    font-size:14.5px;
    line-height:1.78;
    color:rgba(255,255,255,.58);
    margin:15px 0 22px;
    max-width:340px;
}

.hxf-social{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.hxf .hxf-social-btn{
    font-size:12px;
    padding:7px 13px;
    border:1px solid rgba(255,255,255,.20);
    border-radius:2px;
    color:rgba(255,255,255,.78);
    text-decoration:none;
    transition:border-color .18s ease, color .18s ease;
}

.hxf .hxf-social-btn:hover{
    border-color:#ddbd91;
    color:#ddbd91;
}

.hxf-col h3{
    font-size:12px;
    font-weight:700;
    letter-spacing:1.4px;
    text-transform:uppercase;
    color:#ddbd91;
    margin:0 0 18px;
}

.hxf-col ul{
    list-style:none;
    margin:0;
    padding:0;
}

.hxf-col li{
    margin:0 0 11px;
}

.hxf-col a{
    font-size:15px;
    color:rgba(255,255,255,.66);
    text-decoration:none;
    transition:color .18s ease;
}

.hxf-col a:hover{
    color:#fff;
    text-decoration:underline;
    text-underline-offset:3px;
}

/* 微信：点击复制，外观与同列链接保持一致 */
.hxf-wechat{
    display:inline-flex;
    align-items:baseline;
    gap:8px;
    background:none;
    border:0;
    padding:0;
    margin:0;
    font-family:inherit;
    font-size:15px;
    line-height:inherit;
    color:rgba(255,255,255,.66);
    text-align:left;
    cursor:pointer;
    transition:color .18s ease;
    -webkit-appearance:none;
    appearance:none;
}

.hxf-wechat:hover{
    color:#fff;
}

.hxf-wechat:focus-visible{
    outline:2px solid #ddbd91;
    outline-offset:3px;
    border-radius:3px;
}

.hxf-wechat-id{
    font-size:13px;
    color:rgba(255,255,255,.45);
    letter-spacing:.4px;
    transition:color .18s ease;
}

.hxf-wechat:hover .hxf-wechat-id{
    color:#ddbd91;
}

.hxf-note{
    font-size:13px;
    color:rgba(255,255,255,.40);
    margin:18px 0 0;
}

/* ---------------- 法务条 ---------------- */
.hxf-legal{
    padding:34px 0 44px;
}

.hxf-roles{
    font-size:13px;
    line-height:1.78;
    color:rgba(255,255,255,.48);
    margin:0 0 10px;
    max-width:940px;
}

.hxf-entity{
    font-size:12.5px;
    color:rgba(255,255,255,.36);
    margin:0 0 24px;
}

.hxf-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:16px;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.10);
}

.hxf-copy{
    font-size:13px;
    color:rgba(255,255,255,.44);
    margin:0;
}

.hxf-legalnav{
    display:flex;
    align-items:center;
    gap:22px;
}

.hxf-legalnav a{
    font-size:13px;
    color:rgba(255,255,255,.55);
    text-decoration:none;
}

.hxf-legalnav a:hover{
    color:#fff;
}

.hxf-linkbtn{
    background:none;
    border:none;
    padding:0;
    font:inherit;
    font-size:13px;
    color:rgba(255,255,255,.55);
    cursor:pointer;
}

.hxf-linkbtn:hover{
    color:#fff;
    text-decoration:underline;
    text-underline-offset:3px;
}

/* ---------------- 与主题/旧模块的整合 ---------------- */
/* 隐藏 Astra 只有一行版权的默认页脚行，以及旧的 connect 块，避免重复 */
.site-footer .site-below-footer-wrap,
.hxe-connect{
    display:none !important;
}

/* Astra 页脚原本只有一行版权，已由本区块承载；让它完全塌陷，避免留下空白色块 */
.site-footer{
    background:#14100f;
    border-top:0;
    padding:0 !important;
    margin:0 !important;
    min-height:0 !important;
}

/* 同意横幅显示期间，隐藏移动端悬浮联系条，避免两者重叠 */
body.hxc-visible .hxe-floatbar{
    display:none !important;
}

/* ---------------- 响应式 ---------------- */
@media (max-width:1000px){
    .hxf-cta{
        flex-direction:column;
        align-items:flex-start;
        gap:28px;
        padding:52px 0 44px;
    }
    .hxf-cta h2{ font-size:28px; }
    .hxf-cta-btns{ width:100%; min-width:0; }
    .hxf-grid{
        grid-template-columns:1fr 1fr;
        gap:38px;
        padding:46px 0 40px;
    }
}

@media (max-width:640px){
    .hxf-wrap{ padding:0 20px 64px; }
    .hxf-cta{ padding:42px 0 34px; gap:22px; }
    .hxf-cta h2{ font-size:24px; }
    .hxf-btn{ width:100%; }
    .hxf-grid{
        grid-template-columns:1fr;
        gap:34px;
        padding:36px 0 30px;
    }
    .hxf-brand-desc{ max-width:none; }
    .hxf-bottom{
        flex-direction:column;
        align-items:flex-start;
        gap:14px;
    }
    .hxf-legalnav{ gap:18px; flex-wrap:wrap; }
}
