.elementor-1233 .elementor-element.elementor-element-05dd8e7{--display:flex;}/* Start custom CSS for html, class: .elementor-element-14e90c2 *//* LEO PROPERTY · CSS
   粘贴位置：Elementor → Site Settings → Custom CSS，接在 Footer 的 CSS 下面（三语页面共用这一份）
   颜色和尺寸都在下面第一个区块修改。整套配色没有灰色。
   左右边距与最大宽度由全站 leo-frame-patch.css 统一管理（和 Ventures 等页面同一做法），这里不设。页面背景保持白色。 */

#leo-property {
  /* 文字 */
  --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);
  --leo-shadow-card: 0 10px 30px rgba(26, 20, 8, .07);

  /* 尺寸与动效 */
  --leo-radius: 26px;
  --leo-radius-card: 20px;
  --leo-speed: 150ms;
  --leo-grid-gap: 18px;
  --leo-section-gap: clamp(36px, 5vw, 64px);

  /* 字体、字号、字重：与 Header / Footer 一致，不依赖 Elementor Global Fonts */
  --leo-font: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  --leo-font-size: 15px;
  --leo-font-weight: 600;
  --leo-body-size: 17px;
  --leo-read-width: 720px;

  width: 100%;
  padding: clamp(36px, 5vw, 72px) 0;
  color: var(--leo-text);
  font-family: var(--leo-font);
  font-size: var(--leo-body-size);
  line-height: 1.65;
}

#leo-property,
#leo-property *,
#leo-property *::before,
#leo-property *::after { box-sizing: border-box; }

#leo-property a { color: inherit; text-decoration: none; }
#leo-property :is(a, button):focus-visible {
  outline: 2px solid var(--leo-gold-text);
  outline-offset: 3px;
}
#leo-property svg { display: block; }
#leo-property h2,
#leo-property h3,
#leo-property p { margin: 0; }

/* ---------- 区块与标题 ---------- */
#leo-property .leo-prop__section + .leo-prop__section { margin-top: var(--leo-section-gap); }

#leo-property .leo-prop__head { max-width: var(--leo-read-width); margin-bottom: clamp(24px, 3vw, 38px); }
#leo-property .leo-prop__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  color: var(--leo-gold-text);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
#leo-property .leo-prop__eyebrow::before {
  content: "";
  width: 22px;
  height: 1px;
  background: var(--leo-gold-deep);
}
#leo-property .leo-prop__title {
  color: var(--leo-text);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.02em;
}
#leo-property .leo-prop__lead { margin-top: 16px; }
#leo-property .leo-prop__hint {
  margin-top: 12px;
  color: var(--leo-gold-text);
  font-size: var(--leo-font-size);
  font-weight: var(--leo-font-weight);
}

/* ---------- 外壳：金色细边框 + 静态金色高光 ---------- */
#leo-property .leo-prop__shell {
  position: relative;
  padding: clamp(26px, 4vw, 56px);
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius);
  background: var(--leo-card);
  box-shadow: var(--leo-shadow);
}
#leo-property .leo-prop__shell::before,
#leo-property .leo-prop__service::before {
  content: "";
  position: absolute;
  inset: -1px;
  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;
}

/* ---------- 服务卡片（重点区块） ---------- */
#leo-property .leo-prop__services {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--leo-grid-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
#leo-property .leo-prop__service {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  padding: 28px 26px 24px;
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius-card);
  background: var(--leo-card);
  box-shadow: var(--leo-shadow-card);
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
#leo-property .leo-prop__service:hover,
#leo-property .leo-prop__service:focus-visible {
  background: var(--leo-cream);
  border-color: var(--leo-gold);
}

/* 纯展示卡片（不可点）：没有悬浮变化 */
#leo-property .leo-prop__service--static { cursor: default; }
#leo-property .leo-prop__service--static:hover {
  background: var(--leo-card);
  border-color: var(--leo-gold-line);
}

#leo-property .leo-prop__service-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 20px;
}
#leo-property .leo-prop__num {
  color: var(--leo-gold-text);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
}

/* 图标圆圈：深金边框 + 静态金色高光 */
#leo-property .leo-prop__icon {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 60px;
  height: 60px;
  border: 1px solid var(--leo-gold-deep);
  border-radius: 50%;
  background: var(--leo-ivory);
  color: var(--leo-gold-text);
}
#leo-property .leo-prop__icon::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-property .leo-prop__icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
#leo-property .leo-prop__service-title {
  color: var(--leo-text);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.01em;
}
#leo-property .leo-prop__service-text {
  margin-top: 10px;
  font-size: 16px;
  line-height: 1.6;
}
#leo-property .leo-prop__service-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 22px;
  color: var(--leo-gold-text);
  font-size: var(--leo-font-size);
  font-weight: 700;
}

/* ---------- CTA 按钮：金色底，悬浮变红 ---------- */
#leo-property .leo-prop__cta-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: var(--leo-grid-gap);
  padding: clamp(22px, 3vw, 32px) clamp(22px, 3.5vw, 40px);
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius-card);
  background: var(--leo-cream);
}
#leo-property .leo-prop__cta-title { font-size: 21px; font-weight: 700; line-height: 1.3; letter-spacing: -.01em; }
#leo-property .leo-prop__cta-text { margin-top: 4px; font-size: 16px; }

#leo-property .leo-prop__button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex: 0 0 auto;
  min-height: 48px;
  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-property .leo-prop__button:hover,
#leo-property .leo-prop__button:focus-visible {
  background: var(--leo-red);
  color: #fff;
}
#leo-property .leo-prop__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-property .leo-prop__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-property .leo-prop__button:hover .leo-prop__arrow,
#leo-property .leo-prop__button:focus-visible .leo-prop__arrow { border-color: var(--leo-gold); }

/* ---------- 视频横向滑动 ---------- */
#leo-property .leo-prop__video-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: clamp(24px, 3vw, 38px);
}
#leo-property .leo-prop__video-head .leo-prop__head { margin-bottom: 0; }
#leo-property .leo-prop__controls { display: flex; gap: 10px; flex: 0 0 auto; }
#leo-property .leo-prop__control {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid var(--leo-gold-line);
  border-radius: 50%;
  background: var(--leo-card);
  color: var(--leo-text);
  cursor: pointer;
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
#leo-property .leo-prop__control:hover:not(:disabled) { background: var(--leo-cream); border-color: var(--leo-gold); }
#leo-property .leo-prop__control:disabled { opacity: .35; cursor: default; }
#leo-property .leo-prop__control svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
#leo-property .leo-prop__rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - var(--leo-grid-gap) * 2) / 3);
  gap: var(--leo-grid-gap);
  padding: 2px;
  margin: -2px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
#leo-property .leo-prop__rail::-webkit-scrollbar { display: none; }
#leo-property .leo-prop__video {
  min-width: 0;
  overflow: hidden;
  scroll-snap-align: start;
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius-card);
  background: var(--leo-cream);
  transition: border-color var(--leo-speed) ease;
}
#leo-property .leo-prop__video:hover { border-color: var(--leo-gold); }
#leo-property .leo-prop__player { position: relative; width: 100%; aspect-ratio: 9 / 16; background: var(--leo-cream); }
#leo-property .leo-prop__player iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
#leo-property .leo-prop__caption {
  padding: 12px 16px;
  border-top: 1px solid var(--leo-gold-line);
  background: var(--leo-card);
  color: var(--leo-gold-text);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
}

/* ---------- Team ---------- */
#leo-property .leo-prop__team-main {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 4vw, 48px);
}
#leo-property .leo-prop__team-main .leo-prop__head { margin-bottom: 0; max-width: 820px; }
#leo-property .leo-prop__team-photo {
  width: 190px;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius-card);
  background: var(--leo-cream);
}
#leo-property .leo-prop__team-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 70% 100%; }
#leo-property .leo-prop__benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--leo-grid-gap);
  margin: clamp(24px, 3vw, 36px) 0 0;
  padding: 0;
  list-style: none;
}
#leo-property .leo-prop__benefit {
  display: flex;
  gap: 16px;
  padding: 22px;
  border: 1px solid var(--leo-gold-line);
  border-radius: var(--leo-radius-card);
  background: var(--leo-ivory);
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease;
}
#leo-property .leo-prop__benefit:hover { background: var(--leo-cream); border-color: var(--leo-gold); }
#leo-property .leo-prop__benefit .leo-prop__icon { width: 48px; height: 48px; }
#leo-property .leo-prop__benefit .leo-prop__icon svg { width: 24px; height: 24px; }
#leo-property .leo-prop__benefit-title { font-size: 18px; font-weight: 700; line-height: 1.3; }
#leo-property .leo-prop__benefit-text { margin-top: 6px; font-size: 15px; line-height: 1.6; }
#leo-property .leo-prop__team-foot {
  display: flex;
  align-items: center;
  flex-direction: column;
  align-items: stretch;
  gap: 20px;
  margin-top: clamp(24px, 3vw, 32px);
}
#leo-property .leo-prop__team-foot .leo-prop__button { width: 100%; }
#leo-property .leo-prop__team-foot .leo-prop__social-wrap { justify-content: center; flex-wrap: wrap; }
#leo-property .leo-prop__social-wrap { display: flex; align-items: center; gap: 14px; }
#leo-property .leo-prop__social-label { font-size: var(--leo-font-size); font-weight: var(--leo-font-weight); }
#leo-property .leo-prop__socials { display: flex; gap: 10px; }
#leo-property .leo-prop__social {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid var(--leo-gold-line);
  border-radius: 50%;
  background: var(--leo-card);
  color: var(--leo-text);
  transition: background-color var(--leo-speed) ease, border-color var(--leo-speed) ease, color var(--leo-speed) ease;
}
#leo-property .leo-prop__social svg { width: 17px; height: 17px; fill: currentColor; }
#leo-property .leo-prop__social:hover,
#leo-property .leo-prop__social:focus-visible {
  border-color: var(--leo-red);
  background: var(--leo-red);
  color: #fff;
}

/* ---------- 响应式 ---------- */
@media (max-width: 1024px) {
  #leo-property .leo-prop__services { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #leo-property .leo-prop__rail { grid-auto-columns: calc((100% - var(--leo-grid-gap)) / 2); }
}
@media (max-width: 767px) {
  #leo-property .leo-prop__shell { border-radius: calc(var(--leo-radius) - 6px); }
  #leo-property .leo-prop__cta-bar { flex-direction: column; align-items: stretch; }
  #leo-property .leo-prop__cta-bar .leo-prop__button { width: 100%; }
  #leo-property .leo-prop__team-main { grid-template-columns: 1fr; }
  #leo-property .leo-prop__team-photo { width: min(220px, 62%); margin: 0 auto; }
  #leo-property .leo-prop__rail { grid-auto-columns: 100%; }
  #leo-property .leo-prop__benefits { grid-template-columns: 1fr; }
  #leo-property .leo-prop__video-head { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 640px) {
  #leo-property .leo-prop__services { grid-template-columns: 1fr; }
  #leo-property .leo-prop__service {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    column-gap: 16px;
    padding: 20px 18px;
  }
  #leo-property .leo-prop__service-top { margin-bottom: 0; grid-row: 1 / span 3; }
  #leo-property .leo-prop__num { display: none; }
  #leo-property .leo-prop__icon { width: 52px; height: 52px; }
  #leo-property .leo-prop__service-link { padding-top: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  #leo-property *,
  #leo-property *::before,
  #leo-property *::after { transition-duration: .01ms !important; scroll-behavior: auto !important; }
}/* End custom CSS */