/* ============================================================
   case-realestate.html 独有样式 —— 拼贴骨架
   错落拼贴 hero + 四宫格拼贴卡
   ============================================================ */

/* ---------- Hero：拼贴 ---------- */
.re-hero {
  position: relative;
  padding: calc(var(--header-h) + var(--topbar-h) + 56px) 0 110px;
  background: linear-gradient(155deg, var(--cream-2) 0%, var(--cream) 100%);
  overflow: hidden;
}
.re-hero-inner { position: relative; z-index: 2; max-width: 560px; }
.re-bread { font-size: .86rem; color: var(--ink-3); margin-bottom: 18px; }
.re-hero h1 { margin-bottom: 16px; }
.re-hero-sub { margin-bottom: 28px; }
.re-hero-cta { display: flex; gap: 16px; flex-wrap: wrap; }

.re-collage {
  position: absolute; right: 4%; top: 120px;
  width: min(480px, 46%); height: 420px;
}
.re-collage img {
  position: absolute; border-radius: var(--radius);
  box-shadow: var(--clay-shadow); border: 6px solid #fff;
  object-fit: cover;
}
.re-collage-1 { width: 64%; height: 62%; top: 0; left: 0; transform: rotate(-3deg); }
.re-collage-2 { width: 46%; height: 44%; right: 0; top: 60px; transform: rotate(4deg); z-index: 2; }
.re-collage-3 { width: 50%; height: 40%; bottom: 0; left: 16%; transform: rotate(-1.5deg); z-index: 3; }

/* ---------- 四段式拼贴卡 ---------- */
.re-grid {
  display: grid; grid-template-columns: repeat(2, 1fr);
  gap: 26px;
}
.re-card { padding: 30px 32px; }
.re-card:nth-child(odd) { transform: translateY(18px); }
.re-card h3 { margin-bottom: 10px; padding-bottom: 10px; border-bottom: 2px dashed var(--green-2); }
.re-card p { font-size: .95rem; }

/* ---------- 数据圆卡 ---------- */
.re-metrics {
  background: linear-gradient(160deg, var(--green) 0%, var(--cream) 100%);
  padding: clamp(50px,6vw,80px) 0;
}
.re-metric-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.re-metric {
  aspect-ratio: 1/1; display: flex; flex-direction: column;
  align-items: center; justify-content: center; text-align: center;
  border-radius: 62% 38% 55% 45% / 52% 46% 54% 48%;
}
.re-metric b { font-size: clamp(1.5rem,3vw,2.2rem); color: var(--green-3); }
.re-metric span { font-size: .84rem; color: var(--ink-2); margin-top: 8px; }

/* ---------- 设计拉片 ---------- */
.re-shots { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.re-shot img {
  width: 100%; aspect-ratio: 16/10; object-fit: cover;
  border-radius: var(--radius); box-shadow: var(--clay-shadow-sm);
  margin-bottom: 14px;
}
.re-shot figcaption { font-size: .93rem; color: var(--ink-2); }
.re-shot figcaption b { color: var(--ink); display: block; margin-bottom: 6px; }

/* ---------- 客户评价 ---------- */
.re-quote { padding: clamp(40px,5vw,64px) 0; }
.re-quote-card {
  max-width: 800px; margin: 0 auto; padding: 44px 48px;
  border-radius: var(--radius);
  background: linear-gradient(160deg, #FFFDF6, var(--green) 160%);
}
.re-quote-card p { font-size: 1.08rem; color: var(--ink); margin-bottom: 16px; }
.re-quote-card cite { font-style: normal; font-size: .88rem; color: var(--ink-3); }

/* ---------- 相关案例 ---------- */
.re-cases { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.re-case-card { overflow: hidden; border-radius: var(--radius); }
.re-case-card img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.re-case-card span { display: block; padding: 16px 20px; font-weight: 700; color: var(--ink); }
.re-case-card:hover span { color: var(--green-3); }

/* ---------- 行业 + 服务 ---------- */
.re-links-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; }
.re-links-grid > div { padding: 34px 36px; border-radius: var(--radius); box-shadow: var(--clay-shadow-sm); }
.re-links-grid h3 { margin-bottom: 12px; }
.re-links-grid p { margin-bottom: 18px; font-size: .95rem; }

/* ---------- CTA ---------- */
.re-cta {
  background: linear-gradient(150deg, var(--green) 0%, var(--cream-2) 110%);
  padding: clamp(56px,7vw,88px) 0; text-align: center;
}
.re-cta h2 { margin-bottom: 14px; }
.re-cta p { margin-bottom: 26px; }
.re-cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

@media (max-width: 900px) {
  .re-collage { position: relative; right: auto; top: auto; width: 100%; height: 300px; margin-top: 30px; }
  .re-grid { grid-template-columns: 1fr; }
  .re-card:nth-child(odd) { transform: none; }
  .re-metric-row { grid-template-columns: repeat(2, 1fr); }
  .re-shots, .re-cases { grid-template-columns: 1fr; }
  .re-links-grid { grid-template-columns: 1fr; }
}

/* ---------- 补充：三句话模块 ---------- */
.lg-extra, .tv-extra, .wd-extra, .bt-extra, .dc-extra, .lw-extra, .rt-extra, .re-extra {
  background: linear-gradient(160deg, var(--cream-2), var(--cream));
  padding: clamp(50px,6vw,80px) 0;
}
.lg-extra-list, .tv-extra-list, .wd-extra-list, .bt-extra-list, .dc-extra-list, .lw-extra-list, .rt-extra-list, .re-extra-list {
  max-width: 860px; margin: 0 auto; padding: 36px 40px;
}
.lg-extra-list p, .tv-extra-list p, .wd-extra-list p, .bt-extra-list p, .dc-extra-list p, .lw-extra-list p, .rt-extra-list p, .re-extra-list p {
  font-size: .97rem; margin-bottom: 16px; color: var(--ink-2);
}
.lg-extra-list p:last-child, .tv-extra-list p:last-child, .wd-extra-list p:last-child, .bt-extra-list p:last-child, .dc-extra-list p:last-child, .lw-extra-list p:last-child, .rt-extra-list p:last-child, .re-extra-list p:last-child { margin-bottom: 0; }
.lg-extra-list b, .tv-extra-list b, .wd-extra-list b, .bt-extra-list b, .dc-extra-list b, .lw-extra-list b, .rt-extra-list b, .re-extra-list b { color: var(--ink); }
