/* luodi: 78pg风格 - 白底 + 青绿元素 + 深灰字 (明亮混合) */
:root {
  --vi-text: #383838;
  --vi-teal: #00A08C;
  --vi-teal-dark: #00766a;
  --vi-gold: #f0c828;
}
html, body {
  background: linear-gradient(180deg, #00A08C 0%, #00897a 50%, #00766a 100%) !important;
  color: var(--vi-text) !important;
}
/* section/容器透明融入白底 */
.elementor, .elementor-section, .e-con, .e-con-boxed, .e-con-full, .e-con-inner, .e-parent,
.elementor-column-wrap, .elementor-widget-wrap, .elementor-container, .elementor-row,
header, .elementor-location-header, .elementor-location-footer,
.site, #page, #content, .elementor-section-wrap, .elementor-top-section,
.elementor-inner-section {
  background-color: transparent !important;
  background-image: none !important;
}
/* 文字深灰 (78pg rgb72,72,72) */
body, p, span, li, div, td, th, label, strong, b, em,
.elementor-widget-text-editor, .elementor-icon-box-description, .elementor-icon-list-text,
.elementor-testimonial-content, .elementor-tab-content, .elementor-toggle-content,
.elementor-counter-number-wrapper, blockquote, dd, dt {
  color: var(--vi-text) !important;
}
/* 标题深青绿 */
h1, h2, h3, h4, h5, h6, .elementor-heading-title, .elementor-icon-box-title,
.elementor-tab-title, .elementor-toggle-title, .elementor-testimonial-name {
  color: var(--vi-teal-dark) !important;
}
/* 链接/图标青绿 */
a, .elementor-icon, .elementor-icon-list-icon i { color: var(--vi-teal) !important; }
/* 按钮青绿(白字) */
.elementor-button, .elementor-button-link, .elementor-cta__button {
  background: var(--vi-teal) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 3px 10px rgba(0,160,140,0.25) !important;
}
.elementor-button:hover { background: var(--vi-teal-dark) !important; }
/* 卡片白+浅青绿边框 */
.elementor-widget-container, .elementor-flip-box, .elementor-testimonial-wrapper,
.elementor-counter, .elementor-icon-box-wrapper {
  background-color: #ffffff !important;
  border: 1px solid rgba(0,160,140,0.18) !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 10px rgba(0,80,70,0.07) !important;
}
/* 导航深灰字 + 选中青绿下划线 */
.elementor-nav-menu--main .elementor-item {
  position: relative !important;
  color: var(--vi-text) !important;
  padding: 8px 14px !important;
  transition: color .2s !important;
}
.elementor-nav-menu--main .elementor-item:hover { color: var(--vi-teal) !important; }
.elementor-nav-menu--main .current-menu-item > .elementor-item,
.elementor-nav-menu--main .current_page_item > .elementor-item,
.elementor-nav-menu--main .current-menu-ancestor > .elementor-item {
  color: var(--vi-teal-dark) !important;
  font-weight: 700 !important;
  background: transparent !important;
}
.elementor-nav-menu--main .current-menu-item > .elementor-item::after,
.elementor-nav-menu--main .current_page_item > .elementor-item::after,
.elementor-nav-menu--main .current-menu-ancestor > .elementor-item::after {
  content: '' !important; position: absolute !important; bottom: 2px !important;
  left: 18% !important; right: 18% !important; height: 3px !important;
  background: var(--vi-teal) !important; border-radius: 2px !important;
}
img, svg, picture { background: transparent !important; }
input, textarea, select { background:#fff !important; color: var(--vi-text) !important; border:1px solid rgba(0,160,140,0.3) !important; }
::selection { background: var(--vi-teal) !important; color: #fff !important; }


/* 所有 e-con container 透明(显body渐变分层) */
.e-con, .e-con-boxed, .e-con-full, .e-con-inner, .e-parent, .e-child,
.e-flex, div.elementor-element.e-con, .elementor-element[class*="e-con"] {
  background-color: transparent !important;
  background-image: none !important;
}

/* 导航 tab 单行不换行 (减小padding/字号) */
.elementor-nav-menu--main, .elementor-nav-menu {
  display: flex !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  overflow-x: auto !important;
}
.elementor-nav-menu--main .elementor-item {
  padding: 8px 9px !important;
  font-size: 13px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* footer 改浅青绿+深灰字 (和上部统一, 不再深青绿重色) */
.elementor-location-footer, footer.site-footer, #colophon, .site-footer {
  background: #eaf6f3 !important;
  color: #383838 !important;
}
.elementor-location-footer *, footer *, .site-footer * {
  color: #383838 !important;
}
.elementor-location-footer a, footer a { color: #00A08C !important; }
.elementor-location-footer h1, .elementor-location-footer h2,
.elementor-location-footer h3, .elementor-location-footer h4,
footer h1, footer h2, footer h3, footer h4 { color: #00766a !important; }

/* 导航强制单行(所有相关容器+li nowrap, 更小padding/字号) */
.elementor-nav-menu--main, .elementor-nav-menu, .elementor-nav-menu ul, .menu-nav, .menu {
  display: flex !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}
.elementor-nav-menu--main li, .elementor-nav-menu li, .menu li { white-space: nowrap !important; flex-shrink: 0 !important; }
.elementor-nav-menu--main .elementor-item {
  padding: 6px 7px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* 全文字白色 (青绿底白字, 含content所有文字) */
body, p, h1, h2, h3, h4, h5, h6, span, li, div, td, th, label, strong, b, em, a, blockquote,
.elementor-widget-text-editor, .elementor-widget-text-editor *,
.elementor-widget-container, .elementor-widget-container *,
.elementor-heading-title, .elementor-icon-box-title, .elementor-icon-box-description,
.elementor-icon-list-text, .elementor-testimonial-content, .elementor-testimonial-name,
.elementor-tab-title, .elementor-tab-content, .elementor-toggle-title, .elementor-toggle-content,
.elementor-counter-number-wrapper, dd, dt, figcaption {
  color: #ffffff !important;
}
/* 标题略亮(浅青)做层次 */
h1, h2, h3, h4, h5, h6, .elementor-heading-title { color: #e8fff9 !important; }
/* 分割线/边框 → 白色半透明 */
hr, .elementor-divider, .elementor-widget-divider, .elementor-divider-separator,
.elementor-widget-container, .elementor-flip-box, .elementor-testimonial-wrapper,
.elementor-counter, .elementor-icon-box-wrapper, .elementor-toggle-item, .elementor-accordion-item,
.elementor-tabs, input, textarea, select {
  border-color: rgba(255,255,255,0.45) !important;
}
.elementor-widget-divider .elementor-divider-separator,
.elementor-divider-separator {
  border-top-color: rgba(255,255,255,0.5) !important;
  background: rgba(255,255,255,0.5) !important;
}
/* 卡片半透明白(青绿底上显白卡层次) */
.elementor-widget-container {
  background-color: rgba(255,255,255,0.10) !important;
  border: 1px solid rgba(255,255,255,0.35) !important;
  box-shadow: none !important;
}

/* 导航更强制单行: overflow隐藏 + li不换行 */
.elementor-nav-menu--main, .elementor-nav-menu, .elementor-nav-menu ul.sub-menu, .menu {
  display: flex !important; flex-wrap: nowrap !important; white-space: nowrap !important;
  overflow: hidden !important; max-height: 50px !important;
}
.elementor-nav-menu--main > li, .elementor-nav-menu > li, .menu > li { flex-shrink: 0 !important; }
.elementor-nav-menu--main .elementor-item { padding: 6px 6px !important; font-size: 11.5px !important; }

/* 导航垂直居中对齐(解决第一项top0其余top28的两行问题) */
ul.elementor-nav-menu, .elementor-nav-menu--main, .elementor-nav-menu--main ul,
nav ul.menu, .elementor-widget-nav-menu ul {
  align-items: center !important;
  align-content: center !important;
}
ul.elementor-nav-menu > li, .elementor-nav-menu--main > li,
.elementor-nav-menu > li, nav ul.menu > li {
  align-self: center !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
/* 第一项(可能是logo/home)也居中, 统一高度 */
ul.elementor-nav-menu > li:first-child, .elementor-nav-menu > li:first-child {
  align-self: center !important;
  height: auto !important;
  max-height: 40px !important;
}

/* 卡片透明(白字落青绿底,清晰) + 白边框做分割线 */
.elementor-widget-container, .elementor-flip-box, .elementor-testimonial-wrapper,
.elementor-counter, .elementor-icon-box-wrapper, .elementor-toggle-item,
.elementor-accordion-item, .elementor-tabs, .elementor-image-box-wrapper {
  background-color: transparent !important;
  border: 1px solid rgba(255,255,255,0.4) !important;
  box-shadow: none !important;
}

/* footer 改青绿(和body一致, 不再浅白) + 白字清晰 */
.elementor-location-footer, footer.site-footer, #colophon, .site-footer,
.elementor-location-footer .elementor-container {
  background: #5BB8A8 !important;
  color: #ffffff !important;
}
.elementor-location-footer *, footer *, .site-footer * {
  color: #ffffff !important;
}
.elementor-location-footer a, footer a { color: #ffffff !important; }
.elementor-location-footer h1, .elementor-location-footer h2,
.elementor-location-footer h3, footer h1, footer h2, footer h3 { color: #e8fff9 !important; }

/* 表单输入框保留白底深字(可填写) */
input, textarea, select { background:#ffffff !important; color: #00382e !important; border:1px solid rgba(255,255,255,0.6) !important; }

/* footer 内部所有容器也青绿(覆盖 elementor 内部白底) */
footer .elementor-container, footer .e-con, footer .e-parent,
footer .elementor-section, footer .elementor-column-wrap, footer .elementor-widget-wrap,
footer .elementor-top-section, footer div, footer section,
.elementor-location-footer .elementor-container, .elementor-location-footer .e-con,
.elementor-location-footer div, .elementor-location-footer section {
  background-color: transparent !important;
  background-image: none !important;
}

/* 按钮: 金色(青绿底上醒目) + 深字 */
.elementor-button, .elementor-button-link, .elementor-cta__button, .elementor-flip-box__button {
  background: linear-gradient(135deg, #f0c828 0%, #e8a800 100%) !important;
  color: #4a2e00 !important;
  font-weight: 600 !important;
  border: none !important;
  box-shadow: 0 3px 12px rgba(240,200,40,0.45) !important;
}
.elementor-button:hover, .elementor-button-link:hover {
  background: linear-gradient(135deg, #e8a800 0%, #f0c828 100%) !important;
}
/* 关键CTA(vi-gold) 用更亮金 */
.elementor-button.vi-gold {
  background: linear-gradient(135deg, #ffd840 0%, #f0b400 100%) !important;
  color: #3a2400 !important;
  box-shadow: 0 4px 16px rgba(255,216,64,0.55) !important;
}

/* tab 选中: 金色下划线(青绿底上醒目) + 白字加粗 */
.elementor-nav-menu--main .current-menu-item > .elementor-item::after,
.elementor-nav-menu--main .current_page_item > .elementor-item::after,
.elementor-nav-menu--main .current-menu-ancestor > .elementor-item::after {
  background: #f0c828 !important;
  height: 3px !important;
  box-shadow: 0 0 6px rgba(240,200,40,0.6) !important;
}
/* 选中/hover tab 文字稍亮(浅金白) */
.elementor-nav-menu--main .current-menu-item > .elementor-item,
.elementor-nav-menu--main .current_page_item > .elementor-item {
  color: #fff5d8 !important;
}

/* 第一个tab(78PG) 不截断: 给足宽度 */
.elementor-nav-menu--main > li:first-child .elementor-item,
ul.elementor-nav-menu > li:first-child > a {
  padding: 6px 12px !important;
  min-width: 55px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
