*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Georgia,'Noto Serif SC','Songti SC','SimSun',serif;background:#f8efe2;color:#17110d;line-height:1.75}a{text-decoration:none;color:inherit}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 6vw;background:rgba(255,250,242,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(198,154,73,.28)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:42px;height:42px}.brand strong{display:block;font-size:17px;letter-spacing:.15em;font-weight:500}.brand span{display:block;font-size:10px;letter-spacing:.18em;color:#9d6f2d;line-height:1;margin-top:3px}.nav{display:flex;gap:24px;font-size:14px;color:#75685a}.nav a:hover{color:#8b1510}.top-btn{border:1px solid rgba(139,21,16,.3);border-radius:999px;padding:8px 18px;color:#8b1510;font-size:14px;white-space:nowrap}.eyebrow{margin:0 0 18px;color:#b88a3b;font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-family:Arial,sans-serif}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 26px;border-radius:999px;font-size:15px}.primary{background:#8b1510;color:#fff;box-shadow:0 18px 42px rgba(139,21,16,.2)}.secondary{border:1px solid rgba(23,17,13,.24);color:#17110d;background:rgba(255,255,255,.35)}.gold{background:#c69a49;color:#100b08}.light{border:1px solid rgba(255,255,255,.45);color:#fff}.hero{min-height:calc(100vh - 72px);display:grid;grid-template-columns:1fr .88fr;align-items:center;gap:6vw;padding:70px 6vw;background:radial-gradient(circle at 80% 12%,rgba(198,154,73,.22),transparent 32%),linear-gradient(135deg,#fff8ec 0%,#f8efe2 52%,#ead8bb 100%);position:relative;overflow:hidden}.hero:before{content:'囍';position:absolute;right:4vw;top:8vh;font-size:26vw;line-height:1;color:rgba(139,21,16,.055)}.hero-copy,.hero-visual{position:relative;z-index:1}.hero h1{margin:0;font-size:clamp(54px,8.5vw,118px);line-height:1.02;font-weight:500;letter-spacing:.08em}.hero h1 span{color:#8b1510}.lead{max-width:720px;color:#74685b;font-size:18px;margin:32px 0}.actions{display:flex;flex-wrap:wrap;gap:14px}.hero-visual{min-height:560px;display:grid;place-items:center}.portrait-card{position:relative;width:min(420px,88vw);height:560px;border-radius:42px;background:linear-gradient(160deg,rgba(255,255,255,.72),rgba(234,214,165,.35)),radial-gradient(circle at 50% 22%,rgba(139,21,16,.16),transparent 28%);border:1px solid rgba(198,154,73,.34);box-shadow:0 34px 90px rgba(70,44,18,.12);display:grid;place-items:center;overflow:hidden}.portrait-card:before{content:'';position:absolute;inset:18px;border-radius:30px;border:1px solid rgba(198,154,73,.2)}.halo{position:absolute;width:290px;height:290px;border-radius:50%;border:1px solid rgba(198,154,73,.28);box-shadow:inset 0 0 80px rgba(198,154,73,.1)}.dress{position:relative;width:280px;height:380px}.crown{position:absolute;left:50%;top:20px;width:140px;height:80px;transform:translateX(-50%);background:linear-gradient(135deg,#b88634,#f0d79c,#a06a24);clip-path:polygon(0 100%,15% 28%,35% 72%,50% 0,65% 72%,85% 28%,100% 100%)}.upper{position:absolute;left:50%;top:142px;width:160px;height:160px;transform:translateX(-50%);border-radius:80px 80px 18px 18px;background:linear-gradient(160deg,#d64236,#77100c)}.skirt{position:absolute;left:50%;top:260px;width:280px;height:130px;transform:translateX(-50%);clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(150deg,#8b1510,#d64437,#4b0806)}.portrait-card p{position:absolute;bottom:30px;color:#74685b;letter-spacing:.18em}.note{position:absolute;background:#fffaf1;border:1px solid rgba(198,154,73,.3);border-radius:999px;padding:10px 18px;color:#8b1510;box-shadow:0 18px 42px rgba(70,44,18,.1)}.note-a{top:12%;right:2%}.note-b{left:2%;bottom:18%}.statement{padding:34px 20px;text-align:center;background:#fffaf1;border-top:1px solid rgba(198,154,73,.22);border-bottom:1px solid rgba(198,154,73,.22)}.statement p{margin:0;color:#8b1510;font-size:clamp(22px,3vw,36px);letter-spacing:.06em}.section{padding:90px 6vw}.section-head{text-align:center;max-width:850px;margin:0 auto 46px}.section-head h1,.section-head h2,.value-title h2,.modern-section h2,.visit h2,.contact h2{font-size:clamp(34px,5vw,68px);line-height:1.12;font-weight:500;margin:0}.section-head p{color:#74685b}.showcase{background:#fff8ec;overflow:hidden}.slider-wrap{width:100%;overflow:hidden}.slider-track{display:flex;gap:18px;width:max-content;animation:scrollX 36s linear infinite}.slider-card{width:340px;height:430px;flex:0 0 auto;border-radius:30px;overflow:hidden;position:relative;border:1px solid rgba(198,154,73,.26);box-shadow:0 26px 70px rgba(70,44,18,.10);background:linear-gradient(145deg,#8b1510,#c69a49)}.slider-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.58))}.slider-card span{position:absolute;left:24px;right:24px;bottom:22px;z-index:1;color:#fff;font-size:22px}.slider-card small{display:block;color:rgba(255,255,255,.74);font-size:13px;letter-spacing:.12em;font-family:Arial,sans-serif}.photo-a{background:linear-gradient(145deg,#8b1510,#d8b36c)}.photo-b{background:linear-gradient(145deg,#fff2d8,#8b1510)}.photo-c{background:linear-gradient(145deg,#2b1710,#c69a49)}.photo-d{background:linear-gradient(145deg,#c69a49,#7c241e)}.photo-e{background:linear-gradient(145deg,#eed8ad,#b3261d)}.shop-section{background:#f8efe2}.shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.shop-photo{min-height:360px;border-radius:32px;border:1px solid rgba(198,154,73,.26);box-shadow:0 24px 70px rgba(70,44,18,.10);position:relative;overflow:hidden;background:linear-gradient(145deg,#fffaf1,#d8b36c)}.shop-photo.dark{background:linear-gradient(145deg,#17110d,#8b1510)}.shop-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.45))}.shop-photo span{position:absolute;left:26px;bottom:24px;z-index:1;color:#fff;font-size:24px}.system-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.system-card{min-height:390px;border-radius:32px;padding:26px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.system-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(0,0,0,.5))}.system-card>*{position:relative;z-index:1}.system-card span{font-family:Arial,sans-serif;color:rgba(255,255,255,.7);letter-spacing:.18em}.system-card h3{font-size:28px;font-weight:500;margin:10px 0}.system-card p{margin:0;color:rgba(255,255,255,.86)}.tang{background:linear-gradient(145deg,#c0913c,#8b1510)}.song{background:linear-gradient(145deg,#d9c095,#7c241e)}.ming{background:linear-gradient(145deg,#8b1510,#d94739)}.modern{background:linear-gradient(145deg,#17110d,#8b1510 72%,#c69a49)}.value{display:grid;grid-template-columns:.85fr 1.15fr;gap:6vw;padding:90px 6vw;background:#fff8ec}.value-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.value-grid article,.scene-grid article,.article-card{background:#fffaf1;border:1px solid rgba(198,154,73,.25);border-radius:28px;padding:28px}.value-grid h3,.scene-grid h3,.article-card h3{color:#8b1510;font-size:24px;font-weight:500;margin:0 0 12px}.value-grid p,.scene-grid p,.article-card p{color:#74685b;margin:0}.modern-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:6vw;margin:0 6vw 90px;padding:52px 60px;background:linear-gradient(135deg,#fffaf1,#efe0c3);border:1px solid rgba(198,154,73,.32);border-radius:42px}.modern-copy{color:#74685b;font-size:17px}.modern-section .eyebrow,.modern-section h2{color:#8b1510}.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.articles-preview{background:#fff8ec}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article-card small{color:#b88a3b;letter-spacing:.12em;font-family:Arial,sans-serif}.article-card a{display:inline-flex;margin-top:20px;color:#8b1510}.visit{padding:0 6vw 90px}.visit-inner{background:linear-gradient(135deg,#8b1510,#5a100c);color:#fff;border-radius:42px;padding:70px}.visit-inner p{max-width:800px;color:rgba(255,255,255,.78)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}.steps span{border:1px solid rgba(234,214,165,.28);border-radius:22px;padding:20px;color:#ead6a5}.contact{padding:0 6vw 44px}.contact-box{text-align:center;background:#17110d;color:#fff;border:1px solid rgba(198,154,73,.35);border-radius:42px;padding:70px}.contact-box p{color:rgba(255,255,255,.72)}.center{justify-content:center}.contact small{display:block;color:rgba(255,255,255,.5);margin-top:18px}.float-cta{position:fixed;right:22px;bottom:22px;z-index:60;background:#8b1510;color:#fff;border-radius:999px;padding:12px 18px;box-shadow:0 18px 42px rgba(139,21,16,.3)}footer{display:flex;justify-content:space-between;gap:24px;padding:36px 6vw;background:#17110d;color:rgba(255,255,255,.7)}footer strong{color:#fff;letter-spacing:.16em}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.page-hero{padding:80px 6vw;background:linear-gradient(135deg,#fff8ec,#ead8bb)}.content-wrap{padding:70px 6vw}.blog-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article-layout{max-width:900px;margin:auto;background:#fffaf1;border:1px solid rgba(198,154,73,.25);border-radius:34px;padding:clamp(28px,5vw,60px)}.article-layout h1{font-size:clamp(34px,5vw,64px);line-height:1.12;margin:0 0 20px}.article-layout h2{font-size:28px;color:#8b1510;margin-top:38px}.article-layout p{color:#5f554b}.article-layout .meta{color:#b88a3b;font-family:Arial,sans-serif;letter-spacing:.12em;font-size:12px}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes scrollX{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@media(max-width:980px){.nav{display:none}.hero,.value,.modern-section{grid-template-columns:1fr}.system-grid,.value-grid,.scene-grid,.steps,.article-grid,.blog-list{grid-template-columns:repeat(2,1fr)}.shop-grid{grid-template-columns:1fr}}
@media(max-width:640px){body{line-height:1.65}.topbar{padding:12px 16px}.brand img{width:36px;height:36px}.brand strong{font-size:15px}.brand span{display:none}.top-btn{font-size:13px;padding:7px 12px}.hero{grid-template-columns:1fr;padding:46px 18px 56px;min-height:auto}.hero h1{font-size:54px}.lead{font-size:15px;margin:24px 0}.btn{width:100%;min-height:48px}.hero-visual{min-height:370px}.portrait-card{height:360px;border-radius:28px}.dress{transform:scale(.68)}.portrait-card p{font-size:12px}.note{display:none}.statement{text-align:left}.statement p{max-width:320px;margin:auto;font-size:22px;letter-spacing:.04em}.section{padding:64px 18px}.section-head{text-align:left;margin-bottom:28px}.section-head h1,.section-head h2,.value-title h2,.modern-section h2,.visit h2,.contact h2{font-size:34px}.slider-track{animation:scrollX 30s linear infinite}.slider-card{width:260px;height:340px;border-radius:24px}.shop-photo{min-height:260px}.system-grid,.value-grid,.scene-grid,.steps,.article-grid,.blog-list{grid-template-columns:1fr}.system-card{min-height:310px}.value{display:block;padding:64px 18px}.value-title{margin-bottom:28px}.modern-section{margin:0 18px 64px;padding:32px 22px;border-radius:28px}.visit{padding:0 18px 64px}.visit-inner,.contact-box{padding:34px 22px;border-radius:28px}.contact{padding-left:18px;padding-right:18px}.float-cta{left:18px;right:18px;text-align:center}footer{flex-direction:column;padding:30px 18px 88px}.page-hero,.content-wrap{padding:48px 18px}.article-layout{border-radius:24px}}
footer p{max-width:560px}


/* V14 clean topbar: only logo + appointment button */
.topbar{
  justify-content:space-between !important;
}
.topbar .nav{
  display:none !important;
}
.topbar .brand{
  flex:0 0 auto;
}
.topbar .top-btn{
  margin-left:auto;
}
@media(max-width:640px){
  .topbar{
    padding:12px 16px !important;
  }
}



/* =========================
   V15 Strict based on approved V14
   重要：不改首页首屏 hero，不改 V14 开头。
   只给 V14 原有图片区接入可替换图片。
   ========================= */

/* 真实婚礼呈现：后期覆盖同名图片即可 */
.photo-a{background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.58)),url("assets/wedding-chuge.jpg") center/cover no-repeat !important}
.photo-b{background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.58)),url("assets/wedding-ceremony.jpg") center/cover no-repeat !important}
.photo-c{background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.58)),url("assets/wedding-couple.jpg") center/cover no-repeat !important}
.photo-d{background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.58)),url("assets/wedding-toast.jpg") center/cover no-repeat !important}
.photo-e{background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.58)),url("assets/wedding-scene.jpg") center/cover no-repeat !important}

/* 门店空间：后期覆盖同名图片即可 */
.shop-photo{background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.52)),url("assets/shop-display.jpg") center/cover no-repeat !important}
.shop-photo.dark{background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.58)),url("assets/shop-space.jpg") center/cover no-repeat !important}

/* 婚服体系：后期覆盖同名图片即可 */
.system-card.tang{background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.60)),url("assets/tang.jpg") center/cover no-repeat !important}
.system-card.song{background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.60)),url("assets/song.jpg") center/cover no-repeat !important}
.system-card.ming{background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.60)),url("assets/ming.jpg") center/cover no-repeat !important}
.system-card.modern{background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.60)),url("assets/modern.jpg") center/cover no-repeat !important}

/* 图片加深文字可读性，不影响V14首屏 */
.slider-card span,
.shop-photo span,
.system-card > *{
  text-shadow:0 2px 18px rgba(0,0,0,.45);
}

.slider-card,
.shop-photo,
.system-card{
  background-color:#17110d;
}



/* =========================
   V17 视觉升级：高级、克制、少销售感
   ========================= */

body.v17 {
  background:
    radial-gradient(circle at 20% 0%, rgba(180, 139, 78, .18), transparent 30%),
    linear-gradient(180deg, #fffaf1 0%, #fbf1e2 48%, #f4e5cf 100%);
}

/* 顶部极简：只留 Logo + 天赐华裳 */
.v17-header,
.header.v17-header,
.site-header.v17-header {
  justify-content: center !important;
  min-height: 76px;
  padding: 18px 20px !important;
  background: rgba(255, 250, 241, .88) !important;
  backdrop-filter: blur(22px);
  border-bottom: 1px solid rgba(170, 126, 65, .18) !important;
  box-shadow: none !important;
}

.v17-header nav,
.v17-header .nav,
.v17-header .header-cta,
.v17-header .nav-cta,
.v17-header .header-btn,
.v17-header .top-cta,
.v17-header .cta-mini,
.v17-header a:not(.brand):not(.logo) {
  display: none !important;
}

.v17-header .brand,
.v17-header .logo {
  margin: 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: auto !important;
}

.v17-header .brand img,
.v17-header .logo img {
  width: 42px !important;
  height: 42px !important;
}

.v17-header .brand b,
.v17-header .logo b,
.v17-header .brand strong,
.v17-header .logo strong {
  font-size: 20px !important;
  letter-spacing: .22em !important;
  font-weight: 500 !important;
  color: #17110d !important;
}

.v17-header .brand i,
.v17-header .logo i {
  letter-spacing: .22em !important;
  color: #b98e48 !important;
}

/* 首屏：增强高级感，减少按钮噪音 */
.hero {
  position: relative;
  overflow: hidden;
  min-height: calc(100svh - 76px);
}

.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 80% 18%, rgba(185, 142, 72, .10), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.04));
}

.hero h1,
.hero-title {
  letter-spacing: .09em !important;
  line-height: 1.02 !important;
  font-weight: 500 !important;
}

.hero h1 span,
.hero-title span {
  color: #9b1712 !important;
}

.hero .lead,
.hero p.lead,
.hero .hero-desc,
.hero .hero-text {
  max-width: 650px !important;
  font-size: clamp(17px, 2.8vw, 21px) !important;
  line-height: 2 !important;
  color: rgba(68, 54, 44, .72) !important;
  letter-spacing: .04em;
}

.hero .eyebrow,
.eyebrow {
  letter-spacing: .38em !important;
  color: #b98e48 !important;
}

/* 首屏只留一个主按钮 */
.hero .actions a:not(:first-child),
.hero .hero-actions a:not(:first-child),
.hero .buttons a:not(:first-child) {
  display: none !important;
}

.hero .actions,
.hero .hero-actions,
.hero .buttons {
  margin-top: 34px !important;
}

.hero .btn:first-child,
.hero .primary {
  min-height: 56px !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-size: 17px !important;
  letter-spacing: .14em !important;
  background: #9b1712 !important;
  color: #fff !important;
  box-shadow: 0 18px 46px rgba(155, 23, 18, .24) !important;
}

/* 全站标题与说明文字更克制 */
.section h2,
.section-title,
h2 {
  letter-spacing: .055em !important;
  font-weight: 500 !important;
}

.section-head p,
.section .desc,
.copy p,
.story-copy,
.visit-copy p,
.faq p {
  letter-spacing: .035em;
}

.section-head p,
.copy p,
.visit-copy p {
  color: rgba(73, 62, 52, .72) !important;
}

/* 图片卡片高级化 */
.system-card,
.slider-card,
.shop-photo,
.dress-card,
.case-grid img {
  border-radius: 30px !important;
  box-shadow: 0 28px 76px rgba(55, 34, 16, .13) !important;
  overflow: hidden !important;
}

.system-card,
.slider-card {
  transition: transform .38s ease, box-shadow .38s ease, filter .38s ease;
}

.system-card:hover,
.slider-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 34px 88px rgba(55, 34, 16, .18) !important;
}

/* 底部浮动按钮保留，但更低干扰 */
.float-bar,
.float-cta {
  opacity: .94;
  box-shadow: 0 18px 50px rgba(90, 30, 15, .22) !important;
}

/* 手机端优化 */
@media (max-width: 680px) {
  .v17-header,
  .header.v17-header,
  .site-header.v17-header {
    min-height: 70px;
    padding: 14px 16px !important;
  }

  .v17-header .brand img,
  .v17-header .logo img {
    width: 38px !important;
    height: 38px !important;
  }

  .v17-header .brand b,
  .v17-header .logo b,
  .v17-header .brand strong,
  .v17-header .logo strong {
    font-size: 19px !important;
    letter-spacing: .20em !important;
  }

  .hero {
    min-height: calc(100svh - 70px) !important;
  }

  .hero h1,
  .hero-title {
    font-size: clamp(56px, 16vw, 82px) !important;
    line-height: 1.08 !important;
    letter-spacing: .06em !important;
  }

  .hero .lead,
  .hero p.lead,
  .hero .hero-desc,
  .hero .hero-text {
    font-size: 17px !important;
    line-height: 1.95 !important;
    margin-top: 26px !important;
  }

  .hero .btn:first-child,
  .hero .primary {
    width: 100% !important;
    min-height: 56px !important;
    font-size: 16px !important;
  }

  .float-bar {
    left: 16px !important;
    right: 16px !important;
    bottom: 14px !important;
    transform: none !important;
  }
}



/* =========================
   V18 结构升级
   1. 婚服体系改竖版 3:4
   2. 婚服美学空间改一排三张 4:3 横图
   ========================= */

/* 婚服体系：竖版画册比例，解决图片被裁成正方形的问题 */
.system-grid,
.collection-grid,
.attire-grid,
.cards:has(.system-card) {
  align-items: stretch !important;
}

.system-card {
  aspect-ratio: 3 / 4 !important;
  min-height: auto !important;
  height: auto !important;
  width: 100% !important;
  border-radius: 34px !important;
  background-size: cover !important;
  background-position: center top !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: flex-end !important;
}

/* 不同婚服的裁切重心，尽量保留人物头身和衣摆 */
.system-card.tang {
  background-position: center 42% !important;
}
.system-card.song {
  background-position: center 38% !important;
}
.system-card.ming {
  background-position: center 34% !important;
}
.system-card.modern {
  background-position: center 38% !important;
}

/* 如果婚服体系外层用的是横向滑动，保持画册感 */
.system-track,
.attire-track,
.collection-track {
  gap: 24px !important;
}

.system-track .system-card,
.attire-track .system-card,
.collection-track .system-card {
  flex: 0 0 min(360px, 78vw) !important;
}

/* 如果是普通网格，桌面端一排四张竖图 */
@media (min-width: 1024px) {
  .system-grid,
  .collection-grid,
  .attire-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }
}

/* 平板两列 */
@media (max-width: 1023px) and (min-width: 681px) {
  .system-grid,
  .collection-grid,
  .attire-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }
}

/* 手机端保持一张一张看，比例不变 */
@media (max-width: 680px) {
  .system-grid,
  .collection-grid,
  .attire-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .system-card {
    aspect-ratio: 3 / 4 !important;
    border-radius: 28px !important;
  }
}

/* 婚服美学空间：横向4:3，一排三张 */
.shop-grid,
.space-grid,
.store-grid,
.shop-gallery,
.space-gallery,
.visit-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.shop-photo {
  aspect-ratio: 4 / 3 !important;
  min-height: auto !important;
  height: auto !important;
  border-radius: 30px !important;
  background-size: cover !important;
  background-position: center center !important;
  overflow: hidden !important;
}

.shop-photo.dark {
  aspect-ratio: 4 / 3 !important;
}

.shop-photo.shop-detail {
  background:
    linear-gradient(180deg, transparent 42%, rgba(0,0,0,.54)),
    url("assets/shop-detail.jpg") center/cover no-repeat !important;
}

/* 如果原结构不是gallery，而是左右布局，也强制图片区域横向呈现 */
.shop-section .image-grid,
.space-section .image-grid,
.visit-section .image-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

/* 美学空间手机端改为一列，避免太小 */
@media (max-width: 780px) {
  .shop-grid,
  .space-grid,
  .store-grid,
  .shop-gallery,
  .space-gallery,
  .visit-gallery,
  .shop-section .image-grid,
  .space-section .image-grid,
  .visit-section .image-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .shop-photo {
    aspect-ratio: 4 / 3 !important;
  }
}

/* V18 小字再高级一点 */
.section-head p {
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  line-height: 2;
  color: rgba(74, 62, 52, .68) !important;
}

/* 敬酒描述备用：若页面仍有“轻盈体面”，替换视觉层不处理文字，HTML里已建议手动改 */



/* =========================
   V18.1 展厅图 + 服务承诺模块
   ========================= */

.v18-advantage-commitment {
  padding-top: clamp(72px, 9vw, 128px);
  padding-bottom: clamp(72px, 9vw, 128px);
}

.commitment-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 42px;
}

.commitment-grid article {
  min-height: 238px;
  padding: 30px;
  border-radius: 30px;
  background: rgba(255, 253, 248, .76);
  border: 1px solid rgba(170, 126, 65, .22);
  box-shadow: 0 22px 64px rgba(55, 34, 16, .08);
}

.commitment-grid span {
  display: block;
  color: #b98e48;
  letter-spacing: .18em;
  font: 12px/1.2 Arial, sans-serif;
  margin-bottom: 22px;
}

.commitment-grid h3 {
  margin: 0 0 12px;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: .08em;
  color: #17110d;
}

.commitment-grid p {
  margin: 0;
  color: rgba(73, 62, 52, .72);
  line-height: 1.9;
  letter-spacing: .035em;
}

.shop-photo {
  background-position: center center !important;
}

@media (max-width: 920px) {
  .commitment-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .commitment-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .commitment-grid article {
    min-height: auto;
    padding: 24px;
    border-radius: 24px;
  }
}



/* =========================
   V18.3 首屏整体封面版
   目标：手机打开第一屏成为完整品牌封面，不再出现割裂的图片卡片
   ========================= */

body.v18-3 {
  background:
    radial-gradient(circle at 50% 0%, rgba(185,142,72,.14), transparent 32%),
    linear-gradient(180deg, #fff9ee 0%, #fbf0df 45%, #f6e6cf 100%);
}

/* 顶部更克制：只保留品牌 */
.v18-3-header,
.header.v18-3-header,
.site-header.v18-3-header {
  justify-content: center !important;
  min-height: 74px !important;
  padding: 16px 18px !important;
  background: rgba(255,250,241,.92) !important;
  border-bottom: 1px solid rgba(170,126,65,.18) !important;
  box-shadow: none !important;
}

.v18-3-header nav,
.v18-3-header .nav,
.v18-3-header .header-cta,
.v18-3-header .nav-cta,
.v18-3-header .top-cta,
.v18-3-header .header-btn,
.v18-3-header a:not(.brand):not(.logo) {
  display: none !important;
}

.v18-3-header .brand,
.v18-3-header .logo {
  margin: 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.v18-3-header .brand img,
.v18-3-header .logo img {
  width: 42px !important;
  height: 42px !important;
}

.v18-3-header .brand b,
.v18-3-header .logo b,
.v18-3-header .brand strong,
.v18-3-header .logo strong {
  font-size: 20px !important;
  letter-spacing: .22em !important;
  font-weight: 500 !important;
}

/* 首屏变成一个完整封面：不再放独立图片卡片 */
.hero {
  min-height: calc(100svh - 74px) !important;
  padding: clamp(70px, 10vh, 110px) clamp(24px, 7vw, 90px) clamp(78px, 10vh, 120px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 32%, rgba(255,255,255,.88), rgba(255,255,255,.18) 36%, transparent 60%),
    radial-gradient(circle at 50% 118%, rgba(155,23,18,.13), transparent 38%),
    linear-gradient(180deg, #fff8ec 0%, #f8ead3 100%) !important;
}

/* 去掉首屏里突兀的图片/插画/视觉卡 */
.hero img:not(.brand img):not(.logo img),
.hero .visual,
.hero .hero-visual,
.hero .hero-card,
.hero .cover-card,
.hero .brand-card,
.hero .hero-image,
.hero .palace-card,
.hero .symbol-card,
.hero .placeholder,
.hero .illustration {
  display: none !important;
}

/* 如果原图是用背景类实现，也隐藏占位卡片 */
.hero [class*="visual"],
.hero [class*="illustration"],
.hero [class*="placeholder"] {
  display: none !important;
}

/* 首屏装饰：低对比“囍”，形成高级东方感 */
.hero::before {
  content: "囍";
  position: absolute;
  right: 7vw;
  top: 14vh;
  font-size: clamp(120px, 28vw, 320px);
  line-height: 1;
  color: rgba(155,23,18,.055);
  font-family: serif;
  pointer-events: none;
}

.hero::after {
  content: "";
  position: absolute;
  inset: 10% 6%;
  border: 1px solid rgba(185,142,72,.14);
  border-radius: 42px;
  pointer-events: none;
  mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
}

.hero > * {
  position: relative;
  z-index: 2;
}

.hero .eyebrow,
.hero .sub,
.hero .kicker,
.eyebrow {
  color: #b98e48 !important;
  letter-spacing: .42em !important;
  font-size: 12px !important;
}

.hero h1,
.hero-title {
  margin-top: 18px !important;
  margin-bottom: 30px !important;
  font-size: clamp(56px, 11vw, 118px) !important;
  line-height: 1.06 !important;
  letter-spacing: .10em !important;
  font-weight: 500 !important;
}

.hero h1 span,
.hero-title span {
  color: #9b1712 !important;
}

.hero .lead,
.hero p.lead,
.hero .hero-desc,
.hero .hero-text {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  color: rgba(65,53,44,.70) !important;
  font-size: clamp(17px, 2.3vw, 22px) !important;
  line-height: 2.05 !important;
  letter-spacing: .06em !important;
}

/* 首屏只留一个按钮，且位置收在封面内 */
.hero .actions,
.hero .hero-actions,
.hero .buttons {
  justify-content: center !important;
  margin-top: 42px !important;
}

.hero .actions a:not(:first-child),
.hero .hero-actions a:not(:first-child),
.hero .buttons a:not(:first-child) {
  display: none !important;
}

.hero .btn:first-child,
.hero .primary {
  min-height: 58px !important;
  min-width: min(360px, 86vw) !important;
  padding: 14px 36px !important;
  border-radius: 999px !important;
  background: #9b1712 !important;
  color: #fff !important;
  letter-spacing: .14em !important;
  font-size: 17px !important;
  box-shadow: 0 20px 52px rgba(155,23,18,.22) !important;
}

/* 首屏下面直接进入内容，减少割裂 */
.hero + .section,
.hero + section {
  margin-top: 0 !important;
}

/* 手机端：第一屏刚好完整，不露下面突兀图片区 */
@media (max-width: 680px) {
  .v18-3-header,
  .header.v18-3-header,
  .site-header.v18-3-header {
    min-height: 68px !important;
    padding: 13px 16px !important;
  }

  .v18-3-header .brand img,
  .v18-3-header .logo img {
    width: 38px !important;
    height: 38px !important;
  }

  .v18-3-header .brand b,
  .v18-3-header .logo b,
  .v18-3-header .brand strong,
  .v18-3-header .logo strong {
    font-size: 19px !important;
    letter-spacing: .18em !important;
  }

  .hero {
    min-height: calc(100svh - 68px) !important;
    padding: 54px 26px 72px !important;
  }

  .hero::before {
    right: -10vw;
    top: 9vh;
    font-size: 185px;
  }

  .hero::after {
    inset: 8% 18px;
    border-radius: 32px;
  }

  .hero .eyebrow,
  .hero .sub,
  .hero .kicker,
  .eyebrow {
    font-size: 11px !important;
    letter-spacing: .32em !important;
  }

  .hero h1,
  .hero-title {
    font-size: clamp(54px, 15vw, 78px) !important;
    line-height: 1.10 !important;
    margin: 18px 0 26px !important;
    letter-spacing: .075em !important;
  }

  .hero .lead,
  .hero p.lead,
  .hero .hero-desc,
  .hero .hero-text {
    font-size: 17px !important;
    line-height: 2.0 !important;
    letter-spacing: .045em !important;
  }

  .hero .actions,
  .hero .hero-actions,
  .hero .buttons {
    margin-top: 36px !important;
  }

  .hero .btn:first-child,
  .hero .primary {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 56px !important;
    font-size: 16px !important;
  }
}



/* =========================
   V18.4 完整官网包：品牌Logo替换
   导航栏使用裁剪后的红色印章 logo-icon.png
   ========================= */

.header .brand img,
.site-header .brand img,
.v18-3-header .brand img,
.v18-3-header .logo img,
.v17-header .brand img,
.v17-header .logo img,
.logo img,
.brand img {
  object-fit: contain !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.08));
}

/* 顶部Logo比例微调 */
.v18-3-header .brand,
.header .brand,
.site-header .brand,
.logo {
  gap: 13px !important;
}

.v18-3-header .brand img,
.header .brand img,
.site-header .brand img,
.logo img {
  width: 40px !important;
  height: 40px !important;
}

@media (max-width: 680px) {
  .v18-3-header .brand img,
  .header .brand img,
  .site-header .brand img,
  .logo img {
    width: 38px !important;
    height: 38px !important;
  }
}



/* =========================
   V18.5 展厅卡片与浏览器Icon修复
   目标：
   1. 解决“400㎡婚服美学空间 / 空间细节”文字重叠
   2. 展厅三图统一4:3比例
   3. 图中文字独立定位，不互相覆盖
   ========================= */

/* 展厅图片区域外层统一 */
.shop-grid,
.space-grid,
.store-grid,
.shop-gallery,
.space-gallery,
.visit-gallery,
.shop-section .image-grid,
.space-section .image-grid,
.visit-section .image-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

/* 每一张展厅图卡片固定4:3，防止高度错乱 */
.shop-photo,
.space-photo,
.store-photo,
.visit-photo,
.shop-card,
.space-card {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 30px !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center center !important;
  box-shadow: 0 28px 76px rgba(55, 34, 16, .13) !important;
}

/* 若里面有img，锁死比例 */
.shop-photo img,
.space-photo img,
.store-photo img,
.visit-photo img,
.shop-card img,
.space-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* 每个卡片单独的渐变遮罩 */
.shop-photo::after,
.space-photo::after,
.store-photo::after,
.visit-photo::after,
.shop-card::after,
.space-card::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 48% !important;
  background: linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,.18) 55%, transparent) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* 文字只在当前卡片内，不再叠到下一张 */
.shop-photo span,
.space-photo span,
.store-photo span,
.visit-photo span,
.shop-card span,
.space-card span,
.shop-photo .space-card-text,
.space-photo .space-card-text,
.store-photo .space-card-text,
.visit-photo .space-card-text,
.shop-card .space-card-text,
.space-card .space-card-text {
  position: absolute !important;
  left: 26px !important;
  bottom: 24px !important;
  right: 26px !important;
  z-index: 2 !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(22px, 2.6vw, 34px) !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
  letter-spacing: .06em !important;
  text-shadow: 0 3px 18px rgba(0,0,0,.55) !important;
  transform: none !important;
}

/* 兼容旧文字标签：统一第三张 */
.shop-photo.shop-detail span::before {
  content: "" !important;
}

/* 如果有重复的隐藏标题/旧绝对定位元素，压低干扰 */
.shop-photo p,
.space-photo p,
.store-photo p,
.visit-photo p,
.shop-card p,
.space-card p {
  position: relative !important;
  z-index: 2 !important;
  margin: 0 !important;
}

/* 手机端：一列三张，每张比例一致，不重叠 */
@media (max-width: 780px) {
  .shop-grid,
  .space-grid,
  .store-grid,
  .shop-gallery,
  .space-gallery,
  .visit-gallery,
  .shop-section .image-grid,
  .space-section .image-grid,
  .visit-section .image-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .shop-photo,
  .space-photo,
  .store-photo,
  .visit-photo,
  .shop-card,
  .space-card {
    aspect-ratio: 4 / 3 !important;
    border-radius: 24px !important;
  }

  .shop-photo span,
  .space-photo span,
  .store-photo span,
  .visit-photo span,
  .shop-card span,
  .space-card span,
  .shop-photo .space-card-text,
  .space-photo .space-card-text,
  .store-photo .space-card-text,
  .visit-photo .space-card-text,
  .shop-card .space-card-text,
  .space-card .space-card-text {
    left: 22px !important;
    right: 22px !important;
    bottom: 20px !important;
    font-size: 28px !important;
  }
}

/* 浏览器小Icon和导航Logo使用同一枚印章 */
.header .brand img,
.site-header .brand img,
.v18-3-header .brand img,
.v18-3-header .logo img,
.logo img,
.brand img {
  object-fit: contain !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.08));
}


/* =========================
   V18.6 透明Logo修正版
   ========================= */

.header .brand img,
.site-header .brand img,
.v18-3-header .brand img,
.v18-3-header .logo img,
.logo img,
.brand img {
  background: transparent !important;
  object-fit: contain !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.08));
}

.v18-3-header .brand img,
.header .brand img,
.site-header .brand img,
.logo img,
.brand img {
  width: 40px !important;
  height: 40px !important;
}

@media (max-width: 680px) {
  .v18-3-header .brand img,
  .header .brand img,
  .site-header .brand img,
  .logo img,
  .brand img {
    width: 38px !important;
    height: 38px !important;
  }
}



/* =========================
   V18.7 婚服美学空间最终修复
   关键：三张展厅图为三个兄弟节点，不再嵌套；CSS锁定4:3比例和文字层级
   ========================= */

.shop-section .fixed-shop-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.shop-section .fixed-shop-grid .shop-photo {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 30px !important;
  overflow: hidden !important;
  border: 1px solid rgba(198,154,73,.26) !important;
  box-shadow: 0 28px 76px rgba(55,34,16,.13) !important;
  background-size: cover !important;
  background-position: center center !important;
}

.shop-section .fixed-shop-grid .shop-display {
  background:
    linear-gradient(180deg, transparent 42%, rgba(0,0,0,.58)),
    url("assets/shop-display.jpg") center/cover no-repeat !important;
}

.shop-section .fixed-shop-grid .shop-space {
  background:
    linear-gradient(180deg, transparent 42%, rgba(0,0,0,.58)),
    url("assets/shop-space.jpg") center/cover no-repeat !important;
}

.shop-section .fixed-shop-grid .shop-detail {
  background:
    linear-gradient(180deg, transparent 42%, rgba(0,0,0,.58)),
    url("assets/shop-detail.jpg") center/cover no-repeat !important;
}

.shop-section .fixed-shop-grid .shop-photo::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 0 0 0 !important;
  height: 46% !important;
  background: linear-gradient(to top, rgba(0,0,0,.66), rgba(0,0,0,.18) 58%, transparent) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.shop-section .fixed-shop-grid .shop-photo span {
  position: absolute !important;
  left: 26px !important;
  right: 26px !important;
  bottom: 24px !important;
  z-index: 2 !important;
  display: block !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(22px, 2.5vw, 32px) !important;
  line-height: 1.22 !important;
  font-weight: 500 !important;
  letter-spacing: .06em !important;
  text-shadow: 0 3px 18px rgba(0,0,0,.58) !important;
  white-space: normal !important;
  transform: none !important;
}

/* 清理旧版本可能遗留的嵌套样式影响 */
.shop-section .fixed-shop-grid .shop-photo .shop-photo {
  display: none !important;
}

@media (max-width: 780px) {
  .shop-section .fixed-shop-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .shop-section .fixed-shop-grid .shop-photo {
    aspect-ratio: 4 / 3 !important;
    border-radius: 24px !important;
  }

  .shop-section .fixed-shop-grid .shop-photo span {
    left: 22px !important;
    right: 22px !important;
    bottom: 20px !important;
    font-size: 28px !important;
  }
}



/* =========================
   V19 首屏双CTA完整包
   主按钮：预约到店试穿
   次按钮：查看婚服体系
   ========================= */

.hero .hero-system-btn,
.hero .btn.secondary.hero-system-btn,
.hero a.hero-system-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 56px !important;
  min-width: min(360px, 86vw) !important;
  margin-top: 14px !important;
  padding: 13px 34px !important;
  border-radius: 999px !important;
  background: rgba(255, 250, 241, .54) !important;
  color: #7f1712 !important;
  border: 1px solid rgba(127, 23, 18, .34) !important;
  box-shadow: none !important;
  letter-spacing: .14em !important;
  font-size: 16px !important;
  text-decoration: none !important;
  backdrop-filter: blur(12px);
}

/* 修正旧版CSS隐藏第二个按钮的问题：只允许 hero-system-btn 显示 */
.hero .actions a.hero-system-btn,
.hero .hero-actions a.hero-system-btn,
.hero .buttons a.hero-system-btn {
  display: inline-flex !important;
}

.hero .actions,
.hero .hero-actions,
.hero .buttons {
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;
}

/* 手机端按钮宽度统一 */
@media (max-width: 680px) {
  .hero .hero-system-btn,
  .hero .btn.secondary.hero-system-btn,
  .hero a.hero-system-btn {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 54px !important;
    font-size: 16px !important;
    margin-top: 12px !important;
  }
}



/* =========================
   V20 高级动效 + 婚服体系横滑卡片
   ========================= */

/* 首屏轻微动效：克制，不花哨 */
.hero {
  animation: tcHeroFadeIn 1.05s ease-out both;
}

.hero .eyebrow,
.hero h1,
.hero-title,
.hero .lead,
.hero .hero-desc,
.hero .actions,
.hero .hero-actions,
.hero .buttons {
  animation: tcHeroRise .9s cubic-bezier(.18,.72,.22,1) both;
}

.hero .eyebrow { animation-delay: .08s; }
.hero h1,
.hero-title { animation-delay: .16s; }
.hero .lead,
.hero .hero-desc { animation-delay: .28s; }
.hero .actions,
.hero .hero-actions,
.hero .buttons { animation-delay: .42s; }

.hero::before {
  animation: tcXiFloat 8s ease-in-out infinite alternate;
}

.hero .btn:first-child,
.hero .primary {
  animation: tcButtonBreath 3.8s ease-in-out infinite;
}

@keyframes tcHeroFadeIn {
  from { opacity: .01; filter: blur(8px); }
  to { opacity: 1; filter: blur(0); }
}

@keyframes tcHeroRise {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes tcXiFloat {
  from { transform: translate3d(0,0,0) scale(1); opacity: .72; }
  to { transform: translate3d(-8px,10px,0) scale(1.03); opacity: .88; }
}

@keyframes tcButtonBreath {
  0%, 100% { box-shadow: 0 20px 52px rgba(155,23,18,.20); }
  50% { box-shadow: 0 24px 68px rgba(155,23,18,.30); }
}

/* 用户偏好减少动画时自动关闭 */
@media (prefers-reduced-motion: reduce) {
  .hero,
  .hero *,
  .hero::before {
    animation: none !important;
  }
}

/* 婚服体系：横向滑动高级画册 */
#system .system-grid,
#system .collection-grid,
#system .attire-grid,
#system .cards,
.section:has(.system-card) .system-grid,
.section:has(.system-card) .collection-grid,
.section:has(.system-card) .attire-grid {
  display: flex !important;
  gap: 22px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 10px clamp(22px, 4vw, 56px) 28px !important;
  margin-left: calc(-1 * clamp(22px, 4vw, 56px)) !important;
  margin-right: calc(-1 * clamp(22px, 4vw, 56px)) !important;
}

/* 滚动条弱化 */
#system .system-grid::-webkit-scrollbar,
#system .collection-grid::-webkit-scrollbar,
#system .attire-grid::-webkit-scrollbar,
#system .cards::-webkit-scrollbar {
  height: 6px;
}

#system .system-grid::-webkit-scrollbar-thumb,
#system .collection-grid::-webkit-scrollbar-thumb,
#system .attire-grid::-webkit-scrollbar-thumb,
#system .cards::-webkit-scrollbar-thumb {
  background: rgba(155,23,18,.22);
  border-radius: 999px;
}

#system .system-card {
  flex: 0 0 min(360px, 78vw) !important;
  aspect-ratio: 3 / 4 !important;
  scroll-snap-align: center !important;
  border-radius: 34px !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 30px 82px rgba(55,34,16,.16) !important;
  transform: translateZ(0);
}

#system .system-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.22) 48%, rgba(0,0,0,.70)) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

#system .system-card > * {
  position: relative !important;
  z-index: 2 !important;
}

#system .system-card h3,
#system .system-card strong,
#system .system-card .title {
  font-size: clamp(28px, 4vw, 42px) !important;
  letter-spacing: .08em !important;
}

#system .system-card p {
  max-width: 92% !important;
  line-height: 1.85 !important;
  color: rgba(255,255,255,.86) !important;
}

/* 桌面端更像品牌画册，首尾有呼吸空间 */
@media (min-width: 1024px) {
  #system .system-card {
    flex-basis: 360px !important;
  }
}

/* 手机端卡片接近整屏宽，滑动感更强 */
@media (max-width: 680px) {
  #system .system-grid,
  #system .collection-grid,
  #system .attire-grid,
  #system .cards {
    gap: 16px !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
    margin-left: -22px !important;
    margin-right: -22px !important;
  }

  #system .system-card {
    flex-basis: 82vw !important;
    border-radius: 28px !important;
  }
}



/* =========================
   V22 重制完整包：保留完整视觉，只统一品牌文案与按钮
   ========================= */

.v22-brand-line,
.brand-line {
  margin: 0 0 18px;
  color: #9b1712;
  letter-spacing: .36em;
  font: 13px/1.2 Arial, "PingFang SC", sans-serif;
}

.hero .brand-line {
  color: #9b1712 !important;
  opacity: .92;
}

.city-line {
  margin: 18px auto 0 !important;
  color: rgba(60, 48, 40, .58) !important;
  font-size: 15px !important;
  letter-spacing: .22em !important;
}

/* 查看婚服体系按钮：跳转 attire.html */
.hero .hero-system-btn,
.hero .btn.secondary.hero-system-btn,
.hero a.hero-system-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 54px !important;
  min-width: min(360px, 86vw) !important;
  margin-top: 13px !important;
  padding: 13px 34px !important;
  border-radius: 999px !important;
  background: rgba(255, 250, 241, .52) !important;
  color: #7f1712 !important;
  border: 1px solid rgba(127, 23, 18, .32) !important;
  box-shadow: none !important;
  letter-spacing: .14em !important;
  font-size: 16px !important;
  text-decoration: none !important;
  backdrop-filter: blur(12px);
}

.hero .actions a.hero-system-btn,
.hero .hero-actions a.hero-system-btn,
.hero .buttons a.hero-system-btn {
  display: inline-flex !important;
}

.hero .actions,
.hero .hero-actions,
.hero .buttons {
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;
}

/* 文案整体更克制 */
.section-head h2,
.section h2,
h2 {
  letter-spacing: .08em !important;
  font-weight: 500 !important;
}

.section-head p,
.section p {
  line-height: 1.95;
  letter-spacing: .04em;
}

/* 保留V20轻动效，但降低存在感 */
.hero {
  animation-duration: .8s !important;
}

@media (max-width: 680px) {
  .brand-line {
    font-size: 12px;
    letter-spacing: .30em;
  }

  .city-line {
    font-size: 14px !important;
    letter-spacing: .16em !important;
  }

  .hero .hero-system-btn,
  .hero .btn.secondary.hero-system-btn,
  .hero a.hero-system-btn {
    width: 100% !important;
    min-width: 0 !important;
  }
}
