/* ==========================================================================
   如意甘肃 · 手机端适配层
   只在小屏生效，桌面版布局保持不变。
   加载顺序放在各页原有样式之后，用于修正移动端间距与可读性。
   ========================================================================== */

@media (max-width: 760px) {
    html { -webkit-text-size-adjust: 100%; }
    body { overflow-x: hidden; }
    .container { width: calc(100% - 32px); max-width: none; }
    .section { padding: 3rem 0; }
    .section-head { margin-bottom: 2rem; }
    .section-head h2 { font-size: clamp(1.55rem, 7vw, 2.1rem); }

    /* 首屏按钮在手机上纵向铺开，避免两个按钮挤成一行 */
    .hero__content { width: 100%; padding-left: 20px; padding-right: 20px; }
    .hero__actions {
        flex-direction: column;
        align-items: stretch;
        gap: .7rem;
        width: 100%;
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
    }
    .hero__actions .btn { width: 100%; justify-content: center; }
    .hero__meta { flex-wrap: wrap; justify-content: center; gap: .55rem 1rem; }

    /* 页脚在手机上两列排布 */
    .footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
    .footer__col--brand { grid-column: 1 / -1; }
    .footer { padding-bottom: calc(2rem + env(safe-area-inset-bottom)); }
}

/* ---------- 城市专题：云纹不要压住标题 ---------- */
@media (max-width: 900px) {
    body.cities-page .spot-band--bleed { margin-bottom: -22px; }
    body.cities-page #cities { padding-top: calc(var(--cities-nav-height, 58px) + 8px) !important; }
    body.cities-page .cities-intro { padding-top: 1rem; }
    body.cities-page .cities-intro h1 {
        margin: .45rem 0 .55rem;
        font-size: clamp(1.55rem, 7vw, 2.05rem);
        line-height: 1.42;
    }
    body.cities-page .ch__frame { height: clamp(310px, 82vw, 430px); }
    body.cities-page .ch__copy { left: 1rem; right: 1rem; bottom: 1rem; }
    body.cities-page .ch__name { font-size: clamp(2rem, 11vw, 3rem); }
}

/* ---------- 美食页：首屏文字改用浅色，推荐卡改为宽卡横滑 ---------- */
@media (max-width: 600px) {
    body.food-page .food-hero__copy { color: #fbf2df; }
    body.food-page .food-hero h1 {
        color: #fbf2df;
        text-shadow: 0 2px 16px rgba(0, 0, 0, .32);
    }
    body.food-page .food-hero p { color: rgba(251, 242, 223, .84); }
    body.food-page .food-hero .food-eyebrow { color: #e8c987; }
    body.food-page .food-hero__actions > a:last-child {
        color: #fbf2df;
        border-color: rgba(255, 245, 225, .5);
        background: rgba(255, 245, 225, .08);
    }
    body.food-page .food-featured .food-grid {
        grid-auto-columns: min(78vw, 330px);
        gap: 14px;
        padding-right: 8px;
    }
    body.food-page .food-featured .food-card h3 { font-size: 18px; }
    body.food-page .food-featured .food-card__visual { aspect-ratio: 4 / 3; }
}

/* ---------- 国潮子页：页头说明在浅色底上保证对比度 ---------- */
@media (max-width: 760px) {
    body.gc-page.gc-sub .gc-phead {
        background: rgba(248, 243, 233, .9) !important;
        border-radius: 0 0 14px 14px;
        padding-bottom: 1.1rem;
    }
    body.gc-page.gc-sub .gc-phead p { color: #405047; }
    body.gc-page.gc-sub .gc-crumb { background: rgba(248, 243, 233, .86); }
}

/* ---------- 路线页：手机端缩略图与文字比例 ---------- */
@media (max-width: 600px) {
    body.routes-page .rt-hero { padding-top: 5.2rem; }
    body.routes-page .rt-hero__title { font-size: clamp(1.8rem, 8.5vw, 2.4rem); }
    body.routes-page .rt-head { grid-template-columns: 72px minmax(0, 1fr); gap: .8rem; }
    body.routes-page .rt-thumb { width: 72px; height: 64px; }
    body.routes-page .rt-title { font-size: 1.08rem; }
    body.routes-page .rt-meta { gap: .5rem; }
}
