.elementor-1134 .elementor-element.elementor-element-c36a4e1{--display:flex;}/* Start custom CSS for html, class: .elementor-element-59fe31a *//* LEO HOME HERO · CSS
   粘贴位置：Elementor → Site Settings → Custom CSS，接在 Footer 的 CSS 下面。
   颜色和尺寸都在下面第一个区块修改。整套配色没有灰色。
   图片位置、高度、遮罩强度在 HTML 最上面的 window.LEO_HOME_HERO 修改，这里只放默认值。 */

#leo-home-hero {
  /* 文字 */
  --leo-text: #171C22;
  --leo-gold-text: #8A641C;

  /* 背景 */
  --leo-ivory: #FFFCF5;
  --leo-card: #FFFFFF;
  --leo-cream: #FBF3DF;

  /* 金色与红色 */
  --leo-gold: #E5BC4C;
  --leo-gold-bright: #F6D987;
  --leo-gold-deep: #B9861B;
  --leo-gold-line: color-mix(in srgb, var(--leo-gold) 55%, transparent);
  --leo-red: #D62828;

  /* 阴影（暖色，不用灰） */
  --leo-shadow: 0 18px 56px rgba(26, 20, 8, .10);

  /* 尺寸与动效。想要整幅出血的 Hero：--leo-hero-width 改 100%，--leo-hero-radius 改 0px */
  --leo-hero-width: min(calc(100% - 40px), 1320px);
  --leo-hero-radius: 26px;
  --leo-speed: 150ms;

  /* 字体、字号、字重：与 Header / Footer 一致 */
  --leo-font: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  --leo-font-size: 15px;
  --leo-font-weight: 600;

  /* 默认值，由 HTML 里的 window.LEO_HOME_HERO 覆盖 */
  --leo-hero-pos-desktop: 78% center;
  --leo-hero-pos-tablet: 35% center;
  --leo-hero-pos-mobile: 75% center;
  --leo-hero-size-desktop: cover;
  --leo-hero-size-tablet: cover;
  --leo-hero-size-mobile: cover;
  --leo-hero-height-desktop: 680px;
  --leo-hero-height-tablet: 640px;
  --leo-hero-height-mobile: 560px;
  --leo-hero-overlay-desktop: .96;
  --leo-hero-overlay-tablet: .91;
  --leo-hero-overlay-mobile: .88;
  --leo-hero-copy-desktop: 680px;
  --leo-hero-copy-tablet: 620px;
  --leo-hero-pad-top: clamp(40px, 5vw, 72px);
  --leo-hero-pad-bottom: clamp(40px, 5vw, 72px);

  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  color: var(--leo-text);
  font-family: var(--leo-font);
  line-height: 1.65;
}

#leo-home-hero,
#leo-home-hero *,
#leo-home-hero *::before,
#leo-home-hero *::after { box-sizing: border-box; }

#leo-home-hero :is(h1, p) { margin: 0; }
#leo-home-hero a { color: inherit; text-decoration: none; }
#leo-home-hero a:focus-visible {
  outline: 2px solid var(--leo-gold-text);
  outline-offset: 3px;
}

/* Header 已经留出 15px 间距，所以 Elementor 外层不再加空白 */
body .elementor-widget-html:has(#leo-home-hero),
body .elementor-widget-html:has(#leo-home-hero) > .elementor-widget-container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* ---------- 外壳：金色细边框 + 静态金色高光 ---------- */
#leo-home-hero .leo-home-hero__shell {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  width: var(--leo-hero-width);
  min-height: var(--leo-hero-height-desktop);
  margin: 0 auto;
  padding: var(--leo-hero-pad-top) clamp(24px, 5vw, 72px) var(--leo-hero-pad-bottom);
  overflow: hidden;
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-hero-radius);
  background: var(--leo-ivory);
  box-shadow: var(--leo-shadow);
}
#leo-home-hero .leo-home-hero__shell::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: 3;
  padding: 1px;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 8%, var(--leo-gold-line) 28%, var(--leo-gold) 46%, var(--leo-gold-bright) 50%, var(--leo-gold) 54%, var(--leo-gold-line) 72%, transparent 92%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

/* ---------- 背景图：始终在整个 Hero 后面 ---------- */
#leo-home-hero .leo-home-hero__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
}
#leo-home-hero .leo-home-hero__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: var(--leo-hero-size-desktop);
  object-position: var(--leo-hero-pos-desktop);
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}
/* 遮罩：左侧文字清楚，右侧人物保持可见 */
#leo-home-hero .leo-home-hero__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg,
      rgba(255, 252, 245, var(--leo-hero-overlay-desktop)) 0%,
      rgba(255, 252, 245, calc(var(--leo-hero-overlay-desktop) - .02)) 34%,
      rgba(255, 252, 245, .72) 51%,
      rgba(255, 252, 245, .18) 72%,
      rgba(255, 252, 245, .03) 100%);
}

/* ---------- 文案 ---------- */
#leo-home-hero .leo-home-hero__inner {
  position: relative;
  z-index: 2;
  width: 100%;
}
#leo-home-hero .leo-home-hero__copy {
  display: grid;
  justify-items: start;
  width: min(100%, var(--leo-hero-copy-desktop));
}
#leo-home-hero .leo-home-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 18px;
  color: var(--leo-gold-text);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
#leo-home-hero .leo-home-hero__eyebrow::before {
  content: "";
  width: 28px;
  height: 1px;
  background: var(--leo-gold-deep);
}
#leo-home-hero .leo-home-hero__title {
  max-width: 18ch;
  color: var(--leo-text);
  font-family: var(--leo-font);
  font-size: clamp(42px, 5.6vw, 76px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -.035em;
  text-wrap: balance;
}
#leo-home-hero .leo-home-hero__nobr { display: inline-block; }
#leo-home-hero .leo-home-hero__rule {
  width: 62px;
  height: 3px;
  margin: 24px 0;
  border-radius: 9px;
  background: linear-gradient(90deg, var(--leo-gold-deep), var(--leo-gold-bright));
}
#leo-home-hero .leo-home-hero__lead {
  max-width: 600px;
  margin-bottom: 14px;
  font-size: clamp(18px, 1.7vw, 21px);
  font-weight: 500;
}
#leo-home-hero .leo-home-hero__text {
  max-width: 600px;
  font-size: 17px;
}

/* ---------- 按钮 ---------- */
#leo-home-hero .leo-home-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

/* CTA：金色底，悬浮变红 */
#leo-home-hero .leo-home-hero__cta {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-height: 50px;
  padding: 0 8px 0 22px;
  border-radius: 999px;
  background: var(--leo-gold);
  color: var(--leo-text);
  font-size: var(--leo-font-size);
  font-weight: var(--leo-font-weight);
  white-space: nowrap;
  transition: background-color var(--leo-speed) ease, color var(--leo-speed) ease;
}
#leo-home-hero .leo-home-hero__cta:hover,
#leo-home-hero .leo-home-hero__cta:focus-visible {
  background: var(--leo-red);
  color: #fff;
}

/* CTA 箭头圆圈：金色细边框 + 静态金色高光 + 红色箭头 */
#leo-home-hero .leo-home-hero__cta-arrow {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  border: 1px solid var(--leo-gold-deep);
  border-radius: 50%;
  background: var(--leo-ivory);
  color: var(--leo-red);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  transition: border-color var(--leo-speed) ease;
}
#leo-home-hero .leo-home-hero__cta-arrow::before {
  content: "";
  position: absolute;
  inset: -1px;
  padding: 1px;
  border-radius: 50%;
  pointer-events: none;
  background: linear-gradient(135deg, transparent 12%, var(--leo-gold-bright) 40%, var(--leo-gold) 56%, transparent 84%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
#leo-home-hero .leo-home-hero__cta:hover .leo-home-hero__cta-arrow,
#leo-home-hero .leo-home-hero__cta:focus-visible .leo-home-hero__cta-arrow { border-color: var(--leo-gold); }

/* 次按钮：白底金色细边框，悬浮暖米白 + 金色边框 */
#leo-home-hero .leo-home-hero__button {
  display: inline-flex;
  align-items: center;
  min-height: 50px;
  padding: 0 24px;
  border: 1px solid var(--leo-gold-line);
  border-radius: 999px;
  background: var(--leo-card);
  color: var(--leo-text);
  font-size: var(--leo-font-size);
  font-weight: var(--leo-font-weight);
  white-space: nowrap;
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
#leo-home-hero .leo-home-hero__button:hover,
#leo-home-hero .leo-home-hero__button:focus-visible {
  background: var(--leo-cream);
  border-color: var(--leo-gold);
}

/* ---------- 平板 ---------- */
@media (max-width: 1100px) {
  #leo-home-hero .leo-home-hero__shell { min-height: var(--leo-hero-height-tablet); }
  #leo-home-hero .leo-home-hero__img {
    object-fit: var(--leo-hero-size-tablet);
    object-position: var(--leo-hero-pos-tablet);
  }
  #leo-home-hero .leo-home-hero__bg::after {
    background:
      linear-gradient(90deg,
        rgba(255, 252, 245, var(--leo-hero-overlay-tablet)) 0%,
        rgba(255, 252, 245, calc(var(--leo-hero-overlay-tablet) - .02)) 44%,
        rgba(255, 252, 245, .68) 67%,
        rgba(255, 252, 245, .24) 100%);
  }
  #leo-home-hero .leo-home-hero__copy { width: min(100%, var(--leo-hero-copy-tablet)); }
  #leo-home-hero .leo-home-hero__title { font-size: clamp(42px, 7.4vw, 68px); }
}

/* ---------- 手机 ---------- */
@media (max-width: 720px) {
  #leo-home-hero { --leo-hero-width: min(calc(100% - 20px), 1320px); --leo-hero-radius: 20px; }
  #leo-home-hero .leo-home-hero__shell {
    align-items: flex-start;
    min-height: var(--leo-hero-height-mobile);
    padding: 34px 20px 34px;
  }
  #leo-home-hero .leo-home-hero__img {
    object-fit: var(--leo-hero-size-mobile);
    object-position: var(--leo-hero-pos-mobile);
  }
  #leo-home-hero .leo-home-hero__bg::after {
    background:
      linear-gradient(90deg,
        rgba(255, 252, 245, var(--leo-hero-overlay-mobile)) 0%,
        rgba(255, 252, 245, calc(var(--leo-hero-overlay-mobile) - .02)) 48%,
        rgba(255, 252, 245, .70) 72%,
        rgba(255, 252, 245, .43) 100%);
  }
  #leo-home-hero .leo-home-hero__copy { width: 100%; }
  #leo-home-hero .leo-home-hero__title { max-width: 100%; font-size: clamp(38px, 11vw, 52px); line-height: 1.02; }
  #leo-home-hero .leo-home-hero__nobr { display: inline-block; }
#leo-home-hero .leo-home-hero__rule { margin: 20px 0; }
  #leo-home-hero .leo-home-hero__lead { font-size: 18px; }
  #leo-home-hero .leo-home-hero__text { font-size: 16px; line-height: 1.6; }
  #leo-home-hero .leo-home-hero__actions { flex-direction: column; align-items: stretch; margin-top: 26px; }
  #leo-home-hero .leo-home-hero__cta { justify-content: space-between; }
  #leo-home-hero .leo-home-hero__button { justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  #leo-home-hero *,
  #leo-home-hero *::before,
  #leo-home-hero *::after { transition-duration: .01ms !important; }
}/* End custom CSS */