/* ============================================================================
 * anhe · responsive.css
 * ----------------------------------------------------------------------------
 * 三档断点：1080（窄桌面）/ 900（平板，导航抽屉 + 悬浮条）/ 640（手机）
 * 原则：
 *   1. 只做「必须变」的重排，不逐像素微调 —— 桌面样式是基线，窄屏只改栅格
 *   2. 移动端触控目标 ≥ 44px；表格横向滚动而不是压缩字号
 *   3. 不用 100vh（移动端浏览器地址栏会吃掉高度），用 100dvh 的只有抽屉
 * ========================================================================== */

@media (max-width:1080px){
  :root{--ah-wrap:100%}

  .ah-hero__in{grid-template-columns:minmax(0,1fr) minmax(0,.72fr);gap:40px;padding-top:56px;padding-bottom:54px}
  .ah-hero__fig{max-width:380px}

  .ah-sec{padding:60px 0}
  .ah-sec__hd{gap:18px;margin-bottom:30px}

  .ah-adv{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ah-svc{gap:0 36px}
  .ah-svc__fig{flex-basis:164px}
  .ah-doc{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
  .ah-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 22px}
  .ah-flow__i:nth-child(4),.ah-flow__i:nth-child(5){margin-top:6px}
  .ah-list__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ah-list--doc .ah-list__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ah-news,.ah-faq{gap:0 36px}
}

@media (max-width:900px){
  /* ---------- 导航抽屉 ---------- */
  /* 抽屉铺满视口，但页头整体压在它上面（背景改为实色，否则会透出抽屉内容）；
     抽屉首屏留出页头高度，品牌与关闭按钮始终可见、可点 */
  .ah-hd{z-index:70;background:var(--ah-paper);backdrop-filter:none;-webkit-backdrop-filter:none}
  /* 品牌与汉堡必须叠在抽屉之上：抽屉是页头的子元素，不给层级就会被它盖住 */
  .ah-brand,.ah-burger{position:relative;z-index:61}
  .ah-burger{display:flex}
  .ah-nav{
    position:fixed;left:0;right:0;top:0;bottom:0;height:100dvh;
    margin:0;padding:calc(var(--ah-hd-h) + 14px) 24px 32px;
    background:var(--ah-paper);
    flex-direction:column;align-items:stretch;gap:0;
    transform:translateY(-8px);opacity:0;visibility:hidden;
    transition:opacity .2s ease,transform .2s ease,visibility .2s;
    z-index:60;overflow-y:auto;
  }
  .ah-nav.is-open{transform:none;opacity:1;visibility:visible}
  .ah-nav__list{flex-direction:column;align-items:stretch;gap:0}
  .ah-nav__item{border-bottom:1px solid var(--ah-line-soft)}
  .ah-nav__item > a{padding:15px 2px;font-size:16px;display:block}
  .ah-nav__item > a.is-cur{border-bottom-color:transparent}
  .ah-nav__sub{
    position:static;opacity:1;visibility:visible;transform:none;
    border:0;box-shadow:none;background:transparent;padding:0 0 8px 14px;
    min-width:0;
  }
  .ah-nav__sub a{padding:8px 0;font-size:14px;color:var(--ah-ink-3)}
  .ah-nav__cta{margin:20px 0 0;justify-content:center;padding:13px 18px}
  .ah-body.is-locked{overflow:hidden}

  /* ---------- 首屏单栏 ---------- */
  .ah-hero__in{grid-template-columns:1fr;gap:34px;padding:44px 22px 46px}
  .ah-hero__txt{max-width:none}
  .ah-hero__fig{justify-self:start;max-width:360px;order:2}
  .ah-hero__t{font-size:30px}
  .ah-hero__s{font-size:15px}
  .ah-hero__dots{justify-content:flex-start}

  /* ---------- 公示条两列 ---------- */
  .ah-pub__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 0}
  .ah-pub__i{padding:2px 18px}
  .ah-pub__i:nth-child(odd){padding-left:0;border-left:0}
  .ah-pub__i:nth-child(even){border-left:1px solid var(--ah-line-soft)}

  /* ---------- 项目 / 科普 / 问答：单列 ---------- */
  .ah-svc{grid-template-columns:1fr;gap:0}
  .ah-svc__i:nth-child(2){border-top:1px solid var(--ah-line-soft)}
  .ah-svc__i:nth-child(1){border-top:1px solid var(--ah-ink)}
  .ah-news{grid-template-columns:1fr;gap:0}
  .ah-news__i:nth-child(2){border-top:1px solid var(--ah-line-soft)}
  .ah-news__i:nth-child(1){border-top:1px solid var(--ah-ink)}
  .ah-faq{grid-template-columns:1fr;gap:0}
  .ah-faq__i:nth-child(2){border-top:1px solid var(--ah-line-soft)}
  .ah-faq__i:nth-child(1){border-top:1px solid var(--ah-ink)}

  .ah-doc{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  .ah-env{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ah-env__i--big{grid-column:span 2;grid-row:auto;aspect-ratio:4/3}
  .ah-flow{grid-template-columns:repeat(2,minmax(0,1fr))}

  .ah-book{padding:56px 0}
  .ah-book__panel{grid-template-columns:1fr;gap:24px;padding:30px 26px}

  .ah-ft__grid{grid-template-columns:1fr 1fr;gap:32px}
  .ah-ft__col--org{grid-column:span 2}

  /* ---------- 移动端悬浮条 ---------- */
  .ah-float{
    display:grid;grid-template-columns:1fr 1fr;gap:1px;
    position:fixed;left:0;right:0;bottom:0;z-index:45;
    background:var(--ah-line);
    padding-bottom:env(safe-area-inset-bottom);
  }
  .ah-float__btn{
    padding:15px 10px;text-align:center;font-size:14.5px;
    background:var(--ah-card);color:var(--ah-primary);letter-spacing:.04em;
  }
  .ah-float__btn--main{background:var(--ah-primary);color:#F7F2E9}
  /* 只配了在线咨询、没配电话时，剩一个按钮要占满整行，不能留半格空白 */
  .ah-float__btn:only-child{grid-column:1 / -1}
  .ah-body{padding-bottom:52px}

  .ah-single__wrap{max-width:none}
  .ah-list--doc .ah-list__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:640px){
  .ah-wrap{padding:0 18px}
  .ah-top__in{gap:10px;min-height:34px;font-size:11.5px}
  .ah-top__org{border-right:0;padding-right:0;font-size:12px}
  .ah-top__item{display:none}
  .ah-top__tel{margin-left:auto;font-size:12px}

  .ah-brand__name{font-size:20px}
  .ah-brand__sub{font-size:10px;letter-spacing:.1em}

  .ah-hero__t{font-size:26px;line-height:1.4}
  .ah-hero__kv > div{font-size:13px}
  .ah-hero__act{gap:10px}
  .ah-btn{padding:11px 20px;font-size:13.5px}
  .ah-hero__fig{max-width:100%}

  .ah-sec{padding:48px 0}
  .ah-sec__hd{padding-top:14px;margin-bottom:24px;gap:12px}
  .ah-sec__t{font-size:22px}
  .ah-sec__d{font-size:13px}

  .ah-adv{grid-template-columns:1fr}
  .ah-adv__i{padding:20px 18px}

  .ah-svc__i{gap:14px;padding:18px 0}
  .ah-svc__fig{flex-basis:120px}
  .ah-svc__t{font-size:17px}
  .ah-svc__d{font-size:13px}

  .ah-doc{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .ah-doc__t{font-size:16px}

  .ah-flow{grid-template-columns:1fr;gap:0}
  .ah-flow__i{padding:18px 0 4px;border-top:1px solid var(--ah-line-soft)}
  .ah-flow__i:first-child{border-top:1px solid var(--ah-ink)}

  .ah-book__panel{padding:24px 20px}
  .ah-book__tel{font-size:21px}

  .ah-list__grid{grid-template-columns:1fr}
  .ah-list--doc .ah-list__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ah-card__bd{padding:14px 14px 16px}

  .ah-ft__grid{grid-template-columns:1fr;gap:26px}
  .ah-ft__col--org{grid-column:auto}
  .ah-ft{padding-top:38px}
  .ah-ft__barin{min-height:48px;gap:10px;font-size:11.5px}

  .ah-single{padding:30px 0 60px}
  .ah-single__t{font-size:25px}
  .ah-prose{font-size:15px;line-height:1.95}
  .ah-prose h2{font-size:19px}
  .ah-table th{width:auto;display:block;border-bottom:0;padding-bottom:2px}
  .ah-table td{display:block;padding-top:0}
  .ah-table tr{display:block;border-bottom:1px solid var(--ah-line-soft)}

  .ah-rel__list li{flex-direction:column;gap:4px}
  .ah-404{padding:64px 0 80px}
}
