/* EVX Export - Main stylesheet (lightweight, performance-first) */

:root{
  /* 参考图风格：亮黄绿（lime）点睛 + 深灰黑做高端底色 */
  --evx-primary:#0f172a;     /* 深色底：导航/标题/高端质感 */
  --evx-secondary:#8BC53F;   /* 亮黄绿：主点睛（接近参考图） */
  --evx-accent:#5FAF19;      /* 深一点的黄绿：hover/强调层次 */

  --evx-bg:#ffffff;
  --evx-surface:#0b1220;     /* 深色面：用于 footer / 深色模块 */
  --evx-border:rgba(15,23,42,.12);
  --evx-text:#0f172a;
  --evx-muted:rgba(15,23,42,.72);
  --evx-white:#fff;

  --evx-radius:14px;
  --evx-shadow:0 10px 30px rgba(2,8,23,.08);

  --evx-container:1160px;
  /* 顶栏 / 页脚共用黄绿（参考图） */
  --evx-lime-bright:#77b900;
  --evx-lime-bright-dark:#5f9400;
  --evx-topbar-lime:var(--evx-lime-bright);
  --evx-topbar-lime-dark:var(--evx-lime-bright-dark);
  /* 顶栏纯色（图1：无渐变） */
  --evx-topbar-solid:#7cb518;
  --evx-topbar-bottom-radius:18px;
  --evx-navy-deep:#0a1628;
  --evx-navy-mid:#0f2138;
  /* 页脚：深蓝底 + 略浅卡片区（参考图） */
  --evx-footer-navy:#0a2558;
  --evx-footer-navy-card:#0d3168;
  --evx-footer-lime:var(--evx-lime-bright);
}

*{box-sizing:border-box}
html{
  scroll-behavior:smooth;
  /* 避免部分移动浏览器把「可滚动高度」算短，导致页脚/版权无法滚入视区 */
  height:auto;
  min-height:100%;
  overflow-y:auto;
  overflow-x:hidden;
  scroll-padding-bottom:max(2.5rem, env(safe-area-inset-bottom, 0px));
}
body{
  margin:0;
  min-height:100%;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Noto Sans","Apple Color Emoji","Segoe UI Emoji";
  color:var(--evx-text);
  background:var(--evx-bg);
  line-height:1.6;
  text-rendering:optimizeLegibility;
  /* 避免仅裁切横向溢出时误伤纵向滚动（部分 WebKit） */
  overflow-x:clip;
}
@supports not (overflow-x:clip){
  body{overflow-x:hidden}
}
img{max-width:100%;height:auto}
a{color:inherit}

.evx-container{
  width:min(100% - 2rem,var(--evx-container));
  margin-inline:auto;
}
.evx-content{padding:2.25rem 0}

.evx-skip-link{
  position:absolute;left:-9999px;top:0;
  background:var(--evx-text);color:var(--evx-white);
  padding:.6rem 1rem;border-radius:10px;
}
.evx-skip-link:focus{left:1rem;top:1rem;z-index:9999}

/* 询盘提交成功提示（固定顶栏，高于导航 z-index:50） */
.evx-inquiry-flash{
  position:fixed;top:0;left:0;right:0;z-index:600;
  display:flex;align-items:flex-start;justify-content:center;gap:.75rem;
  padding:max(.65rem, env(safe-area-inset-top, 0px)) 1rem .75rem;
  padding-left:max(1rem, env(safe-area-inset-left, 0px));
  padding-right:max(1rem, env(safe-area-inset-right, 0px));
  background:linear-gradient(135deg, #15803d, #166534);
  color:#fff;
  box-shadow:0 8px 28px rgba(0,0,0,.2);
  transform:translateY(-100%);
  opacity:0;
  transition:transform .35s ease, opacity .35s ease;
  pointer-events:auto;
}
.evx-inquiry-flash.is-visible{
  transform:translateY(0);
  opacity:1;
}
.evx-inquiry-flash.is-hiding{
  transform:translateY(-100%);
  opacity:0;
}
.evx-inquiry-flash__inner{
  flex:1;min-width:0;text-align:center;max-width:42rem;margin-inline:auto;
}
.evx-inquiry-flash__title{
  margin:0;font-weight:800;font-size:clamp(.95rem, 2.8vw, 1.05rem);line-height:1.35;
  letter-spacing:.02em;
}
.evx-inquiry-flash__hint{
  margin:.25rem 0 0;font-size:.82rem;font-weight:500;opacity:.92;line-height:1.4;
}
.evx-inquiry-flash__close{
  flex-shrink:0;margin:0;padding:0 .15rem;border:0;background:transparent;color:#fff;
  font-size:1.5rem;line-height:1;cursor:pointer;border-radius:8px;opacity:.9;
  min-width:2rem;min-height:2rem;display:inline-grid;place-items:center;
}
.evx-inquiry-flash__close:hover,.evx-inquiry-flash__close:focus-visible{opacity:1;outline:2px solid rgba(255,255,255,.6);outline-offset:2px}

/* Header / Nav */
/* 顶栏 sticky 时会叠在正文上方；默认整块接收点击会导致下方按钮（如 Send Inquiry）「点不到」。
   仅让链接/按钮等可点，空白区域穿透到下层。 */
.evx-site-header{
  position:sticky;top:0;z-index:50;
  pointer-events:none;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(1.2) blur(8px);
  border-bottom:1px solid var(--evx-border);
  box-shadow:0 1px 0 rgba(2,8,23,.03);
}
.evx-site-header a,
.evx-site-header button,
.evx-site-header input,
.evx-site-header select,
.evx-site-header textarea,
.evx-site-header summary,
.evx-site-header [role="button"],
.evx-site-header .evx-primary-nav,
.evx-site-header .evx-social,
.evx-site-header .evx-social__popover{
  pointer-events:auto;
}

/* 顶栏：全宽纯色绿 + 仅下圆角；内容与 .evx-container 对齐主栏 */
.evx-topbar{
  position:relative;
  z-index:25;
  width:100%;
  background:var(--evx-topbar-solid);
  color:#fff;
  font-size:.88rem;
  border-radius:0 0 var(--evx-topbar-bottom-radius) var(--evx-topbar-bottom-radius);
  box-shadow:0 4px 14px rgba(40,80,10,.15);
  overflow:visible;
}
.evx-topbar__row{
  display:flex;align-items:center;justify-content:space-between;
  gap:.75rem 1rem;
  flex-wrap:wrap;
  padding:.55rem 0 .65rem;
}
.evx-topbar__left{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;align-items:center;
  gap:0;
}
.evx-topbar__item{
  display:flex;align-items:center;
  padding:0 .75rem;
  border-left:1px solid rgba(255,255,255,.32);
  white-space:nowrap;
}
.evx-topbar__left .evx-topbar__item:first-child{
  border-left:0;
  padding-left:0;
}
.evx-topbar a{color:#fff;text-decoration:none;font-weight:600}
.evx-topbar a:hover{text-decoration:underline;text-underline-offset:3px;opacity:.98}
.evx-topbar__link{display:inline-flex;align-items:center;gap:.5rem}
.evx-topbar__ico{
  flex-shrink:0;
  width:34px;height:34px;
  border-radius:50%;
  background:#fff;
  display:grid;place-items:center;
  color:var(--evx-topbar-solid);
  box-shadow:0 1px 3px rgba(0,0,0,.12);
}
.evx-topbar__ico-svg{display:block}
.evx-topbar__right{
  display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;
  position:relative;
  margin-left:auto;
  padding-left:0;
  border-left:0;
}
.evx-topbar:has(.evx-topbar__left li) .evx-topbar__right{
  padding-left:.65rem;
  border-left:1px solid rgba(255,255,255,.28);
}
/* 语言切换与社媒之间：与左侧邮箱/电话相同的竖线（加在紧邻语言块后的第一个社媒上） */
.evx-topbar__right > .evx-lang-switcher + .evx-social{
  border-left:1px solid rgba(255,255,255,.32);
  padding-left:.65rem;
  margin-left:.35rem;
}
.evx-topbar__social-hint{
  margin:0;font-size:.75rem;opacity:.95;max-width:min(40ch,100%);
  text-align:right;color:#fff;
}

/* Polylang — top bar language switcher */
.evx-lang-switcher{margin:0;padding:0}
.evx-lang-switcher ul{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .35rem;
}
.evx-lang-switcher li{display:inline-flex;align-items:center;margin:0}
.evx-lang-switcher a{
  display:inline-flex;align-items:center;gap:.28rem;
  padding:.28rem .5rem;border-radius:999px;
  font-size:.78rem;font-weight:750;letter-spacing:.02em;
  color:#fff;text-decoration:none;
  border:1px solid rgba(255,255,255,.45);
  background:rgba(255,255,255,.12);
  transition:background .15s ease,border-color .15s ease,transform .12s ease;
}
.evx-lang-switcher a:hover,.evx-lang-switcher a:focus-visible{
  background:rgba(255,255,255,.22);
  border-color:rgba(255,255,255,.65);
  outline:none;
}
.evx-lang-switcher .current-lang a,
.evx-lang-switcher li.current-lang a{
  background:rgba(255,255,255,.95);
  color:var(--evx-topbar-solid);
  border-color:#fff;
}
.evx-lang-switcher img{
  width:18px;height:auto;display:block;border-radius:2px;
  box-shadow:0 0 0 1px rgba(0,0,0,.08);
}

/* GEO: language switcher placement (context classes from evx_render_language_switcher) */
.evx-product-lang{
  display:flex;
  justify-content:flex-end;
  margin:0 0 .35rem;
}
.evx-lang-switcher--product-title a{
  border-color:rgba(15,23,42,.14);
  background:rgba(255,255,255,.96);
  color:rgba(15,23,42,.88);
}
.evx-lang-switcher--product-title .current-lang a,
.evx-lang-switcher--product-title li.current-lang a{
  background:rgba(139,197,63,.14);
  color:var(--evx-accent);
  border-color:rgba(139,197,63,.45);
}

.evx-inquiry__lang{
  display:flex;
  justify-content:flex-end;
  margin:0 0 1rem;
}
.evx-lang-switcher--inquiry a{
  border-color:var(--evx-border);
  background:rgba(255,255,255,.96);
  color:rgba(15,23,42,.88);
}
.evx-lang-switcher--inquiry .current-lang a,
.evx-lang-switcher--inquiry li.current-lang a{
  background:rgba(139,197,63,.14);
  color:var(--evx-accent);
  border-color:rgba(139,197,63,.45);
}

.evx-inquiry__lang--modal{
  margin:0 0 .75rem;
}
.evx-modal .evx-lang-switcher--modal a{
  border-color:var(--evx-border);
  background:rgba(255,255,255,.96);
  color:rgba(15,23,42,.88);
}
.evx-modal .evx-lang-switcher--modal .current-lang a,
.evx-modal .evx-lang-switcher--modal li.current-lang a{
  background:rgba(139,197,63,.14);
  color:var(--evx-accent);
  border-color:rgba(139,197,63,.45);
}

.evx-footer__lang-row{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:.85rem 0 0;
  margin:.65rem 0 0;
  border-top:1px solid rgba(255,255,255,.14);
}
.evx-footer__lang-row .evx-lang-switcher--footer a{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.42);
  color:#fff;
}
.evx-footer__lang-row .evx-lang-switcher--footer .current-lang a,
.evx-footer__lang-row .evx-lang-switcher--footer li.current-lang a{
  background:rgba(255,255,255,.95);
  color:var(--evx-footer-navy);
  border-color:#fff;
}

/* Mobile: show flags only — Polylang puts the language name in `a > span` */
@media (max-width:720px){
  .evx-lang-switcher a > span:not(.screen-reader-text){
    display:none !important;
  }
  .evx-lang-switcher a{
    padding:.32rem .42rem;
    min-width:2rem;
    justify-content:center;
  }
}

/* Social popovers (top bar) — 白底 + 社媒图标黄绿色 */
.evx-social{position:relative;z-index:1}
.evx-social__btn{
  display:inline-grid;place-items:center;
  width:34px;height:34px;border-radius:999px;
  border:2px solid rgba(255,255,255,.95);
  background:#fff;
  color:var(--evx-secondary);
  cursor:pointer;padding:0;
  transition:transform .12s ease,box-shadow .12s ease;
  box-shadow:0 1px 3px rgba(0,0,0,.1);
}
.evx-social__btn:hover,.evx-social__btn:focus-visible{
  transform:scale(1.05);
  outline:none;
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}
.evx-social__btn[aria-expanded="true"]{
  box-shadow:0 0 0 2px rgba(255,255,255,.6);
}
.evx-social__glyph{
  display:flex;align-items:center;justify-content:center;
  color:var(--evx-secondary);
}
.evx-social__popover{
  position:absolute;right:0;top:calc(100% + 8px);z-index:200;
  min-width:220px;max-width:min(92vw,280px);
  padding:.85rem 1rem;border-radius:12px;
  background:#fff;color:var(--evx-text);
  border:1px solid var(--evx-border);
  box-shadow:0 16px 40px rgba(2,8,23,.22);
}
.evx-social__popover-title{margin:0 0 .35rem;font-weight:800;font-size:.95rem}
.evx-social__popover-hint{margin:0 0 .6rem;font-size:.85rem;color:var(--evx-muted);line-height:1.45}
.evx-social__id{margin:0 0 .5rem}
.evx-social__id code{font-size:.9rem;background:rgba(139,197,63,.12);padding:.2rem .45rem;border-radius:6px}
.evx-social__out-link{
  display:inline-flex;font-weight:700;font-size:.88rem;
  color:var(--evx-accent);text-decoration:none;
  margin-top:.35rem;
}
.evx-social__out-link:hover{text-decoration:underline}
.evx-social__popover .evx-copyrow{outline:none}
.evx-social__popover .evx-copyrow:focus-visible,
.evx-social__popover .evx-copyrow:focus-within{
  border-color:rgba(139,197,63,.55);
  box-shadow:0 0 0 2px rgba(139,197,63,.3);
}
.evx-social__popover .evx-copyrow__btn:focus-visible{
  outline:2px solid rgba(139,197,63,.35);
  outline-offset:2px;
}
.evx-copyrow.evx-copyrow--popover-plain{
  background:rgba(248,250,252,.98);
  border:1px solid var(--evx-border);
  align-items:flex-start;
}
.evx-copyrow.evx-copyrow--popover-plain:focus-visible,
.evx-copyrow.evx-copyrow--popover-plain:focus-within{
  border-color:rgba(139,197,63,.45);
  box-shadow:0 0 0 2px rgba(139,197,63,.28);
}
.evx-social__popover .evx-copyrow + .evx-copyrow.evx-copyrow--popover-plain{margin-top:.45rem}
.evx-copyrow.evx-copyrow--popover-plain .evx-copyrow__btn{
  border-color:rgba(15,23,42,.2);
  color:rgba(15,23,42,.88);
}
.evx-copyrow.evx-copyrow--popover-plain.is-copied{
  box-shadow:0 0 0 3px rgba(95,175,25,.28) inset;
}
.evx-social__popover-plain{
  flex:1;min-width:0;
  font-size:.8rem;line-height:1.45;
  font-weight:600;
  color:rgba(15,23,42,.9);
  word-break:break-all;
}
.evx-header__inner{
  position:relative;
  z-index:10;
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;padding:.9rem 0;
}
/* Brand column: same vertical center as nav + CTA; remove stray line-box gap under images */
.evx-branding{
  display:flex;
  align-items:center;
  flex-shrink:0;
  line-height:0;
}
.evx-branding > a{
  display:flex;
  align-items:center;
  line-height:0;
}
.evx-site-title{font-weight:700;text-decoration:none;letter-spacing:.2px;line-height:1.2}
.evx-site-logo{display:inline-flex;align-items:center;line-height:0;text-decoration:none}
.evx-site-logo__img{display:block;height:auto;max-height:44px;width:auto;max-width:min(280px,58vw);object-fit:contain}
.custom-logo-link{display:flex!important;align-items:center;line-height:0}
.custom-logo{display:block;height:auto;max-height:44px;width:auto;object-fit:contain}
/* Optical: many horizontal logos read “high” vs menu text — nudge down to match cap/x-height alignment */
@media (min-width:721px){
  .evx-branding .custom-logo-link,
  .evx-branding .evx-site-logo{
    transform:translateY(3px);
  }
  .evx-branding .evx-site-title{
    transform:translateY(2px);
  }
}

.evx-nav-toggle{
  display:none;
  border:1px solid var(--evx-border);
  background:transparent;
  padding:.55rem .7rem;border-radius:12px;
}
.evx-nav-toggle__bars{
  display:block;width:20px;height:2px;background:var(--evx-text);
  box-shadow:0 6px 0 var(--evx-text),0 -6px 0 var(--evx-text);
}
.evx-primary-nav .evx-menu{
  list-style:none;margin:0;padding:0;
  display:flex;gap:1.1rem;align-items:stretch;
}
.evx-menu a{
  text-decoration:none;
  padding:.45rem .55rem;border-radius:10px;
  color:rgba(15,23,42,.9);
}
/* Desktop: make wrapped menu labels look aligned as a row (two-line items stay centered in-column). */
@media (min-width:721px){
  .evx-primary-nav .evx-menu > li{
    display:flex;
    align-items:stretch;
    max-width:min(12.5rem, 14vw);
  }
  .evx-primary-nav .evx-menu > li > a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:44px;
    text-align:center;
    line-height:1.15;
    hyphens:auto;
    -webkit-hyphens:auto;
    overflow-wrap:anywhere;
    word-break:normal;
  }
  @supports (text-wrap: balance){
    .evx-primary-nav .evx-menu > li > a{
      text-wrap:balance;
    }
  }
}
.evx-menu a:hover{background:rgba(139,197,63,.12)}
.evx-menu .current-menu-item > a,
.evx-menu .current_page_item > a,
.evx-menu .current-menu-ancestor > a,
.evx-menu .current_page_ancestor > a{
  color:var(--evx-accent) !important;
  font-weight:800 !important;
}
.evx-menu a[aria-current="page"],
.evx-menu a[aria-current="true"]{
  color:var(--evx-accent) !important;
  font-weight:800 !important;
}
.evx-menu li.is-current > a{
  color:var(--evx-accent) !important;
  font-weight:800 !important;
}
.evx-menu .current-menu-item > a:hover,
.evx-menu .current_page_item > a:hover{
  background:rgba(95,175,25,.12);
}
.evx-header__cta{display:flex;align-items:center;gap:.6rem}

/* Buttons */
.evx-btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:.5rem;
  border-radius:12px;
  padding:.7rem 1rem;
  border:1px solid transparent;
  text-decoration:none;
  font-weight:600;
  letter-spacing:.2px;
  cursor:pointer;
}
.evx-btn--pill{
  border-radius:999px;
  padding:.62rem .95rem;
  background:rgba(139,197,63,.14);
  border:1px solid rgba(139,197,63,.30);
  color:var(--evx-text);
}
.evx-btn--pill:hover{background:rgba(139,197,63,.18);border-color:rgba(139,197,63,.42)}
.evx-btn--cta{
  border-radius:999px;
  padding:.62rem .92rem .62rem 1rem;
  background:linear-gradient(135deg, var(--evx-secondary), var(--evx-accent));
  color:var(--evx-white);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 14px 30px rgba(95,175,25,.22);
}
.evx-btn--cta:hover{
  filter:saturate(1.03) brightness(1.02);
}
.evx-btn--cta .evx-icon{
  width:30px;height:30px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.35);
  color:var(--evx-white);
  box-shadow:none;
}
.evx-btn--cta .evx-btn__chev{
  width:28px;height:28px;
  background:#fff;
  border:1px solid rgba(255,255,255,.65);
  color:var(--evx-accent);
  font-size:20px;
}
.evx-btn--cta .evx-btn__chev svg{display:block}
.evx-btn__chev{
  display:inline-grid;place-items:center;
  width:26px;height:26px;border-radius:999px;
  background:linear-gradient(135deg,var(--evx-secondary),var(--evx-accent));
  color:var(--evx-white);
  font-size:18px;line-height:1;
}
.evx-btn--primary{
  background:linear-gradient(135deg,var(--evx-secondary),var(--evx-accent));
  color:var(--evx-white);
  box-shadow:0 12px 26px rgba(139,197,63,.18);
}
.evx-btn--primary:hover{filter:saturate(1.05) brightness(1.02)}
.evx-btn--ghost{
  background:transparent;
  color:var(--evx-text);
  border-color:var(--evx-border);
}
.evx-btn--ghost:hover{border-color:rgba(139,197,63,.45);background:rgba(139,197,63,.08)}
button.evx-btn{font:inherit}
/* 仅对旧的 pill 按钮做 background 继承；CTA 绿按钮需要自己的背景 */
.evx-header__cta .evx-open-quote:not(.evx-btn--cta){background:inherit}

.evx-icon{
  display:inline-grid;place-items:center;
  width:34px;height:34px;border-radius:999px;
  background:linear-gradient(135deg, rgba(139,197,63,.22), rgba(95,175,25,.16));
  color:var(--evx-accent);
  border:1px solid rgba(139,197,63,.30);
}
.evx-icon--sm{width:26px;height:26px}

/* Typography blocks */
.evx-page-head{margin:0 0 1.25rem}
.evx-page-title{margin:0;font-size:clamp(1.45rem,2.4vw,2.1rem);line-height:1.2}
.evx-section-title{margin:0 0 .75rem;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.2}
.evx-section-title--spaced{margin-top:2rem}
.evx-section-title--sm{font-size:clamp(1.1rem,1.6vw,1.35rem);margin-top:1.25rem}
.evx-muted{color:var(--evx-muted)}
.evx-meta{margin:.35rem 0 0}

.evx-prose :where(h2,h3,h4){line-height:1.25}
.evx-prose h2{margin:1.6rem 0 .8rem;font-size:1.35rem}
.evx-prose h3{margin:1.3rem 0 .6rem;font-size:1.15rem}
.evx-prose p{margin:.9rem 0}
.evx-prose ul{padding-left:1.1rem}
.evx-prose a{color:var(--evx-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* Grid */
.evx-grid{display:grid;gap:1rem}
.evx-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.evx-gap-lg{gap:1.5rem}

/* Cards */
.evx-loop{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.evx-card,.evx-mini-card,.evx-product-card{
  border:1px solid var(--evx-border);
  border-radius:var(--evx-radius);
  overflow:hidden;
  background:var(--evx-white);
  box-shadow:0 1px 0 rgba(2,8,23,.03);
}
.woocommerce ul.products li.evx-product-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.woocommerce ul.products li.evx-product-card .evx-product-card__link{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  text-align:left;
  position:relative;
  z-index:1;
}
.woocommerce ul.products li.evx-product-card .evx-product-card__body{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
}
.woocommerce ul.products li.evx-product-card .evx-product-card__actions{
  margin-top:auto;
  padding:0 1rem 1rem;
}
.woocommerce ul.products li.evx-product-card .evx-product-card__actions .button{
  width:max-content;
}
.evx-card__link,.evx-product-card__link{display:block;text-decoration:none}
.evx-card__body,.evx-product-card__body{padding:1rem}
.evx-card__title,.evx-product-card__title{margin:0 0 .35rem;font-size:1.05rem;line-height:1.25}
.evx-product-card__title-row{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  gap:.5rem .65rem;
  margin:0 0 .35rem;
  flex-direction:column;
}
.tax-product_cat .evx-product-card__title-row,
.tax-product_tag .evx-product-card__title-row,
.post-type-archive-product .evx-product-card__title-row{gap:.35rem;}
.evx-product-card__title-row .evx-product-card__title{
  flex:1 1 auto;
  min-width:0;
  margin:0;
}
.evx-product-card__tags{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start !important;
  align-items:flex-start;
  gap:.35rem;
  margin:.35rem 0 0;
  direction:ltr !important;
  unicode-bidi:isolate;
  text-align:left !important;
  align-content:flex-start;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  place-content:flex-start !important;
  writing-mode:horizontal-tb;
}
.woocommerce ul.products li.evx-product-card .evx-product-card__tags{
  width:100%;
  justify-content:flex-start !important;
  flex-direction:row;
  align-self:flex-start;
  text-align:left !important;
  direction:ltr !important;
  unicode-bidi:isolate;
  align-content:flex-start;
}
/* Ultra-specific override: prevent any RTL/layout overrides from reversing tags */
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tags,
html body .woocommerce ul.products li.evx-product-card .evx-product-card__tags{
  direction:ltr !important;
  unicode-bidi:isolate !important;
  writing-mode:horizontal-tb !important;
  text-align:left !important;
  justify-content:flex-start !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  flex-flow:row wrap !important;
  align-items:flex-start !important;
  align-content:flex-start !important;
  place-content:flex-start !important;
}

/* If any parent is RTL, neutralize it for product cards on archives */
html body.woocommerce ul.products li.evx-product-card,
html body.woocommerce ul.products li.evx-product-card .evx-product-card__body,
html body.woocommerce ul.products li.evx-product-card .evx-product-card__title-row{
  direction:ltr !important;
  unicode-bidi:isolate !important;
  text-align:left !important;
}

/* Archive grids: force LTR flow at the list/grid level too */
html body.woocommerce .products,
html body.woocommerce ul.products,
html body.woocommerce ul.products.columns-4{
  direction:ltr !important;
  unicode-bidi:isolate !important;
  text-align:left !important;
}

/* Ensure tags start flush-left (no inherited indentation) */
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tags{
  padding:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  inset-inline-start:auto;
}

/* Archive pages: avoid flex line-alignment quirks; use inline flow wrapping */
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tags{
  display:block !important;
  direction:ltr !important;
  text-align:left !important;
  white-space:normal !important;
}
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tag{
  display:inline-flex;
  margin:0 .35rem .35rem 0 !important;
  vertical-align:top;
}

/* Defensive: remove any pseudo content that could create leading space */
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tags::before,
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tags::after{
  content:none !important;
  display:none !important;
}

/* Defensive: neutralize any horizontal mirroring from parent contexts */
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tags,
html body.woocommerce ul.products li.evx-product-card .evx-product-card__tags *{
  transform:none !important;
}
@media (max-width: 720px){
  .woocommerce ul.products li.evx-product-card .evx-product-card__tags{
    justify-content:flex-start !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    align-content:flex-start !important;
    direction:ltr !important;
    unicode-bidi:plaintext;
    text-align:left !important;
  }
}
.woocommerce ul.products li.evx-product-card .evx-product-card__title{
  display:block;
  width:100%;
}
.tax-product_cat .evx-product-card__tags,
.tax-product_tag .evx-product-card__tags,
.post-type-archive-product .evx-product-card__tags{
  width:100%;
  margin:0;
}
.evx-product-card__tag{
  display:inline-flex;
  align-items:center;
  padding:.12rem .42rem;
  border-radius:999px;
  font-size:.68rem;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.02em;
  text-decoration:none;
  color:rgba(153,27,27,.95);
  background:rgba(239,68,68,.14);
  border:1px solid rgba(239,68,68,.38);
  white-space:nowrap;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  direction:ltr;
  unicode-bidi:isolate;
  order:0;
}
.evx-product-card__tag:hover,
.evx-product-card__tag:focus{
  text-decoration:none;
  color:rgba(127,29,29,.98);
  background:rgba(239,68,68,.2);
  border-color:rgba(239,68,68,.55);
}
.evx-search-modal__desc{margin:0 0 1rem;font-size:.92rem;line-height:1.45}
.evx-search-modal__form .evx-field{margin:0}
.evx-card__excerpt,.evx-product-card__excerpt{margin:0}

/* Breadcrumbs */
.evx-breadcrumbs{margin:0 0 1rem}
.evx-breadcrumbs__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.evx-breadcrumbs__item{display:flex;align-items:center;gap:.5rem}
.evx-breadcrumbs__item:after{content:"/";color:rgba(15,23,42,.35)}
.evx-breadcrumbs__item:last-child:after{content:""}
.evx-breadcrumbs__link{text-decoration:none;color:rgba(15,23,42,.8)}
.evx-breadcrumbs__link:hover{color:var(--evx-secondary)}
.evx-breadcrumbs__current{color:rgba(15,23,42,.65)}

/* Home - hero */
.evx-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(1200px 500px at 10% 10%, rgba(139,197,63,.22), transparent 60%),
    radial-gradient(900px 450px at 90% 30%, rgba(95,175,25,.16), transparent 55%),
    linear-gradient(180deg, rgba(15,23,42,.05), transparent 55%);
  border-bottom:1px solid var(--evx-border);
}
.evx-hero__bg{
  position:relative;
  z-index:0;
}
.evx-hero__inner{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:flex-start;
  padding:clamp(2.2rem, 4.5vw, 3.1rem) 0;
}
.evx-hero__content--overlay{
  max-width:64ch;
  padding:0;
  border-radius:0;
  border:0;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
  display:flex;
  flex-direction:column;
  gap:.9rem;
  width:min(44rem, 92vw);
}
.evx-hero__title{margin:0 0 .8rem;font-size:clamp(2rem,3.6vw,3rem);line-height:1.05;letter-spacing:-.4px}
.evx-hero__title,
.evx-hero__actions{
  color:#fff;
}
.evx-hero__title{
  text-shadow:0 10px 24px rgba(2,8,23,.35);
}
.evx-hero__title .evx-highlight{
  background:linear-gradient(180deg, transparent 68%, rgba(139,197,63,.35) 0);
  padding:0 .18em;
  border-radius:.25em;
}
.evx-hero__lead{margin:0 0 .85rem;color:rgba(15,23,42,.75);max-width:56ch}
.evx-hero__bullets{margin:0 0 1.1rem;padding-left:1.1rem;color:rgba(15,23,42,.76)}
.evx-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin-top:auto; /* push to bottom-left */
}
.evx-hero__actions .evx-btn--ghost{
  background:rgba(255,255,255,.92);
}
.evx-hero__actions .evx-btn--ghost:hover{
  background:#fff;
}
.evx-hero__video{
  position:relative;
  border-radius:0;
  overflow:hidden;
  height:100%;
  width:100%;
  background:#0b1220;
}
.evx-hero__video-el{
  width:100%;
  height:100%;
  object-fit:contain; /* keep original aspect ratio, no cropping */
  display:block;
}
.evx-hero__video:after{
  content:"";
  position:absolute;inset:0;
  background:
    radial-gradient(900px 420px at 18% 18%, rgba(139,197,63,.18), transparent 58%),
    linear-gradient(180deg, rgba(2,8,23,.55), rgba(2,8,23,.25) 45%, rgba(2,8,23,.62));
  pointer-events:none;
}
.evx-hero__video-play{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(255,255,255,.65);
  background:rgba(15,23,42,.55);
  color:#fff;
  border-radius:999px;
  padding:.65rem 1rem;
  font-weight:700;
  cursor:pointer;
  backdrop-filter:blur(8px);
}
.evx-hero__video-play:focus-visible{
  outline:2px solid rgba(139,197,63,.35);
  outline-offset:3px;
}
/* Desktop/tablet: video is a background layer; keep readable minimum */
.evx-hero__video--bg{
  width:100%;
  height:auto;
  aspect-ratio:var(--evx-hero-video-ar, 16/9);
}

/* Sections */
.evx-section{padding:clamp(2.2rem, 4.2vw, 3.1rem) 0}
.evx-section--alt{
  background:linear-gradient(180deg, rgba(139,197,63,.06), rgba(139,197,63,.015));
  border-top:1px solid var(--evx-border);
  border-bottom:1px solid var(--evx-border);
}
.evx-section__actions{margin-top:1.25rem}
/* 首页 Featured Models：与 shop 列表一致为网格并保留行/列间隙 */
.evx-products{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.25rem;
  margin-top:1rem;
}
.evx-cards{display:grid;gap:1rem}
.evx-cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.evx-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.evx-mini-card{padding:1.1rem}
.evx-mini-card__icon{
  display:inline-grid;place-items:center;
  width:42px;height:42px;border-radius:14px;
  background:linear-gradient(135deg, rgba(139,197,63,.22), rgba(95,175,25,.14));
  border:1px solid rgba(139,197,63,.30);
  color:var(--evx-accent);
  margin-bottom:.7rem;
}
.evx-mini-card__title{margin:0 0 .35rem;font-size:1.05rem}
.evx-mini-card__text{margin:0;color:rgba(15,23,42,.72)}
.evx-section__intro{max-width:62ch;margin:0 0 1.25rem;line-height:1.55}
.evx-section--pillars .evx-section__intro{
  max-width:none;
}
@media (min-width: 900px){
  .evx-section--pillars .evx-section__intro{
    white-space:nowrap;
  }
}
.evx-pillars{align-items:stretch}
.evx-pillar-card{
  display:flex;flex-direction:column;min-height:100%;
  border:1px solid var(--evx-border);
  border-radius:14px;
  background:rgba(255,255,255,.92);
  box-shadow:0 6px 22px rgba(2,8,23,.05);
}
.evx-pillar-card:hover{
  border-color:rgba(139,197,63,.32);
}
.evx-pillar-card__title{margin:0 0 .45rem;font-size:clamp(1.05rem,2.5vw,1.18rem);line-height:1.3}
.evx-pillar-card__text{
  margin:0 0 1rem;
  flex:1 1 auto;
  color:rgba(15,23,42,.76);
  line-height:1.55;
  font-size:.95rem;
}
.evx-pillar-card__cta{margin-top:auto;align-self:flex-start}
.evx-pillar-card__icon{margin-bottom:.65rem}

.evx-export-proof{margin-top:1.25rem}
.evx-section--alt .evx-section__intro{margin-bottom:1.1rem}
.evx-badge-card{
  background:rgba(255,255,255,.72);
  border-color:rgba(15,23,42,.10);
}

/* Soft dotted tech pattern (optional helper) */
.evx-pattern{
  background-image:radial-gradient(rgba(15,23,42,.14) 1px, transparent 1px);
  background-size:14px 14px;
  background-position:0 0;
}
.evx-media-box{
  border-radius:18px;
  border:1px solid rgba(139,197,63,.22);
  background:linear-gradient(135deg, rgba(15,23,42,.04), rgba(139,197,63,.05));
  box-shadow:var(--evx-shadow);
}
.evx-media-box__placeholder{height:280px;display:grid;place-items:center;color:rgba(15,23,42,.55)}

/* Media carousel (homepage / factory page) */
.evx-media-carousel{
  position:relative;
  overflow:hidden;
}
.evx-media-carousel__viewport{
  overflow:hidden;
  border-radius:18px;
}
.evx-media-carousel__track{
  display:flex;
  will-change:transform;
  transition:transform .35s ease;
}
.evx-media-carousel.is-dragging .evx-media-carousel__track{
  transition:none;
}
.evx-media-carousel__slide{
  flex:0 0 100%;
  width:100%;
  display:block;
}
.evx-media-carousel__slide img,
.evx-media-carousel__video{
  width:100%;
  height:280px;
  object-fit:cover;
  display:block;
  border-radius:18px;
}
.evx-media-carousel--snapshots .evx-media-carousel__slide img{
  object-position:center;
}
@media (min-width:721px){
  /* Desktop: give snapshots more vertical presence (avoid ultra-wide + short look). */
  .evx-media-carousel--snapshots .evx-media-carousel__slide img,
  .evx-media-carousel--snapshots .evx-media-carousel__video{
    height:clamp(300px, 24vw, 460px);
  }
}
.evx-media-carousel__video{
  background:rgba(2,6,23,.86);
}
.evx-media-carousel__btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.16);
  background:rgba(255,255,255,.82);
  color:rgba(15,23,42,.92);
  display:grid;
  place-items:center;
  box-shadow:0 10px 28px rgba(2,8,23,.12);
  cursor:pointer;
  user-select:none;
}
.evx-media-carousel__btn[disabled]{opacity:.45;cursor:default}
.evx-media-carousel__btn--prev{left:12px}
.evx-media-carousel__btn--next{right:12px}
.evx-media-carousel__btn span{font-size:26px;line-height:1;margin-top:-2px}
.evx-media-carousel__dots{
  position:absolute;
  left:0;right:0;bottom:10px;
  display:flex;
  justify-content:center;
  gap:7px;
  pointer-events:none;
}
.evx-media-carousel__dot{
  width:7px;height:7px;border-radius:999px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(15,23,42,.18);
  opacity:.9;
}
.evx-media-carousel__dot.is-active{
  width:18px;
  background:rgba(255,255,255,.92);
}
.evx-badge-card{
  padding:1rem;
  border:1px solid var(--evx-border);
  border-radius:var(--evx-radius);
  background:rgba(255,255,255,.6);
  display:grid;place-items:center;
  font-weight:700;
  letter-spacing:.4px;
}

/* Inquiry form */
.evx-inquiry{
  position:relative;
  z-index:1;
  isolation:isolate;
  border:1px solid var(--evx-border);border-radius:18px;background:var(--evx-white);box-shadow:var(--evx-shadow);
}
.evx-inquiry__inner{padding:1.5rem}
.evx-form{margin-top:1rem}
.evx-field{display:block}
.evx-field__label{display:block;font-weight:600;margin:0 0 .4rem}
.evx-input,.evx-textarea, .woocommerce input.input-text, .woocommerce textarea, .woocommerce select{
  width:100%;
  border:1px solid var(--evx-border);
  border-radius:12px;
  padding:.75rem .85rem;
  font:inherit;
  background:var(--evx-white);
}
.evx-textarea, .woocommerce textarea{
  resize:vertical;
}
.evx-field.is-error .evx-input,
.evx-field.is-error .evx-textarea{
  border-color:rgba(239,68,68,.55);
  box-shadow:0 0 0 3px rgba(239,68,68,.10);
}
.evx-field__error{
  margin:.35rem 0 0;
  font-size:.85rem;
  color:rgba(185,28,28,.95);
  line-height:1.35;
}
.evx-input:focus,.evx-textarea:focus, .woocommerce input.input-text:focus, .woocommerce textarea:focus, .woocommerce select:focus{
  outline:2px solid rgba(139,197,63,.28);
  border-color:rgba(139,197,63,.45);
}
.evx-form__actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1rem}
.evx-form__note{margin:0}

/* Inquiry AJAX toast (inline, no refresh) */
.evx-form-toast{
  margin:0 0 1rem;
  padding:.75rem .9rem;
  border-radius:14px;
  border:1px solid var(--evx-border);
  background:rgba(255,255,255,.92);
  color:var(--evx-text);
  box-shadow:0 10px 26px rgba(2,8,23,.08);
  opacity:0;
  transform:translateY(-6px);
  transition:opacity .18s ease, transform .18s ease;
}
.evx-form-toast.is-visible{opacity:1;transform:translateY(0)}
.evx-form-toast.is-success{
  border-color:rgba(34,197,94,.35);
  background:linear-gradient(135deg, rgba(34,197,94,.16), rgba(34,197,94,.06));
}
.evx-form-toast.is-error{
  border-color:rgba(239,68,68,.35);
  background:linear-gradient(135deg, rgba(239,68,68,.14), rgba(239,68,68,.06));
}
form.evx-form.is-submitting button[type="submit"]{opacity:.75;cursor:wait}

/* Quote modal (shared by Get Quote / Request a Quote) */
body.evx-modal-open{overflow:hidden}
.evx-modal{
  position:fixed;inset:0;z-index:200;
  display:flex;align-items:center;justify-content:center;
  padding:1rem;
}
.evx-modal[hidden]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.evx-modal__backdrop{
  position:absolute;inset:0;background:rgba(10,22,40,.55);
  backdrop-filter:saturate(1.1) blur(4px);
}
.evx-modal__dialog{
  position:relative;z-index:1;width:min(100%,560px);
  max-height:min(92vh,720px);overflow:auto;
  margin:auto;
  background:var(--evx-white);
  border-radius:18px;
  border:1px solid var(--evx-border);
  box-shadow:0 28px 80px rgba(2,8,23,.28);
  padding:1.25rem 1.25rem 1.5rem;
}
.evx-modal__close{
  position:absolute;top:.6rem;right:.6rem;z-index:2;
  width:40px;height:40px;border-radius:999px;
  border:1px solid var(--evx-border);
  background:rgba(255,255,255,.95);
  font-size:1.5rem;line-height:1;cursor:pointer;color:var(--evx-text);
}
.evx-modal__close:hover{background:var(--evx-white)}
.evx-modal__body{padding-top:.25rem}
.evx-inquiry--modal{border:0;box-shadow:none;border-radius:0}
.evx-inquiry--modal .evx-inquiry__head--modal{margin-bottom:.75rem}
.evx-modal__title{font-size:clamp(1.2rem,2.4vw,1.45rem);margin:0 0 .35rem;line-height:1.2}
.evx-inquiry__modal-desc{margin:0 0 .5rem;font-size:.92rem}

/* FAQ (GEO-friendly) */
.evx-faq{border:1px solid var(--evx-border);border-radius:18px;background:var(--evx-white);padding:1.25rem}
.evx-faq__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin:0 0 .75rem}
.evx-faq__head .evx-section-title{margin:0}
.evx-faq__head--titleless{justify-content:flex-end}
.evx-faq__toggle{
  border:1px solid rgba(15,23,42,.14);
  background:rgba(255,255,255,.92);
  color:rgba(15,23,42,.86);
  border-radius:999px;
  padding:.35rem .7rem;
  font-weight:850;
  font-size:.82rem;
  cursor:pointer;
}
.evx-faq__toggle:hover{background:#fff}
.evx-faq__toggle:focus-visible{outline:2px solid rgba(139,197,63,.45);outline-offset:2px}
.evx-faq__items{display:grid;gap:.75rem}
.evx-faq__item{
  border:1px solid var(--evx-border);
  border-radius:14px;
  background:rgba(255,255,255,.7);
  padding:.75rem .9rem;
}
.evx-faq__q{font-weight:700;cursor:pointer}
.evx-faq__a{margin-top:.6rem;color:rgba(15,23,42,.75)}

/* Spacing: separate FAQ block from above modules */
body.page-template-contact .evx-faq,
body.page-template-factory .evx-faq,
body.single-product .evx-faq,
body.tax-product_cat .evx-faq,
body.post-type-archive-product .evx-faq{
  margin-top:1.25rem;
}

/* FAQ page: avoid an extra outer "card" wrapper */
body.page-id-549 .evx-faq{
  border:0;
  background:transparent;
  padding:0;
}

/* Tables (GEO-friendly specs tables) */
.evx-table, .woocommerce table.shop_table{
  width:100%;
  border-collapse:collapse;
  border:1px solid var(--evx-border);
  border-radius:16px;
  overflow:hidden;
  background:var(--evx-white);
}
.evx-table th,.evx-table td, .woocommerce table.shop_table th, .woocommerce table.shop_table td{
  padding:.85rem .9rem;
  border-bottom:1px solid var(--evx-border);
  vertical-align:top;
}
.evx-table thead th, .woocommerce table.shop_table thead th{
  background:linear-gradient(180deg, rgba(139,197,63,.14), rgba(139,197,63,.035));
  text-align:left;
  font-weight:800;
}
.evx-table tr:last-child td{border-bottom:0}

/* Single product — ACF specs table */
.evx-product-specs{margin:1rem 0 1.15rem}
.evx-product-specs__title{margin:0 0 .65rem;font-size:clamp(1.08rem,1.8vw,1.22rem);line-height:1.25;font-weight:800;color:rgba(15,23,42,.92)}
.evx-product-specs__group{margin:0 0 .9rem}
.evx-product-specs__group:last-child{margin-bottom:0}
.evx-product-specs__group-title{margin:0 0 .45rem;font-size:.98rem;line-height:1.25;font-weight:850;color:rgba(15,23,42,.86)}
.evx-product-specs__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.evx-product-specs__table th[scope="row"]{
  width:38%;max-width:15rem;font-weight:800;text-align:left;
  color:rgba(15,23,42,.78);
  background:linear-gradient(180deg, rgba(139,197,63,.12), rgba(139,197,63,.04));
}
.evx-product-specs__table td{font-weight:650;color:rgba(15,23,42,.9)}
.evx-table.evx-product-specs__table tr:last-child th,
.evx-table.evx-product-specs__table tr:last-child td{border-bottom:0}

/* WooCommerce minimal styling */
.woocommerce ul.products{
  margin:1rem 0 0;
  padding:0;
  list-style:none;
  display:grid;
  /* Default desktop grid: 3 columns (fill the row). */
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1rem;
}

/* Responsive: avoid cramped cards on smaller screens */
@media (max-width: 980px){
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width: 560px){
  .woocommerce ul.products{grid-template-columns:repeat(1,minmax(0,1fr)) !important;}
}
.woocommerce ul.products li.product{margin:0;float:none;width:auto}
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit{
  border-radius:12px;
  border:1px solid transparent;
  padding:.7rem 1rem;
  font-weight:700;
}
.woocommerce div.product div.images{margin-bottom:1rem}
.woocommerce div.product .product_title{font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.15}
.evx-trust{margin:.9rem 0 0}
.evx-trust__list{margin:0;padding-left:1.05rem;color:rgba(15,23,42,.72)}
.evx-wc-inquiry-cta{margin-top:1.25rem}

/* Archive compare */
.evx-product-card{position:relative}
.evx-compare-toggle{
  position:absolute;
  top:.75rem;
  right:.75rem;
  z-index:10;
  pointer-events:auto;
  border:1px solid rgba(15,23,42,.14);
  background:rgba(255,255,255,.9);
  color:rgba(15,23,42,.9);
  border-radius:999px;
  padding:.35rem .7rem;
  font-weight:800;
  font-size:.78rem;
  cursor:pointer;
  box-shadow:0 10px 20px rgba(2,8,23,.08);
}
.evx-compare-toggle:hover{background:#fff}
.evx-compare-toggle.is-active{
  border-color:rgba(139,197,63,.65);
  box-shadow:0 0 0 3px rgba(139,197,63,.20), 0 10px 20px rgba(2,8,23,.08);
}

.evx-compare-bar{
  position:sticky;
  bottom:0;
  z-index:60;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(1.2) blur(10px);
  border-top:1px solid var(--evx-border);
  box-shadow:0 -10px 26px rgba(2,8,23,.06);
  padding:.65rem 0;
}
.evx-compare-bar__inner{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.evx-compare-bar__title{font-weight:900}
.evx-compare-bar__count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:1.6rem;
  height:1.6rem;
  margin-left:.5rem;
  border-radius:999px;
  background:rgba(139,197,63,.16);
  color:var(--evx-accent);
  font-weight:900;
}
.evx-compare-bar__right{display:flex;gap:.5rem;align-items:center}

.evx-compare-modal .evx-modal__dialog{
  /* Wider by default for comparison tables */
  width:min(96vw, 1280px);
  max-width:96vw;
}

/* Desktop: allow resizing the compare dialog */
@media (min-width: 900px){
  .evx-compare-modal .evx-modal__dialog{
    resize:both;
    overflow:auto;
    max-height:min(86vh, 880px);
  }
}
.evx-compare-loading{padding:.75rem 0;font-weight:700}
.evx-compare-error{padding:.75rem 0;color:#b91c1c;font-weight:700}
.evx-compare-table__scroll{overflow:auto;max-height:min(70vh, 720px);border:1px solid var(--evx-border);border-radius:16px}
.evx-compare{width:100%;border-collapse:collapse}
.evx-compare th,.evx-compare td{padding:.7rem .85rem;border-bottom:1px solid var(--evx-border);vertical-align:top}
.evx-compare-th--label{width:22%}
.evx-compare-prod{display:flex;gap:.7rem;align-items:center}
.evx-compare-prod__img{width:54px;height:54px;border-radius:12px;object-fit:cover;background:rgba(15,23,42,.03);border:1px solid rgba(15,23,42,.08)}
.evx-compare-prod__title{font-weight:900;text-decoration:none}
.evx-compare-sec__title{
  background:linear-gradient(180deg, rgba(139,197,63,.14), rgba(139,197,63,.035));
  font-weight:950;
  text-align:left;
}
.evx-compare-row.is-diff .evx-compare-label,
.evx-compare-row.is-diff .evx-compare-val{
  font-weight:900;
  background:rgba(250, 204, 21, .18);
}
.evx-compare-row.is-diff{
  outline:2px solid rgba(245, 158, 11, .35);
  outline-offset:-2px;
}
.evx-compare-row.is-diff .evx-compare-label{
  position:relative;
}
.evx-compare-row.is-diff .evx-compare-label::before{
  content:"";
  position:absolute;
  left:0;
  top:-1px;
  bottom:-1px;
  width:6px;
  background:linear-gradient(180deg, rgba(245, 158, 11, .95), rgba(250, 204, 21, .85));
  border-radius:6px;
}
.evx-compare-label{color:rgba(15,23,42,.86);text-align:left}
.evx-compare-val{color:rgba(15,23,42,.92)}

/* Single product gallery (no default WC CSS) */
.single-product .woocommerce-product-gallery{
  position:relative;
  background:linear-gradient(180deg, rgba(15,23,42,.02), rgba(15,23,42,.00));
  border:1px solid var(--evx-border);
  border-radius:18px;
  padding:.85rem;
  box-shadow:0 10px 26px rgba(2,8,23,.06);
}
.single-product .woocommerce-product-gallery__wrapper{
  margin:0;
  /* Use CSS vars so JS can adjust height reliably (works across flexslider/inline styles). */
  height:var(--evx-gal-wrap-h, auto) !important;
  min-height:0 !important;
  padding:0 !important;
}
.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image{
  margin:0;
  border-radius:14px;
  overflow:hidden;
  background:rgba(15,23,42,.03);
}
.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image{
  display:none;
}
.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image.is-active{
  display:block;
}
.single-product .woocommerce-product-gallery__wrapper img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.single-product .woocommerce-product-gallery__wrapper a{
  display:block;
  border-radius:14px;
  overflow:hidden;
  outline:none;
}
.single-product .woocommerce-product-gallery__wrapper a:focus-visible{
  box-shadow:0 0 0 4px rgba(139,197,63,.35);
}

/* Overlay nav buttons on the main image (no lightbox) */
.single-product .woocommerce-product-gallery .evx-gallery-stage,
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image{
  position:relative;
  overflow:visible;
}
.single-product .woocommerce-product-gallery{
  position:relative;
}
.single-product .woocommerce-product-gallery a.woocommerce-product-gallery__trigger{
  display:none !important;
}

/* Flexslider height glitches (mobile rotation / slide change) */
.single-product .woocommerce-product-gallery .flex-viewport{
  height:var(--evx-gal-vp-h, auto) !important;
}
.single-product .woocommerce-product-gallery .slides,
.single-product .woocommerce-product-gallery .slides > li{
  height:auto !important;
}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{
  padding-bottom:0 !important;
}
.single-product .woocommerce-product-gallery__wrapper::before,
.single-product .woocommerce-product-gallery__wrapper::after{
  content:none !important;
}
.single-product .woocommerce-product-gallery .evx-galnav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(2,8,23,.35);
  color:#fff;
  font-size:40px;
  line-height:1;
  cursor:pointer;
  display:grid !important;
  place-items:center;
  z-index:20;
  box-shadow:0 12px 24px rgba(0,0,0,.18);
  padding:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  text-decoration:none !important;
  pointer-events:auto;
}
.single-product .woocommerce-product-gallery .evx-galnav--prev{left:10px}
.single-product .woocommerce-product-gallery .evx-galnav--next{right:10px}
.single-product .woocommerce-product-gallery .evx-galnav:hover{background:rgba(2,8,23,.46)}
.single-product .woocommerce-product-gallery .evx-galnav:focus-visible{
  outline:none;
  box-shadow:0 0 0 4px rgba(139,197,63,.35), 0 12px 24px rgba(0,0,0,.18);
}
@media (max-width: 520px){
  .single-product .woocommerce-product-gallery .evx-galnav{
    width:44px;height:44px;border-radius:14px;font-size:34px;
  }
  .single-product .woocommerce-product-gallery .evx-galnav--prev{left:8px}
  .single-product .woocommerce-product-gallery .evx-galnav--next{right:8px}
}

/* Thumbnails (Flexslider markup) */
.single-product .woocommerce-product-gallery .flex-control-thumbs{
  margin:.75rem 0 0;
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:.5rem;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{
  margin:0;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{
  width:100%;
  height:64px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(15,23,42,.03);
  cursor:pointer;
  transition:transform .12s ease, border-color .12s ease, box-shadow .12s ease, opacity .12s ease;
  opacity:.92;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover{
  transform:translateY(-1px);
  opacity:1;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs .flex-active{
  border-color:rgba(139,197,63,.75);
  box-shadow:0 0 0 3px rgba(139,197,63,.22);
  opacity:1;
}
@media (max-width: 900px){
  .single-product .woocommerce-product-gallery .flex-control-thumbs{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media (max-width: 520px){
  .single-product .woocommerce-product-gallery{padding:.7rem}
  .single-product .woocommerce-product-gallery .flex-control-thumbs{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .single-product .woocommerce-product-gallery .flex-control-thumbs img{height:56px}
}

/* (Lightbox removed in favor of in-place overlay nav) */

/* WooCommerce star ratings (theme disables default WC CSS — restore visual stars) */
.woocommerce .star-rating{
  position:relative;display:inline-block;vertical-align:middle;
  width:5.6em;height:1.15em;line-height:1;font-size:1.05rem;
  overflow:hidden;white-space:nowrap;
}
.woocommerce .star-rating::before{
  content:"\2605\2605\2605\2605\2605";
  position:absolute;left:0;top:0;
  letter-spacing:.12em;color:rgba(15,23,42,.14);
  line-height:1.15em;
}
.woocommerce .star-rating > span{
  position:absolute;left:0;top:0;overflow:hidden;padding-top:1.4em;height:1.15em;
  box-sizing:border-box;
}
.woocommerce .star-rating > span::before{
  content:"\2605\2605\2605\2605\2605";
  position:absolute;left:0;top:0;
  letter-spacing:.12em;color:var(--evx-accent);
  line-height:1.15em;
}
.woocommerce .star-rating .rating{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}

/* Single product reviews: layout + interactive stars (WC injects <p class="stars"> links) */
.woocommerce #reviews .commentlist .comment_container{
  display:flex;align-items:flex-start;gap:.85rem;
  padding:1rem 0;border-bottom:1px solid var(--evx-border);
}
.woocommerce #reviews .commentlist .comment_container .evx-review-avatar,
.woocommerce #reviews .commentlist .comment_container img.avatar{
  flex-shrink:0;width:56px;height:56px;border-radius:999px;object-fit:cover;
  border:1px solid rgba(139,197,63,.35);background:rgba(139,197,63,.08);
}
.woocommerce #reviews .commentlist .comment-text{flex:1;min-width:0}
.woocommerce #reviews .commentlist .meta{margin:.25rem 0 .5rem;font-size:.92rem;color:rgba(15,23,42,.72)}
.woocommerce #reviews .commentlist .woocommerce-review__author{color:rgba(15,23,42,.92);font-weight:800}

/* #reviews：不依赖 #review_form 嵌套，避免结构差异导致样式不生效；选中态由 data-evx-rating + main.js 同步 */
.woocommerce #reviews #respond .comment-form-rating{margin:.5rem 0 1rem}
.woocommerce #reviews #respond .comment-form-rating label{display:block;font-weight:700;margin-bottom:.35rem}
.woocommerce #reviews #respond p.stars{margin:.35rem 0 .75rem;line-height:1}
.woocommerce #reviews #respond p.stars span{
  display:inline-flex;flex-wrap:wrap;gap:.12rem;align-items:center;
}
.woocommerce #reviews #respond p.stars a{
  display:inline-grid;place-items:center;
  width:2.35rem;height:2.35rem;
  text-decoration:none;border-radius:10px;
  font-size:0;line-height:0;color:transparent;
  transition:background .15s ease,color .15s ease,transform .12s ease;
}
.woocommerce #reviews #respond p.stars a::before{
  content:"\2605";
  font-size:1.65rem;line-height:1;
  color:rgba(15,23,42,.2);
}
.woocommerce #reviews #respond p.stars a:hover,
.woocommerce #reviews #respond p.stars a:focus-visible{
  outline:none;background:rgba(139,197,63,.12);
}
.woocommerce #reviews #respond p.stars a:focus-visible{box-shadow:0 0 0 2px rgba(139,197,63,.45)}
.woocommerce #reviews #respond p.stars[data-evx-rating="1"] span a:nth-child(-n+1)::before,
.woocommerce #reviews #respond p.stars[data-evx-rating="2"] span a:nth-child(-n+2)::before,
.woocommerce #reviews #respond p.stars[data-evx-rating="3"] span a:nth-child(-n+3)::before,
.woocommerce #reviews #respond p.stars[data-evx-rating="4"] span a:nth-child(-n+4)::before,
.woocommerce #reviews #respond p.stars[data-evx-rating="5"] span a:nth-child(-n+5)::before{
  color:var(--evx-accent);
}

.woocommerce .woocommerce-result-count{margin:0;color:rgba(15,23,42,.7)}
.woocommerce .woocommerce-ordering{margin:0}
.evx-wc-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0}
.evx-wc-toolbar__left{width:100%}
.evx-wc-toolbar__row{
  width:100%;
  display:flex;
  align-items:center;
  flex-direction:column;
  align-items:stretch;
  gap:1rem;
  padding:.75rem .85rem;
  border:1px solid var(--evx-border);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.82));
  box-shadow:none;
}
.evx-wc-count .woocommerce-result-count{margin:0;color:rgba(15,23,42,.72);font-weight:650}
.evx-wc-count{flex:0 0 auto}
.evx-wc-filters{
  display:flex;
  flex-direction:column;
  gap:.6rem;
  align-items:center;
  justify-content:flex-start;
}
.evx-wc-filterline{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:.5rem;
}

.evx-wc-drawer{
  width:100%;
  border:1px solid var(--evx-border);
  border-radius:16px;
  background:rgba(255,255,255,.92);
  overflow:hidden;
}
.evx-wc-drawer__summary{
  list-style:none;
  cursor:pointer;
  padding:.75rem .85rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  font-weight:800;
  color:rgba(15,23,42,.9);
  background:linear-gradient(180deg, rgba(139,197,63,.10), rgba(255,255,255,.92));
}
.evx-wc-drawer__summary::-webkit-details-marker{display:none}
.evx-wc-drawer__title{display:inline-flex;align-items:center;gap:.5rem}
.evx-wc-drawer__hint{
  font-weight:650;
  font-size:.9rem;
  color:rgba(15,23,42,.6);
  white-space:nowrap;
}
.evx-wc-drawer__body{
  padding:.75rem .85rem .85rem;
  border-top:1px solid var(--evx-border);
}
.evx-wc-drawer:not([open]) .evx-wc-drawer__body{display:none}
.evx-wc-filter{display:none;align-items:center}
.evx-wc-select{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid var(--evx-border);
  border-radius:999px;
  padding:.55rem 2rem .55rem .9rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.88));
  color:rgba(15,23,42,.9);
  font:inherit;
  font-weight:650;
  letter-spacing:.01em;
  box-shadow:none;
  cursor:pointer;
  background-image:
    radial-gradient(circle at 85% 50%, rgba(139,197,63,.18) 0 38%, transparent 39%),
    linear-gradient(45deg, transparent 50%, rgba(15,23,42,.65) 50%),
    linear-gradient(135deg, rgba(15,23,42,.65) 50%, transparent 50%);
  background-position:
    right .6rem center,
    right 1.05rem center,
    right .9rem center;
  background-size:
    18px 18px,
    8px 8px,
    8px 8px;
  background-repeat:no-repeat;
}
.evx-wc-select:focus{
  outline:none;
  border-color:rgba(139,197,63,.55);
  box-shadow:0 0 0 3px rgba(139,197,63,.18);
}

/* Chips (horizontal filters) */
.evx-wc-chips{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  align-items:center;
}
.evx-wc-chips__label{
  font-weight:800;
  color:rgba(15,23,42,.72);
  font-size:.92rem;
  margin-right:.1rem;
  white-space:nowrap;
}
.evx-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.45rem .8rem;
  border-radius:999px;
  border:1px solid var(--evx-border);
  background:#fff;
  color:rgba(15,23,42,.86);
  text-decoration:none;
  font-weight:700;
  font-size:.9rem;
  line-height:1.2;
  white-space:nowrap;
}
.evx-chip.is-active{
  border-color:rgba(95,175,25,.55);
  color:var(--evx-accent);
  background:rgba(139,197,63,.12);
}
.evx-chip:active{transform:translateY(1px)}

@media (max-width: 720px){
  .evx-wc-toolbar__row{
    flex-direction:column;
    align-items:stretch;
  }
  .evx-wc-filters{justify-content:flex-start}
}

/* Footer — 深蓝底 + 浅蓝卡片区 + 黄绿图标（参考图） */
.evx-site-footer{
  position:relative;
  z-index:5;
  flex-shrink:0;
  width:100%;
  background:var(--evx-footer-navy);
  color:#fff;
  border-top:1px solid rgba(255,255,255,.08);
}
.evx-footer__strip{
  padding:1rem 0 max(1.1rem, env(safe-area-inset-bottom, 0px));
}
.evx-footer__blocks{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.65rem .75rem;
}
.evx-footer__block{
  display:flex;align-items:flex-start;gap:.55rem;
  padding:.55rem .65rem .65rem;
  background:var(--evx-footer-navy-card);
  border-radius:3px;
  border-bottom:1px solid rgba(255,255,255,.38);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.evx-footer__icon{
  flex-shrink:0;display:inline-grid;place-items:center;
  width:36px;height:36px;border-radius:999px;
  background:linear-gradient(145deg,var(--evx-footer-lime),var(--evx-lime-bright-dark));
  color:#fff;
  box-shadow:0 2px 6px rgba(0,0,0,.22);
}
.evx-footer__icon svg{display:block}
.evx-footer__icon svg path{fill:currentColor}
.evx-footer__block-text{display:grid;gap:.15rem;min-width:0}
.evx-footer__block-title{font-size:.95rem;font-weight:800;letter-spacing:.02em;color:#fff;line-height:1.25}
.evx-footer__block-line{
  margin:0;font-size:.95rem;color:rgba(255,255,255,.92);
  text-decoration:none;word-break:break-word;line-height:1.35;
}
.evx-tel__img{
  display:inline-block;
  /* Anti-scrape SVG text image: keep it readable */
  height:clamp(28px, 2.2vw, 34px);
  width:auto;
  max-width:100%;
  vertical-align:-0.18em;
}
.evx-topbar__text{min-width:0}
.evx-topbar__text .evx-tel__img{height:20px;vertical-align:-0.12em}
.evx-footer__block-line .evx-tel__img{display:block;height:20px}
.evx-textimg{
  display:inline-block;
  height:22px;
  width:auto;
  max-width:100%;
  vertical-align:-0.12em;
}

/* Copy rows inside social popovers */
.evx-copyrow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.6rem;
  padding:.55rem .6rem;
  border-radius:12px;
  background:linear-gradient(135deg, var(--evx-secondary), var(--evx-accent));
  border:1px solid rgba(15,23,42,.10);
  cursor:pointer;
  user-select:none;
  width:100%;
  box-sizing:border-box;
}
.evx-copyrow .evx-textimg{
  height:28px;
  max-width:calc(100% - 46px);
}
.evx-copyrow__btn{
  flex-shrink:0;
  width:32px;height:32px;border-radius:10px;
  border:1px solid rgba(255,255,255,.6);
  background:#fff;
  color:var(--evx-accent);
  display:inline-grid;place-items:center;
  cursor:pointer;
}
.evx-copyrow.is-copied{
  box-shadow:0 0 0 3px rgba(255,255,255,.35) inset;
}
.evx-topbar .evx-tel__img{filter:none}
.evx-site-footer .evx-tel__img{filter:none}
.evx-footer__block-line--muted{opacity:.82;font-size:.95rem;color:rgba(255,255,255,.75)}
.evx-footer__block-btn{
  background:none;border:none;padding:0;cursor:pointer;
  text-align:left;font:inherit;color:var(--evx-footer-lime);
  font-weight:700;text-decoration:underline;text-underline-offset:3px;
}
.evx-footer__block-btn:hover{color:#fff}

.evx-footer__bottom{
  margin-top:.85rem;
  padding-top:.75rem;
  border-top:1px solid rgba(0,0,0,.35);
  display:flex;flex-direction:column;gap:.65rem;align-items:stretch;
}
.evx-footer__bottom-row{
  width:100%;display:flex;flex-wrap:wrap;align-items:center;
  justify-content:flex-end;gap:1rem;
}
.evx-footer__quicknav{flex:1;min-width:min(100%,200px)}
.evx-footer-quicklinks{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;align-items:center;gap:1.1rem 1.5rem;
}
.evx-footer-quicklinks a{
  color:#fff;font-weight:700;font-size:.95rem;text-decoration:none;
  letter-spacing:.02em;
}
.evx-footer-quicklinks a:hover{text-decoration:underline;text-underline-offset:3px}

.evx-legal{
  list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;
  justify-content:center;gap:1rem 1.25rem;
}
.evx-legal a{
  color:rgba(255,255,255,.78);text-decoration:none;font-size:.86rem;
}
.evx-legal a:hover{color:var(--evx-footer-lime);text-decoration:underline}
.evx-copyright{
  margin:0;text-align:center;
  color:rgba(255,255,255,.88);font-size:.95rem;line-height:1.5;
  padding:.15rem 0 .35rem;
}

.evx-backtotop{
  flex-shrink:0;
  width:36px;height:36px;border-radius:999px;
  border:2px solid var(--evx-footer-lime);
  background:transparent;color:var(--evx-footer-lime);
  display:inline-grid;place-items:center;cursor:pointer;padding:0;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.evx-backtotop:hover{
  background:rgba(119,185,0,.2);
  border-color:#fff;
  color:#fff;
}

/* Responsive */
@media (max-width: 980px){
  .evx-hero__inner{grid-template-columns:1fr}
  .evx-loop{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evx-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}
  .evx-cards--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evx-cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce .products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evx-footer__blocks{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 720px){
  /* 底部留白：避免版权行落在系统手势区/浏览器底栏下，且增加可滚过页脚的余量 */
  body{
    padding-bottom:max(5.5rem, calc(env(safe-area-inset-bottom, 0px) + 3rem));
  }
  .evx-nav-toggle{display:inline-flex}
  /* 手机顶栏：略收紧左右留白，绿条内图标垂直居中 */
  .evx-site-header .evx-container.evx-header__inner{
    width:min(100% - 1rem, var(--evx-container));
    gap:.45rem;
    padding:.65rem 0;
    align-items:center;
  }
  .evx-branding{
    flex:1 1 0;
    min-width:0;
    max-width:min(52%, calc(100% - 7.5rem));
  }
  .evx-branding .evx-site-logo__img,
  .evx-branding .custom-logo{
    max-height:32px;
    max-width:100%;
    width:auto;
    object-fit:contain;
  }
  .evx-branding .evx-site-title{
    font-size:clamp(.8rem, 3.2vw, .95rem);
    line-height:1.15;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    overflow:hidden;
  }
  .evx-nav-toggle{
    padding:.42rem .52rem;
    flex-shrink:0;
  }
  .evx-header__cta{
    flex-shrink:0;
    gap:.35rem;
  }
  .evx-header__cta .evx-btn--cta{
    padding:.48rem .62rem .48rem .72rem;
    font-size:.78rem;
    gap:.35rem;
    line-height:1.15;
    white-space:nowrap;
    box-shadow:0 8px 20px rgba(95,175,25,.2);
  }
  .evx-header__cta .evx-btn--cta .evx-btn__chev{
    width:22px;
    height:22px;
    flex-shrink:0;
  }
  .evx-header__cta .evx-btn--cta .evx-btn__chev svg{
    width:14px;
    height:14px;
  }
  .evx-topbar{
    border-radius:0 0 12px 12px;
  }
  .evx-topbar__text{display:none}
  .evx-topbar__row{
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    gap:.25rem;
    padding:.5rem 0;
    /* 勿对顶栏行设 overflow，否则气泡会被裁切或错位 */
  }
  .evx-topbar__left{
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:center;
    gap:.25rem;
    flex:0 0 auto;
    min-width:0;
  }
  .evx-topbar__item{
    border-left:0;
    padding:0 .15rem !important;
    flex-shrink:0;
  }
  .evx-topbar__ico{width:30px;height:30px}
  .evx-topbar__ico-svg{width:18px;height:18px}
  .evx-topbar__right{
    margin-left:auto;
    padding-left:.35rem;
    border-left:1px solid rgba(255,255,255,.28);
    justify-content:flex-end;
    flex-wrap:nowrap;
    flex:0 0 auto;
    gap:.3rem;
  }
  .evx-social__btn{width:30px;height:30px}
  .evx-social__glyph svg{width:18px;height:18px}
  .evx-topbar__social-hint{display:none}
  /* Hero: mobile should not block/cover the video area.
     Put video in normal flow, content below it. */
  .evx-hero{
    display:flex;
    flex-direction:column;
  }
  .evx-hero__bg{
    position:relative;
    inset:auto;
    width:100%;
  }
  .evx-hero__inner{
    position:relative;
    inset:auto;
    min-height:auto;
    padding:1.1rem 0 1.4rem;
  }
  .evx-hero__content--overlay{
    width:100%;
    min-height:auto;
  }

  /* Mobile video: full-bleed width, height auto via aspect ratio */
  .evx-hero__video--bg{
    min-height:0;
    height:auto;
    aspect-ratio:var(--evx-hero-video-ar, 16/9);
  }
  .evx-hero__video{height:auto}
  .evx-hero__video-el{height:auto}

  /* Mobile hero content is below video: use dark text */
  .evx-hero__title,
  .evx-hero__actions{
    color:var(--evx-text);
  }
  .evx-hero__title{
    text-shadow:none;
  }
  .evx-hero__title .evx-highlight{
    background:linear-gradient(180deg, transparent 68%, rgba(139,197,63,.25) 0);
  }
  .evx-primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:rgba(255,255,255,.98);border-bottom:1px solid var(--evx-border)}
  .evx-primary-nav.is-open{display:block}
  .evx-primary-nav .evx-menu{flex-direction:column;align-items:stretch;padding:.75rem 1rem}
  .evx-products{grid-template-columns:1fr;gap:1.1rem}
  .evx-footer__blocks{grid-template-columns:1fr;gap:.55rem}
  .evx-footer__strip{padding-bottom:max(2.25rem, env(safe-area-inset-bottom, 16px))}
  .evx-footer__bottom{
    margin-top:1rem;
    padding-bottom:.35rem;
    gap:.65rem;
  }
  .evx-footer__bottom-row{flex-direction:column;align-items:stretch}
  .evx-footer__quicknav{width:100%}
  .evx-footer-quicklinks{justify-content:center}
  .evx-backtotop{align-self:center}
  .evx-copyright{padding-bottom:.25rem}
  .evx-grid--2{grid-template-columns:1fr}
  .evx-loop{grid-template-columns:1fr}
  .evx-cards--3,.evx-cards--4{grid-template-columns:1fr}
  .woocommerce .products{grid-template-columns:1fr}
}

/* 极窄屏：再收一档，避免横向溢出 */
@media (max-width: 380px){
  .evx-branding{
    max-width:min(48%, calc(100% - 6.75rem));
  }
  .evx-branding .evx-site-logo__img,
  .evx-branding .custom-logo{
    max-height:28px;
  }
  .evx-header__cta .evx-btn--cta .evx-btn__chev{
    display:none;
  }
  .evx-header__cta .evx-btn--cta{
    padding:.45rem .55rem;
    font-size:.74rem;
  }
}

/* Contact page */
.evx-contact-page-wrap .evx-page-head{margin-bottom:1.5rem}
.evx-contact-page__excerpt{margin:.35rem 0 0;font-size:.98rem;line-height:1.5;color:rgba(15,23,42,.72)}
.evx-contact-page__intro{margin:0 0 1.75rem}
.evx-contact-page__layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  gap:clamp(1.25rem,3vw,2.25rem);
  align-items:start;
}
.evx-contact-page__panel{
  border:1px solid var(--evx-border);
  border-radius:12px;
  background:rgba(255,255,255,.92);
  padding:clamp(1.1rem,2.5vw,1.5rem);
  box-shadow:0 1px 0 rgba(15,23,42,.04);
}
.evx-contact-page__panel-title{
  margin:0 0 1rem;
  font-size:clamp(1.05rem,2.2vw,1.2rem);
  line-height:1.25;
  font-weight:650;
  letter-spacing:-.01em;
}
.evx-contact-page__panel--form .evx-inquiry{border:0;box-shadow:none;border-radius:0;padding:0;background:transparent}
.evx-contact-page__panel--form .evx-inquiry__inner{padding:0}
.evx-contact-cards__company{margin:0 0 .85rem;font-weight:650;font-size:1.02rem;color:rgba(15,23,42,.92)}
.evx-contact-cards__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:.65rem;
}
.evx-contact-card{
  display:flex;
  flex-direction:column;
  gap:.2rem;
  padding:.65rem .85rem;
  border-radius:10px;
  background:rgba(248,250,252,.95);
  border:1px solid rgba(15,23,42,.06);
}
.evx-contact-card__label{
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:650;
  color:rgba(15,23,42,.48);
}
.evx-contact-card__value{
  font-size:.95rem;
  line-height:1.45;
  color:rgba(15,23,42,.88);
  word-break:break-word;
}
.evx-contact-card__value--multiline{white-space:pre-line}
a.evx-contact-card__value{color:var(--evx-accent,#2563eb);text-decoration:none}
a.evx-contact-card__value:hover,a.evx-contact-card__value:focus-visible{text-decoration:underline}
a.evx-contact-card__value--tel{
  display:inline-block;
  line-height:0;
  text-decoration:none;
  color:inherit;
}
a.evx-contact-card__value--tel:hover,a.evx-contact-card__value--tel:focus-visible{
  text-decoration:none;
  opacity:.92;
}
a.evx-contact-card__value--tel .evx-tel__img{
  display:block;
  height:clamp(20px, 3.5vw, 24px);
  width:auto;
  max-width:100%;
  filter:none;
}
.evx-contact-social{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--evx-border)}
.evx-contact-social__title{margin:0 0 .55rem;font-size:.85rem;font-weight:650;color:rgba(15,23,42,.55)}
.evx-contact-social__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  align-items:center;
}
.evx-contact-social__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.5rem;
  height:2.5rem;
  border-radius:10px;
  border:1px solid rgba(15,23,42,.1);
  background:#fff;
  color:var(--evx-secondary);
  transition:color .15s ease,border-color .15s ease,background .15s ease;
}
a.evx-contact-social__btn:hover,a.evx-contact-social__btn:focus-visible{
  color:var(--evx-accent);
  border-color:rgba(95,175,25,.45);
  background:rgba(139,197,63,.08);
}
.evx-contact-social__btn--wechat{
  width:auto;
  min-height:2.5rem;
  padding:0 .65rem;
  gap:.45rem;
  cursor:default;
}
.evx-contact-social__glyph{display:flex;line-height:0;color:var(--evx-secondary)}
.evx-contact-social__glyph svg{width:20px;height:20px}
.evx-contact-social__text{font-size:.82rem;font-weight:600;color:rgba(15,23,42,.82)}
.evx-contact-social__item--wide{flex:1 1 100%;min-width:min(100%,280px)}
.evx-contact-social__url-block{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.45rem;
  width:100%;
}
.evx-contact-social__url-plain{
  flex:1;
  min-width:0;
  font-size:.82rem;
  font-weight:600;
  line-height:1.45;
  color:rgba(15,23,42,.88);
  word-break:break-all;
  text-align:center;
}
.evx-copyrow--with-icon .evx-contact-social__url-plain{align-self:center}
.evx-copyrow--contact.evx-copyrow--plain-url:not(.evx-copyrow--with-icon){
  align-items:center;
  justify-content:center;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.6rem;
}
.evx-copyrow--contact.evx-copyrow--plain-url.evx-copyrow--with-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
}
.evx-copyrow--plain-url:not(.evx-copyrow--with-icon) .evx-copyrow__btn{margin-top:0}
.evx-copyrow--contact.evx-copyrow--wa-digits{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:.5rem;
}
.evx-contact-social__digits-mid{
  display:flex;
  justify-content:center;
  align-items:center;
  min-width:0;
}
.evx-contact-social__open-link{
  font-size:.82rem;
  font-weight:650;
  color:var(--evx-accent);
  text-decoration:none;
  align-self:center;
  text-align:center;
}
.evx-contact-social__open-link:hover,.evx-contact-social__open-link:focus-visible{text-decoration:underline}
/* Follow us 复制行：焦点与 Inquiry 输入框一致（outline + border），无 transition */
.evx-copyrow--contact{
  background:rgba(248,250,252,.98);
  border:1px solid rgba(15,23,42,.1);
  cursor:pointer;
  user-select:none;
  width:100%;
  box-sizing:border-box;
  outline:none;
  box-shadow:none;
  transition:none;
}
.evx-copyrow--contact:focus-within{
  outline:2px solid rgba(139,197,63,.28);
  border-color:rgba(139,197,63,.45);
  box-shadow:none;
}
.evx-copyrow--contact .evx-copyrow__btn{
  border-color:rgba(15,23,42,.18);
  color:rgba(15,23,42,.85);
  outline:none;
  transition:none;
}
/* 内层按钮不再单独画一圈，与 Inquiry 单输入框同款一圈高亮 */
.evx-copyrow--contact .evx-copyrow__btn:focus-visible{
  outline:none;
  border-color:rgba(139,197,63,.45);
  box-shadow:none;
}
.evx-copyrow--contact .evx-textimg{
  height:18px;
  max-width:min(100%,220px);
  width:auto;
  object-fit:contain;
  object-position:center;
}
.evx-copyrow--contact.is-copied{
  border-color:rgba(139,197,63,.5);
  outline:none;
  box-shadow:inset 0 0 0 2px rgba(139,197,63,.22);
  transition:none;
}
.evx-contact-social__glyph--inline{
  display:inline-flex;
  flex-shrink:0;
  color:var(--evx-secondary);
  line-height:0;
}
.evx-contact-social__glyph--inline svg{width:20px;height:20px}
.evx-contact-privacy{margin:1rem 0 0;font-size:.85rem}
.evx-contact-privacy a{color:rgba(15,23,42,.55);text-decoration:none}
.evx-contact-privacy a:hover,.evx-contact-privacy a:focus-visible{color:var(--evx-accent,#2563eb);text-decoration:underline}
@media (max-width:900px){
  .evx-contact-page__layout{grid-template-columns:1fr}
}

/* Factory page */
.evx-factory-page__excerpt{margin:.35rem 0 0;font-size:.98rem;line-height:1.5;color:rgba(15,23,42,.72)}
.evx-factory-page__intro{margin:0 0 1.75rem}
.evx-factory-strength .evx-media-box__placeholder{height:260px}
.evx-factory-strength .evx-media-carousel__slide img,
.evx-factory-strength .evx-media-carousel__video{height:260px}
.evx-factory-pillar__bullets{
  margin:.15rem 0 .85rem;
  padding-left:1.05rem;
  color:rgba(15,23,42,.72);
  line-height:1.55;
  font-size:.93rem;
}
.evx-factory-pillar__bullets li{margin:.25rem 0}
.evx-factory-pillars .evx-pillar-card__cta{align-self:flex-start}

/* No flashy animations: keep transitions minimal and purposeful */
@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto}
}

