/* ==========================================================
   DR Home 页眉小部件（qing-site-header）
   overlay = 透明不占位；inflow = 占位实底
   ========================================================== */

.qh-root{
  /* ---------- 通用 ---------- */
  --qh-ease:cubic-bezier(.22,.61,.36,1);
  --qh-dur:.45s;
  --qh-accent:#c8a06a;
  --qh-pad:50px;
  --qh-color-overlay:#ffffff;
  --qh-color-solid:#2e2a26;
  --qh-solid-bg:#f7f4ef;
  --qh-solid-shadow:0 3px 18px rgba(0,0,0,.08);

  /* ---------- 顶部信息条 ---------- */
  --qh-top-h:34px;
  --qh-top-gap:28px;
  --qh-top-opacity:.8;
  --qh-top-border-overlay:rgba(255,255,255,.12);
  --qh-top-border-solid:rgba(0,0,0,.07);

  /* ---------- 主导航行 ---------- */
  --qh-main-h:66px;

  /* ---------- LOGO ---------- */
  --qh-logo-icon-w:26px;
  --qh-logo-gap:10px;
  --qh-logo-img-h:34px;
  --qh-logo-em-gap:7px;

  /* ---------- 导航 ---------- */
  --qh-nav-gap:32px;
  --qh-nav-pad:9px;
  --qh-caret-size:5px;

  /* ---------- 下拉面板 ---------- */
  --qh-sub-bg:#f7f4ef;
  --qh-sub-radius:0px;
  --qh-sub-minw:214px;
  --qh-sub-x:-16px;
  --qh-sub-y:0px;
  --qh-sub-pad-y:10px;
  --qh-sub-shadow:0 14px 36px rgba(0,0,0,.15);
  --qh-sub-link-pad-y:11px;
  --qh-sub-link-pad-x:24px;
  --qh-sub-indent:5px;
  --qh-sub-color:#332e29;

  /* ---------- 按钮 ---------- */
  --qh-btn-radius:0px;
  --qh-btn-bw:1px;
  --qh-btn-pad-y:12px;
  --qh-btn-pad-x:22px;

  /* ---------- 汉堡 / 抽屉 ---------- */
  --qh-burger-w:22px;
  --qh-burger-h:1px;
  --qh-burger-gap:5px;
  --qh-drawer-bg:#f7f4ef;
  --qh-drawer-w:290px;
  --qh-drawer-color:#2e2a26;
  --qh-drawer-border:rgba(0,0,0,.10);
  --qh-mask:rgba(0,0,0,.42);

  position:relative;
}

/* ==========================================================
   状态配色：overlay -> solid 只换颜色，不改尺寸
   ========================================================== */
.qh-header{
  --qh-c:var(--qh-color-overlay);
  --qh-top-border:var(--qh-top-border-overlay);
  --qh-loc-c:var(--qh-loc-color-overlay, inherit);
  --qh-toplink-c:var(--qh-toplink-color-overlay, inherit);
  --qh-toplink-hc:var(--qh-toplink-hover-overlay, var(--qh-accent));
  --qh-logo-icon-c:var(--qh-logo-icon-overlay, var(--qh-accent));
  --qh-logo-main-c:var(--qh-logo-main-overlay, inherit);
  --qh-logo-accent-c:var(--qh-logo-accent-overlay, var(--qh-accent));
  --qh-nav-c:var(--qh-nav-color-overlay, inherit);
  --qh-nav-hc:var(--qh-nav-hover-overlay, var(--qh-accent));
  --qh-btn-c:var(--qh-btn-color-overlay, currentColor);
  --qh-btn-bgc:var(--qh-btn-bg-overlay, transparent);
  --qh-btn-bc:var(--qh-btn-border-overlay, rgba(255,255,255,.5));
  --qh-btn-hc:var(--qh-btn-hover-color-overlay, #1c1a18);
  --qh-btn-hbg:var(--qh-btn-hover-bg-overlay, #ffffff);
  --qh-btn-hbc:var(--qh-btn-hover-border-overlay, #ffffff);
  --qh-burger-c:var(--qh-burger-color-overlay, currentColor);
}

.qh-root.is-solid .qh-header,
.qh-root.is-scrolled .qh-header,
.qh-header.is-solid,
.qh-header.is-scrolled{
  --qh-c:var(--qh-color-solid);
  --qh-top-border:var(--qh-top-border-solid);
  --qh-loc-c:var(--qh-loc-color-solid, inherit);
  --qh-toplink-c:var(--qh-toplink-color-solid, inherit);
  --qh-toplink-hc:var(--qh-toplink-hover-solid, var(--qh-accent));
  --qh-logo-icon-c:var(--qh-logo-icon-solid, var(--qh-accent));
  --qh-logo-main-c:var(--qh-logo-main-solid, inherit);
  --qh-logo-accent-c:var(--qh-logo-accent-solid, var(--qh-accent));
  --qh-nav-c:var(--qh-nav-color-solid, inherit);
  --qh-nav-hc:var(--qh-nav-hover-solid, var(--qh-accent));
  --qh-btn-c:var(--qh-btn-color-solid, var(--qh-accent));
  --qh-btn-bgc:var(--qh-btn-bg-solid, transparent);
  --qh-btn-bc:var(--qh-btn-border-solid, var(--qh-accent));
  --qh-btn-hc:var(--qh-btn-hover-color-solid, #ffffff);
  --qh-btn-hbg:var(--qh-btn-hover-bg-solid, var(--qh-accent));
  --qh-btn-hbc:var(--qh-btn-hover-border-solid, var(--qh-accent));
  --qh-burger-c:var(--qh-burger-color-solid, currentColor);
}

/* ==========================================================
   定位模式
   ========================================================== */
.qh-header{z-index:100;color:var(--qh-c);transition:color var(--qh-dur) var(--qh-ease)}

/* 透明不占位：固定定位，根节点零高度 */
.qh-root--overlay{height:0}
.qh-root--fixed .qh-header{position:fixed;top:0;left:0;right:0}

/* 占位页眉：在文档流中正常占位，随页面滚动。
   「下滑吸顶」由外层 Elementor 页眉位置容器承担（见文件末尾 sticky 规则），
   因为 sticky 需要一个高度足够的包含块，而 .qh-root 本身只有页眉高度、
   无法自身吸顶。 */
.qh-root--inflow .qh-header{position:relative}

/* 中和 JS 可能仍添加的 is-stuck：不脱离文档流、不补位，避免"超出"。 */
.qh-root--sticky.is-stuck{padding-top:0}
.qh-root--sticky.is-stuck .qh-header{position:relative;animation:none}

.qh-root--no-top{--qh-top-h:0px}

/* 实底背景层：交叉淡入 */
.qh-header__bg{
  position:absolute;inset:0;
  background:var(--qh-solid-bg);
  box-shadow:var(--qh-solid-shadow);
  opacity:0;visibility:hidden;
  transition:opacity var(--qh-dur) var(--qh-ease),visibility var(--qh-dur) var(--qh-ease);
}
.qh-root.is-solid .qh-header__bg,
.qh-root.is-scrolled .qh-header__bg,
.qh-header.is-solid .qh-header__bg,
.qh-header.is-scrolled .qh-header__bg{opacity:1;visibility:visible}

/* 全宽容器 */
.qh-wrap{width:100%;padding:0 var(--qh-pad);display:flex;align-items:center;justify-content:space-between;gap:20px}

/* ==========================================================
   顶部信息条
   ========================================================== */
.qh-top{
  position:relative;z-index:2;
  height:var(--qh-top-h);
  border-bottom:1px solid var(--qh-top-border);
  transition:border-color var(--qh-dur) var(--qh-ease);
}
.qh-top .qh-wrap{height:100%;justify-content:flex-end}
.qh-top__links{display:flex;align-items:center;gap:var(--qh-top-gap)}
.qh-top__loc{font-size:10.5px;letter-spacing:.16em;opacity:var(--qh-top-opacity);color:var(--qh-loc-c)}
.qh-top__links a{
  font-size:10.5px;letter-spacing:.02em;text-decoration:none;
  opacity:var(--qh-top-opacity);color:var(--qh-toplink-c);
  transition:opacity .3s,color .3s;
}
.qh-top__links a:hover{opacity:1;color:var(--qh-toplink-hc)}

/* ==========================================================
   主导航行
   ========================================================== */
.qh-main{position:relative;z-index:2}
.qh-main .qh-wrap{height:var(--qh-main-h)}

/* ---------- LOGO ---------- */
.qh-logo{display:flex;align-items:center;gap:var(--qh-logo-gap);flex:0 0 auto;text-decoration:none;color:inherit}
.qh-logo__mark{display:block;width:var(--qh-logo-icon-w);color:var(--qh-logo-icon-c);flex:0 0 auto;transition:color var(--qh-dur) var(--qh-ease)}
.qh-logo__mark svg{width:100%;height:auto;display:block}
.qh-logo__mark i{font-size:var(--qh-logo-icon-w);line-height:1;display:block}
.qh-logo__img{height:var(--qh-logo-img-h);width:auto;display:block;max-width:none;object-fit:contain;object-position:left center;flex:0 0 auto}
.qh-logo__text{font-size:20px;font-weight:500;letter-spacing:.12em;line-height:1;color:var(--qh-logo-main-c);transition:color var(--qh-dur) var(--qh-ease)}
.qh-logo__text em{font-style:normal;font-weight:400;margin-left:var(--qh-logo-em-gap);color:var(--qh-logo-accent-c)}

/* ---------- 导航 ---------- */
.qh-nav__list{display:flex;align-items:center;gap:var(--qh-nav-gap);margin:0;padding:0;list-style:none}
.qh-nav__list>li{position:relative;list-style:none;margin:0}
.qh-nav__link{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12.5px;letter-spacing:.02em;
  padding:var(--qh-nav-pad) 0;
  white-space:nowrap;cursor:pointer;user-select:none;text-decoration:none;
  color:var(--qh-nav-c);
  transition:color .3s var(--qh-ease);
}
.qh-nav__list>li>.qh-nav__link:hover,
.qh-nav__list>li.is-open>.qh-nav__link{color:var(--qh-nav-hc)}

.qh-caret{
  width:var(--qh-caret-size);height:var(--qh-caret-size);
  border-right:1.2px solid currentColor;border-bottom:1.2px solid currentColor;
  transform:rotate(45deg) translateY(-1px);
  opacity:.75;flex:0 0 auto;
  transition:transform .3s var(--qh-ease);
}
.qh-nav__list>li.is-open .qh-caret{transform:rotate(225deg) translateY(-2px)}

/* ---------- 下拉面板 ---------- */
.qh-sub{
  position:absolute;top:100%;left:var(--qh-sub-x);
  margin:var(--qh-sub-y) 0 0;
  min-width:var(--qh-sub-minw);
  padding:var(--qh-sub-pad-y) 0;
  list-style:none;
  background:var(--qh-sub-bg);
  border-radius:var(--qh-sub-radius);
  box-shadow:var(--qh-sub-shadow);
  opacity:0;visibility:hidden;transform:translateY(9px);
  transition:opacity .3s var(--qh-ease),transform .3s var(--qh-ease),visibility .3s;
}
.qh-nav__item.is-open>.qh-sub{opacity:1;visibility:visible;transform:translateY(0)}
.qh-sub li{margin:0;list-style:none}
.qh-sub a{
  display:block;
  padding:var(--qh-sub-link-pad-y) var(--qh-sub-link-pad-x);
  font-size:13px;text-decoration:none;
  color:var(--qh-sub-color);
  transition:color .25s,padding-left .25s,background-color .25s;
}
.qh-sub a:hover{
  color:var(--qh-sub-hover-color, var(--qh-accent));
  background-color:var(--qh-sub-hover-bg, transparent);
  padding-left:calc(var(--qh-sub-link-pad-x) + var(--qh-sub-indent));
}

/* ---------- 咨询按钮 ---------- */
.qh-btn{
  flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:10.5px;letter-spacing:.13em;
  padding:var(--qh-btn-pad-y) var(--qh-btn-pad-x);
  white-space:nowrap;text-decoration:none;
  border-style:solid;border-width:var(--qh-btn-bw);border-radius:var(--qh-btn-radius);
  color:var(--qh-btn-c);background:var(--qh-btn-bgc);border-color:var(--qh-btn-bc);
  transition:background var(--qh-dur) var(--qh-ease),color var(--qh-dur) var(--qh-ease),border-color var(--qh-dur) var(--qh-ease);
}
.qh-btn:hover{color:var(--qh-btn-hc);background:var(--qh-btn-hbg);border-color:var(--qh-btn-hbc)}

/* ---------- 汉堡键 ---------- */
.qh-burger{
  display:none;flex-direction:column;gap:var(--qh-burger-gap);
  padding:6px;flex:0 0 auto;cursor:pointer;
  color:var(--qh-burger-c);
  transition:color var(--qh-dur) var(--qh-ease);
}
.qh-burger i{display:block;width:var(--qh-burger-w);height:var(--qh-burger-h);background:currentColor;transition:transform .3s,opacity .3s}
.qh-burger.is-open i:nth-child(1){transform:translateY(calc(var(--qh-burger-gap) + var(--qh-burger-h))) rotate(45deg)}
.qh-burger.is-open i:nth-child(2){opacity:0}
.qh-burger.is-open i:nth-child(3){transform:translateY(calc((var(--qh-burger-gap) + var(--qh-burger-h)) * -1)) rotate(-45deg)}

/* 遮罩 */
.qh-mask{
  position:fixed;inset:0;z-index:105;
  background:var(--qh-mask);
  opacity:0;visibility:hidden;
  transition:opacity .4s var(--qh-ease),visibility .4s;
}
.qh-root.is-mobile.is-drawer-open .qh-mask{opacity:1;visibility:visible}

/* ==========================================================
   移动端：页眉只留 LOGO + 汉堡；导航为页眉下方全宽面板
   （JS 依据断点添加 .is-mobile）
   ========================================================== */
.qh-root.is-mobile .qh-burger{display:flex}

/* 顶部信息条整条隐藏，页眉只剩 LOGO 行 */
.qh-root.is-mobile .qh-top{display:none}

/* 全宽面板不需要遮罩 */
.qh-root.is-mobile .qh-mask{display:none}

/* ---------- 全宽下拉面板 ---------- */
.qh-root.is-mobile .qh-nav{
  position:fixed;
  top:var(--qh-main-h);
  left:0;right:0;bottom:0;
  z-index:110;
  width:auto;max-width:none;
  padding:var(--qh-panel-pad, 22px 22px 30px);
  background:var(--qh-drawer-bg);
  color:var(--qh-drawer-color);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  transform:translateY(-8px);
  opacity:0;visibility:hidden;
  box-shadow:none;
  transition:transform var(--qh-dur) var(--qh-ease),opacity var(--qh-dur) var(--qh-ease),visibility var(--qh-dur);
}
.qh-root.is-mobile .qh-nav.is-open{transform:translateY(0);opacity:1;visibility:visible}

.qh-root.is-mobile .qh-nav__list{flex-direction:column;align-items:stretch;gap:0}

/* 一级项：衬线体，细线分隔 */
.qh-root.is-mobile .qh-nav__link{
  width:100%;
  justify-content:flex-start;
  padding:var(--qh-panel-item-pad, 19px 4px);
  font-family:Georgia, 'Times New Roman', serif;
  font-size:19px;
  font-weight:400;
  letter-spacing:.01em;
  color:var(--qh-panel-item-color, #211d1a);
  border-bottom:1px solid var(--qh-drawer-border);
}

/* 有子菜单的一级项不要下边框，让色块紧贴 */
.qh-root.is-mobile .qh-nav__item--has-sub > .qh-nav__link{border-bottom:0;padding-bottom:14px}

/* 面板里子菜单常驻展开，箭头无意义 */
.qh-root.is-mobile .qh-caret{display:none}

/* ---------- 子菜单：米色块，始终可见 ---------- */
.qh-root.is-mobile .qh-sub,
.qh-root.is-mobile .qh-nav__item.is-open > .qh-sub{
  position:static;
  display:block;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  height:auto !important;
  overflow:visible;
  min-width:0;left:0;
  box-shadow:none;
  border-radius:0;
  background:var(--qh-panel-sub-bg, #e9e4db);
  padding:6px 0 !important;
  margin:0 0 8px;
}
.qh-root.is-mobile .qh-sub a{
  display:block;
  padding:var(--qh-panel-sub-pad, 13px 20px);
  font-size:14px;
  color:var(--qh-panel-sub-color, #8a7f70);
  transition:color .25s var(--qh-ease),padding-left .25s var(--qh-ease);
}
.qh-root.is-mobile .qh-sub a:hover{
  background-color:transparent;
  color:var(--qh-panel-sub-hover, #c4873a);
  padding-left:calc(var(--qh-panel-sub-indent, 25px));
}

/* ---------- 面板底部金色 CTA（随内容滚动） ---------- */
.qh-root.is-mobile .qh-btn{display:none}

.qh-root.is-mobile .qh-nav__cta{
  display:flex;align-items:center;justify-content:center;
  margin:var(--qh-cta-margin, 22px 0 0);
  padding:var(--qh-cta-pad, 19px 20px);
  font-size:12px;
  font-weight:400;letter-spacing:.14em;
  white-space:nowrap;text-decoration:none;
  border-style:solid;border-width:1px;
  border-radius:var(--qh-btn-radius);
  color:var(--qh-cta-color, #ffffff);
  background:var(--qh-cta-bg, #c0872f);
  border-color:var(--qh-cta-bg, #c0872f);
  transition:background .3s var(--qh-ease),border-color .3s var(--qh-ease),color .3s var(--qh-ease);
}
.qh-root.is-mobile .qh-nav__cta:hover{
  color:var(--qh-cta-hover-color, #ffffff);
  background:var(--qh-cta-hover-bg, #a8741f);
  border-color:var(--qh-cta-hover-bg, #a8741f);
}

/* 面板打开时页眉转实底配色：背景变浅、LOGO 与 X 关闭图标强制深色（清晰可见）。
   不依赖 .is-mobile，兼容「媒体查询驱动移动端」的情形。 */
.qh-root.is-drawer-open .qh-header__bg{opacity:1;visibility:visible}
.qh-root.is-drawer-open .qh-header{
  --qh-c:var(--qh-color-solid);
  --qh-burger-c:var(--qh-burger-color-solid, var(--qh-color-solid));
  --qh-loc-c:var(--qh-loc-color-solid, inherit);
  --qh-toplink-c:var(--qh-toplink-color-solid, inherit);
  --qh-logo-main-c:var(--qh-logo-main-solid, var(--qh-color-solid));
  --qh-logo-accent-c:var(--qh-logo-accent-solid, var(--qh-accent));
  --qh-logo-icon-c:var(--qh-logo-icon-solid, var(--qh-accent));
}

/* 面板打开时把 LOGO 行钉在视口顶部：
   overlay（首页）页眉本就 fixed，LOGO 行常驻顶部，展开正常；
   inflow（其他页面）页眉在文档流中，滚动后 LOGO 行已被卷走，
   而导航面板是 fixed（top:var(--qh-main-h)），于是顶部露出一段白条、
   看不到 LOGO，也没有 X 关闭键。这里在抽屉打开时让页眉临时 fixed 顶置，
   与面板对齐，关闭后自动还原。 */
.qh-root.is-drawer-open .qh-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:115;
}

/* 面板打开时锁滚动 */
body.qh-no-scroll{overflow:hidden}

/* 去掉小部件默认内边距干扰 */
.elementor-widget-qing-site-header .elementor-widget-container{padding:0}

/* ==========================================================
   桌面端：悬停展开下拉（移动端抽屉仍为点击）
   ========================================================== */
.qh-root:not(.is-mobile) .qh-nav__item--has-sub:hover > .qh-sub,
.qh-root:not(.is-mobile) .qh-nav__item--has-sub:focus-within > .qh-sub{opacity:1;visibility:visible;transform:translateY(0)}

.qh-root:not(.is-mobile) .qh-nav__item--has-sub:hover > .qh-nav__link,
.qh-root:not(.is-mobile) .qh-nav__item--has-sub:focus-within > .qh-nav__link{color:var(--qh-nav-hc)}

.qh-root:not(.is-mobile) .qh-nav__item--has-sub:hover > .qh-nav__link .qh-caret,
.qh-root:not(.is-mobile) .qh-nav__item--has-sub:focus-within > .qh-nav__link .qh-caret{transform:rotate(225deg) translateY(-2px)}

/* 悬停桥：填补菜单项与面板之间的垂直间隙，避免鼠标移动途中收起 */
.qh-root:not(.is-mobile) .qh-sub::before{content:'';position:absolute;left:0;right:0;bottom:100%;height:calc(var(--qh-sub-y) + 12px)}

/* 桌面端隐藏面板 CTA（仅移动端面板内出现） */
.qh-nav__cta{display:none}

/* ==========================================================
   移动端布局：媒体查询无条件驱动（默认 900px 断点）
   ------------------------------------------------------------
   过去移动端只靠 JS 加 .is-mobile 触发，若 JS 未按预期添加（如 inflow
   页面在主题构建器页眉位置下的加载差异），窄屏就会露出整排桌面导航挤出
   屏幕。现改为媒体查询直接接管：窄屏一律汉堡布局，与 overlay/inflow 模式
   无关、与 JS 是否初始化无关。JS 只负责抽屉开合与自定义断点增强。
   ========================================================== */
@media (max-width:900px){
  .qh-root .qh-burger{display:flex}
  .qh-root .qh-top{display:none}
  .qh-root .qh-mask{display:none}
  .qh-root .qh-btn{display:none}

  .qh-root .qh-nav{
    position:fixed;
    top:var(--qh-main-h);
    left:0;right:0;bottom:0;
    z-index:110;
    width:auto;max-width:none;
    /* 顶部 0：紧贴 LOGO 行下方，首项间距由其自身 padding 决定，消除大段空白 */
    padding:var(--qh-panel-pad, 0 22px 30px);
    background:var(--qh-drawer-bg);
    color:var(--qh-drawer-color);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    transform:translateY(-8px);
    opacity:0;visibility:hidden;
    box-shadow:none;
    transition:transform var(--qh-dur) var(--qh-ease),opacity var(--qh-dur) var(--qh-ease),visibility var(--qh-dur);
  }
  .qh-root .qh-nav.is-open{transform:translateY(0);opacity:1;visibility:visible}

  .qh-root .qh-nav__list{flex-direction:column;align-items:stretch;gap:0}

  .qh-root .qh-nav__link{
    width:100%;
    justify-content:flex-start;
    padding:var(--qh-panel-item-pad, 19px 4px);
    font-family:Georgia, 'Times New Roman', serif;
    font-size:19px;
    font-weight:400;
    letter-spacing:.01em;
    color:var(--qh-panel-item-color, #211d1a);
    border-bottom:1px solid var(--qh-drawer-border);
  }
  .qh-root .qh-nav__item--has-sub > .qh-nav__link{border-bottom:0;padding-bottom:14px}
  .qh-root .qh-caret{display:none}

  .qh-root .qh-sub{
    position:static;
    display:block;
    opacity:1;
    visibility:visible;
    transform:none;
    height:auto;
    overflow:visible;
    min-width:0;left:0;
    box-shadow:none;
    border-radius:0;
    background:var(--qh-panel-sub-bg, #e9e4db);
    padding:6px 0;
    margin:0 0 8px;
  }
  .qh-root .qh-sub a{
    display:block;
    padding:var(--qh-panel-sub-pad, 13px 20px);
    font-size:14px;
    color:var(--qh-panel-sub-color, #8a7f70);
    transition:color .25s var(--qh-ease),padding-left .25s var(--qh-ease);
  }
  .qh-root .qh-sub a:hover{
    background-color:transparent;
    color:var(--qh-panel-sub-hover, #c4873a);
    padding-left:calc(var(--qh-panel-sub-indent, 25px));
  }

  .qh-root .qh-nav__cta{
    display:flex;align-items:center;justify-content:center;
    margin:var(--qh-cta-margin, 22px 0 0);
    padding:var(--qh-cta-pad, 19px 20px);
    font-size:12px;
    font-weight:400;letter-spacing:.14em;
    white-space:nowrap;text-decoration:none;
    border-style:solid;border-width:1px;
    border-radius:var(--qh-btn-radius);
    color:var(--qh-cta-color, #ffffff);
    background:var(--qh-cta-bg, #c0872f);
    border-color:var(--qh-cta-bg, #c0872f);
    transition:background .3s var(--qh-ease),border-color .3s var(--qh-ease),color .3s var(--qh-ease);
  }
  .qh-root .qh-nav__cta:hover{
    color:var(--qh-cta-hover-color, #ffffff);
    background:var(--qh-cta-hover-bg, #a8741f);
    border-color:var(--qh-cta-hover-bg, #a8741f);
  }
}

/* ==========================================================
   下滑吸顶（占位/inflow 页面）
   ------------------------------------------------------------
   首页为「透明不占位」页眉（qh-root--overlay）：页眉本身 position:fixed
   常驻顶部，天然吸顶，无需处理。
   其他页面为占位页眉（qh-root--inflow）：页眉在文档流中。
   sticky 必须挂在一个「高度足够」的包含块上——.qh-root 本身只有页眉高度，
   给它或 .qh-header 设 sticky 都无吸顶行程。Elementor Pro 页眉位置容器
   .elementor-location-header 是 <body> 直接子级、贯穿整页，故在它上面
   设 sticky，即可让整条页眉随滚动贴顶常驻，且不改变文档流、无跳动、
   无需 JS 测量。
   用 :has() 直接匹配「内部为 inflow 页眉」的位置容器，精准对应实际渲染
   模式，避免依赖 body 类可能与强制模式不一致。 */
.elementor-location-header:has(.qh-root--inflow){
  position:sticky;
  top:0;
  z-index:100;
}

/* QH desktop nav color sync fix */
@media (min-width:901px){
  /* 顶部透明态：a、visited 与 span 使用完全相同的颜色，不走延迟过渡。 */
  .qh-root--overlay:not(.is-solid):not(.is-scrolled) .qh-nav__list > li > .qh-nav__link,
  .qh-root--overlay:not(.is-solid):not(.is-scrolled) .qh-nav__list > li > a.qh-nav__link:visited{
    color:var(--qh-nav-color-overlay, #ffffff) !important;
    transition:none !important;
  }

  /* 滚动/实底态：在同一帧统一切成深色，避免部分菜单仍停留在透明态颜色。 */
  .qh-root.is-solid .qh-nav__list > li > .qh-nav__link,
  .qh-root.is-solid .qh-nav__list > li > a.qh-nav__link:visited,
  .qh-root.is-scrolled .qh-nav__list > li > .qh-nav__link,
  .qh-root.is-scrolled .qh-nav__list > li > a.qh-nav__link:visited,
  .qh-header.is-solid .qh-nav__list > li > .qh-nav__link,
  .qh-header.is-scrolled .qh-nav__list > li > .qh-nav__link{
    color:var(--qh-nav-color-solid, #2e2a26) !important;
    transition:none !important;
  }

  /* 交互色最后声明，确保 hover/focus 仍清晰但不会污染其他菜单项。 */
  .qh-root .qh-nav__list > li > .qh-nav__link:hover,
  .qh-root .qh-nav__list > li.is-open > .qh-nav__link,
  .qh-root .qh-nav__item--has-sub:hover > .qh-nav__link,
  .qh-root .qh-nav__item--has-sub:focus-within > .qh-nav__link{
    color:var(--qh-nav-hc, var(--qh-accent)) !important;
  }
}

/* QH nested submenu support */
.qh-sub .qh-sub__item{position:relative}
.qh-sub .qh-sub__link{display:flex;align-items:center;justify-content:space-between;gap:18px}
.qh-sub__caret{flex:0 0 auto;width:6px;height:6px;border-top:1.2px solid currentColor;border-right:1.2px solid currentColor;transform:rotate(45deg);opacity:.72}
.qh-root:not(.is-mobile) .qh-sub .qh-sub--nested{position:absolute;top:-10px;left:100%;min-width:214px;margin:0;padding:10px 0;opacity:0;visibility:hidden;transform:translateX(0);background:var(--qh-sub-bg);color:var(--qh-sub-color);z-index:20;box-shadow:var(--qh-sub-shadow);transition:opacity .25s var(--qh-ease),transform .25s var(--qh-ease),visibility .25s;pointer-events:none}
.qh-root:not(.is-mobile) .qh-sub__item--has-sub:hover>.qh-sub--nested,.qh-root:not(.is-mobile) .qh-sub__item--has-sub:focus-within>.qh-sub--nested{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto}
.qh-root:not(.is-mobile) .qh-sub--nested::before{content:'';position:absolute;top:0;right:100%;bottom:0;width:14px;height:auto}
.qh-root:not(.is-mobile) .qh-sub__item--has-sub:hover>.qh-sub__link,.qh-root:not(.is-mobile) .qh-sub__item--has-sub:focus-within>.qh-sub__link{color:var(--qh-sub-hc)}
@media(max-width:900px){.qh-root .qh-sub .qh-sub--nested{position:static;display:block;min-width:0;margin:4px 12px 7px;padding:4px 0;opacity:1;visibility:visible;transform:none;box-shadow:none;background:rgba(255,255,255,.28);pointer-events:auto}.qh-root .qh-sub--nested a{padding-left:32px;font-size:13px}.qh-root .qh-sub__caret{display:none}}
/* QH nested submenu hover bridge fix */
@media(min-width:901px){
.qh-root:not(.is-mobile) .qh-sub__item--has-sub{position:relative}
.qh-root:not(.is-mobile) .qh-sub__item--has-sub>.qh-sub__link{position:relative;z-index:22;width:100%}
.qh-root:not(.is-mobile) .qh-sub__item--has-sub>.qh-sub--nested{left:100%;z-index:21;margin-left:0;transform:none}
.qh-root:not(.is-mobile) .qh-sub__item--has-sub::after{content:'';position:absolute;z-index:23;top:-8px;left:100%;width:16px;height:calc(100% + 16px);background:transparent;pointer-events:auto}
.qh-root:not(.is-mobile) .qh-sub__item--has-sub:hover>.qh-sub--nested,.qh-root:not(.is-mobile) .qh-sub__item--has-sub:focus-within>.qh-sub--nested{opacity:1;visibility:visible;pointer-events:auto;transform:none}
}
/* Elementor editor canvas: mobile header must never cover the editable page. */
.elementor-editor-active .elementor-widget-qing-site-header .qh-root--overlay{height:auto!important}
.elementor-editor-active .elementor-widget-qing-site-header .qh-root--fixed .qh-header,
.elementor-editor-active .elementor-widget-qing-site-header .qh-root.is-drawer-open .qh-header{position:relative!important;top:auto!important;left:auto!important;right:auto!important}
.elementor-editor-active .elementor-widget-qing-site-header .qh-root.is-mobile .qh-nav,
.elementor-editor-active .elementor-widget-qing-site-header .qh-root.is-mobile .qh-nav.is-open,
.elementor-editor-active .elementor-widget-qing-site-header .qh-mask{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.elementor-editor-active .elementor-widget-qing-site-header .qh-burger{pointer-events:none!important}
body.elementor-editor-active.qh-no-scroll{overflow:auto!important}
