/* Brand story page refinements */
.semantic-page-title {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.brand-copy-mobile { display: none; }
.brand-timeline .brand-story-more {
  display: block;
  width: max-content;
  margin: 72px auto 0;
  padding: 0 0 8px;
  border-bottom: 1px solid rgba(144, 144, 144, 0.72);
  color: #909090;
  font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 3px;
  text-decoration: none;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .series-detail-hover-img,
  .product-popular-hover-img,
  .exclusive-engraving-hover-img {
    visibility: hidden;
    opacity: 0 !important;
    pointer-events: none;
  }

  .series-detail-product:hover .series-detail-media img,
  .product-popular-card:hover img,
  .exclusive-engraving-product:hover img {
    transform: none !important;
  }
}

/* 品牌事件CMS接入：沿用原页面比例，正文支持横图、通栏、双图和三图。 */
#brandEventsPage .brand-events-status,
#brandEventsDetailPage .brand-events-status {
  margin: 0;
  color: #9b9b9b;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: .3px;
}

#brandEventsPage .brand-events-grid > .brand-events-status {
  grid-column: 1 / -1;
  min-height: 240px;
  display: grid;
  place-items: center;
}

#brandEventsPage .brand-events-list a {
  overflow-wrap: anywhere;
}

#brandEventsDetailPage .event-detail-media {
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}

#brandEventsDetailPage .event-detail-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#brandEventsDetailPage .event-detail-cover {
  margin-top: 0;
}

#brandEventsDetailPage .event-detail-media--full {
  width: min(1800px, calc(100vw - 80px));
  aspect-ratio: 1.91 / 1;
  margin: 70px 0 52px 50%;
  transform: translateX(-50%);
}

#brandEventsDetailPage .event-detail-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#brandEventsDetailPage .event-detail-pair figure {
  margin: 0;
}

#brandEventsDetailPage .event-detail-article h2,
#brandEventsDetailPage .event-detail-article h3,
#brandEventsDetailPage .event-detail-article h4 {
  margin: 54px 0 24px;
  color: #18181a;
  font-family: SerifCN, "Songti SC", "STSong", serif;
  font-weight: 600;
  line-height: 1.55;
}

#brandEventsDetailPage .event-detail-article h2 {
  font-size: 21px;
}

#brandEventsDetailPage .event-detail-article h3,
#brandEventsDetailPage .event-detail-article h4 {
  font-size: 18px;
}

#brandEventsDetailPage .event-detail-article blockquote {
  margin: 48px 0;
  padding: 0 0 0 22px;
  border-left: 1px solid #bebebe;
  color: #777;
  font-family: SerifCN, "Songti SC", "STSong", serif;
  font-size: 17px;
  line-height: 2;
}

#brandEventsDetailPage .event-detail-article ul,
#brandEventsDetailPage .event-detail-article ol {
  margin: 30px 0;
  padding-left: 1.5em;
  color: #8a8a8a;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 2.25;
}

#brandEventsDetailPage .event-detail-article p + p {
  margin-top: 24px;
}

@media (max-width: 900px) {
  #brandEventsPage .brand-events-grid > .brand-events-status {
    min-height: 160px;
  }

  #brandEventsDetailPage .event-detail-media--full {
    width: 100vw;
    margin-top: var(--mobile-article-flow-gap);
    margin-bottom: var(--mobile-article-flow-gap);
  }

  #brandEventsDetailPage .event-detail-grid--3 {
    grid-template-columns: 1fr;
  }

  #brandEventsDetailPage .event-detail-article h2 {
    font-size: 19px;
  }

  #brandEventsDetailPage .event-detail-article h3,
  #brandEventsDetailPage .event-detail-article h4 {
    font-size: 17px;
  }
}

/* 手机端单品内页样板：仅调整产品信息与图文介绍，人气作品以下保持原样。 */
.jewelry-custom-mobile-copy,
.jewelry-custom-mobile-card-copy,
.jewelry-custom-mobile-process-copy,
.jewelry-custom-mobile-step-copy {
  display: none;
}

#jewelryCustomPage .jewelry-custom-hero > picture {
  display: block;
  width: 100%;
  height: 100%;
}

#jewelryCustomPage .jewelry-custom-process > picture {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

#jewelryCustomPage .jewelry-custom-process > picture > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

@media (max-width: 900px) {
  #seriesProductPage .product-detail-main {
    width: 100%;
    max-width: none;
    padding: var(--header) 0 76px;
    row-gap: 60px;
  }

  #seriesProductPage .product-detail-gallery {
    width: 100%;
    max-width: none;
    grid-template-rows: auto 74px;
  }

  #seriesProductPage .product-detail-window {
    width: 100%;
    height: auto;
    aspect-ratio: 1658 / 1219;
  }

  #seriesProductPage .product-detail-slider {
    height: 74px;
  }

  #seriesProductPage .product-detail-track i {
    height: 2px;
    transform: translate(0, -.5px);
  }

  #seriesProductPage .product-detail-info {
    width: 68%;
    max-width: none;
    margin: 0 auto;
    padding-top: 0;
  }

  #seriesProductPage .product-detail-series,
  #seriesProductPage .product-detail-info h1,
  #seriesProductPage .product-detail-info dl,
  #seriesProductPage .product-detail-note {
    transform: none;
  }

  #seriesProductPage .product-detail-series {
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 1.2;
    letter-spacing: .8px;
  }

  #seriesProductPage .product-detail-info h1 {
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: .6px;
  }

  #seriesProductPage .product-detail-rule {
    margin: 22px 0 14px;
  }

  #seriesProductPage .product-detail-info dl {
    font-size: 13px;
    line-height: 24px;
    letter-spacing: .45px;
  }

  #seriesProductPage .product-detail-info dl div {
    grid-template-columns: max-content 1fr;
    column-gap: 5px;
  }

  #seriesProductPage .product-detail-note {
    width: 100%;
    margin: 64px 0 0;
    font-size: 8px;
    line-height: 1.7;
    letter-spacing: .1px;
  }

  #seriesProductPage .product-detail-note br {
    display: none;
  }

  #seriesProductPage .product-story {
    padding-bottom: 94px;
  }

  #seriesProductPage .product-story-rule {
    margin-bottom: 76px;
  }

  #seriesProductPage .product-story-copy {
    width: 68%;
    margin-bottom: 48px;
  }

  #seriesProductPage .product-story-copy h2 {
    margin-bottom: 42px;
    font-size: 22px;
    line-height: 1.45;
  }

  #seriesProductPage .product-story-copy p {
    font-family: Harmony, "Microsoft YaHei", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 2.05;
    letter-spacing: .45px;
    color: rgb(138, 138, 138);
  }

  #seriesProductPage .series-product-mobile-line {
    display: block;
  }

  #seriesProductPage .product-story-wide {
    margin-bottom: 48px;
  }

  #seriesProductPage .product-story-caption {
    margin-bottom: 48px;
    font-family: Harmony, "Microsoft YaHei", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: .45px;
    color: rgb(138, 138, 138);
  }

  #seriesProductPage .product-story-pair {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
  }

  #seriesProductPage .product-story-pair img {
    width: 100%;
    height: auto;
  }

  #seriesProductPage .product-popular-head h2 {
    font-size: 20px;
  }
}

/* 手机端标准尾链组件：上方 96px，下方 123px。 */
@media (max-width: 900px) {
  #allJewelryPage > .series-detail-hero {
    height: 780px;
  }

  #seriesNewDetailPage > .series-detail-hero {
    height: 780px;
  }

  #allSeriesDetailPage:has(.series-detail-content.mobile-standard-tail-host) > .series-detail-hero {
    height: 780px;
  }

  #allSeriesDetailPage:has(#sharedSeriesIntro:not([hidden])) .series-detail-content > h1 {
    font-size: 20px;
    font-weight: 400;
  }

  #allSeriesDetailPage .series-catalog-pending {
    margin: 0;
    padding: 72px 0 24px;
    color: #aaa39d;
    font-family: Harmony, "Microsoft YaHei", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.8;
    letter-spacing: .6px;
    text-align: center;
  }

  #allSeriesPage > .all-series-hero {
    height: 780px;
  }

  #allSeriesPage .all-series-content {
    padding: 84px 0 0;
  }

  #allSeriesPage .all-series-content > h1 {
    margin-bottom: 70px;
  }

  #allSeriesPage .all-series-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px 5px;
  }

  #allSeriesPage .all-series-card {
    overflow: visible;
  }

  #allSeriesPage .all-series-card span {
    left: 0;
    top: -15px;
    display: block;
    width: 100%;
    opacity: 1;
    transform: none;
  }

  #allSeriesPage .all-series-card b {
    font-family: Harmony, "Microsoft YaHei", sans-serif;
    font-size: 10px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: .2px;
    color: #aaa39d;
  }

  #allSeriesPage .all-series-card em {
    display: none;
  }

  #allSeriesPage .all-series-card:hover img {
    opacity: 1;
  }

  #giftBoxPage .gift-box-hero {
    height: 780px;
  }

  #giftBoxPage .gift-box-detail-grid {
    width: 58%;
    max-width: 220px;
    grid-template-columns: 1fr;
    gap: 58px;
    margin: 66px 0 0;
  }

  #giftBoxPage .gift-box-detail-card {
    text-align: left;
  }

  #giftBoxPage .gift-box-detail-card figcaption {
    margin-top: 10px;
  }

  #customBoxPage .custom-box-hero {
    height: 780px;
  }

  #customBoxPage .custom-box-step-grid {
    width: 54%;
    max-width: 220px;
    grid-template-columns: 1fr;
    gap: 4px;
    margin-right: auto;
    margin-left: auto;
  }

  .mobile-standard-tail-host {
    padding-bottom: 0 !important;
  }

  .mobile-standard-tail {
    display: grid;
    justify-items: center;
    padding: 96px 0 123px;
  }

  .mobile-standard-tail__link {
    width: max-content;
    margin: 0 !important;
    transition: color .22s ease;
  }

  .mobile-standard-tail__link:hover,
  .mobile-standard-tail__link:focus-visible,
  .mobile-standard-tail__link:active {
    color: #d4221e;
  }
}

/* Mobile page-width safeguards: keep page swipes local to intentional carousels. */
.co-creation-mobile-break,
.jewelry-custom-list-mobile-break,
.designer-plan-mobile-break {
  display: none;
}

.co-detail-more--mobile {
  display: none;
}

#brandEventsPage .brand-events-more {
  display: none;
}

.jewelry-custom-works-mobile-tail {
  display: none;
}

@media (max-width: 900px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  #menuToggle span {
    display: none;
  }

  #menuToggle::before {
    content: "";
    display: block;
    width: 18px;
    height: 14px;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 14'%3E%3Cpath d='M0 1h18M0 7h18M0 13h18' fill='none' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E") center / 18px 14px no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 14'%3E%3Cpath d='M0 1h18M0 7h18M0 13h18' fill='none' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E") center / 18px 14px no-repeat;
  }

  .co-creation-grid,
  .designer-plan-grid,
  .jewelry-custom-work-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #brandCoCreationPage .co-creation-grid {
    row-gap: 68px;
  }

  #jewelryCustomListPage .co-creation-hero {
    height: 780px;
  }

  #jewelryCustomListPage .jewelry-custom-list-mobile-break {
    display: inline;
  }

  #jewelryCustomListPage .jewelry-custom-list-desktop-break {
    display: none;
  }

  #jewelryCustomListPage .co-creation-grid {
    row-gap: 58px;
  }

  #jewelryCustomListPage .co-creation-more.mobile-standard-tail {
    height: auto;
  }

  #jewelryCustomPage .jewelry-custom-hero {
    height: 780px;
  }

  #jewelryCustomPage .jewelry-custom-hero img {
    object-fit: cover;
  }

  #jewelryCustomPage .jewelry-custom-intro {
    padding-top: 107px;
  }

  #jewelryCustomPage .jewelry-custom-copy {
    width: calc(100vw - 40px);
    max-width: 560px;
    margin-bottom: 54px;
  }

  #jewelryCustomPage .jewelry-custom-copy h2 {
    margin-bottom: 27px;
    font-size: 22px;
    line-height: 1.2;
  }

  #jewelryCustomPage .jewelry-custom-copy p {
    font-size: 13px;
    line-height: 2;
    letter-spacing: .45px;
  }

  #jewelryCustomPage .jewelry-custom-desktop-copy,
  #jewelryCustomPage .jewelry-custom-desktop-card-copy,
  #jewelryCustomPage .jewelry-custom-desktop-process-copy,
  #jewelryCustomPage .jewelry-custom-desktop-step-copy {
    display: none;
  }

  #jewelryCustomPage .jewelry-custom-mobile-copy,
  #jewelryCustomPage .jewelry-custom-mobile-card-copy,
  #jewelryCustomPage .jewelry-custom-mobile-process-copy,
  #jewelryCustomPage .jewelry-custom-mobile-step-copy {
    display: block;
  }

  #jewelryCustomPage .jewelry-custom-mobile-copy {
    font-size: 13px;
  }

  #jewelryCustomPage .jewelry-custom-triptych {
    width: calc(100vw - 40px);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3px;
  }

  #jewelryCustomPage .jewelry-custom-section {
    padding: 105px 0 28px;
  }

  #jewelryCustomPage .jewelry-custom-copy--compact {
    margin-bottom: 54px;
  }

  #jewelryCustomPage .jewelry-custom-pair {
    width: calc(100vw - 40px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
  }

  #jewelryCustomPage .jewelry-custom-pair h3 {
    margin: 15px 0 9px;
    font-size: 12px;
    line-height: 1.35;
  }

  #jewelryCustomPage .jewelry-custom-pair p {
    width: 100%;
    font-size: 10px;
    line-height: 1.65;
  }

  #jewelryCustomPage .jewelry-custom-mobile-card-copy {
    font-size: 10px;
    line-height: 1.8;
    letter-spacing: .15px;
  }

  #jewelryCustomPage .jewelry-custom-pair .jewelry-custom-mobile-card-copy--material {
    letter-spacing: -.3px;
  }

  #jewelryCustomPage .jewelry-custom-mobile-card-copy--tight {
    letter-spacing: -.6px;
  }

  #jewelryCustomPage .jewelry-custom-section--heritage {
    padding-top: 105px;
    padding-bottom: 105px;
  }

  #jewelryCustomPage .jewelry-custom-process {
    height: 778.5px;
    min-height: 0;
  }

  #jewelryCustomPage .jewelry-custom-process > img,
  #jewelryCustomPage .jewelry-custom-process > picture > img {
    object-position: 82% center;
  }

  #jewelryCustomPage .jewelry-custom-process-inner {
    width: calc(100vw - 40px);
    height: 100%;
    display: block;
    padding: 76px 0 70px;
  }

  #jewelryCustomPage .jewelry-custom-process-copy {
    width: 100%;
    transform: none;
  }

  #jewelryCustomPage .jewelry-custom-process-copy p {
    width: 100%;
    font-size: 10px;
    line-height: 1.75;
  }

  #jewelryCustomPage .jewelry-custom-process-copy .jewelry-custom-mobile-process-copy {
    font-size: 10px;
    line-height: 1.85;
    letter-spacing: -.6px;
    white-space: pre-line;
  }

  #jewelryCustomPage .jewelry-custom-process-copy h2 {
    margin-top: 28px;
    font-size: 18px;
    opacity: .8;
  }

  #jewelryCustomPage .jewelry-custom-process ol {
    width: calc(58% - 20px);
    margin: 58px 0 0 auto;
    padding: 0;
    gap: 35px;
    transform: translateY(20px);
  }

  #jewelryCustomPage .jewelry-custom-process b {
    font-size: 16px;
    opacity: .8;
  }

  #jewelryCustomPage .jewelry-custom-process span {
    font-size: 10px;
    line-height: 1.65;
  }

  #jewelryCustomPage .jewelry-custom-mobile-step-copy {
    white-space: pre-line;
  }

  #jewelryCustomPage .jewelry-custom-works {
    width: calc(100vw - 40px);
    padding: 96px 0 0;
  }

  #jewelryCustomPage .jewelry-custom-works-head {
    margin-bottom: 42px;
  }

  #jewelryCustomPage .jewelry-custom-works-head h2 {
    color: rgb(24, 24, 26);
    font-family: Harmony, "Microsoft YaHei", sans-serif;
    font-size: 20px;
    font-weight: 300;
    line-height: 20px;
    letter-spacing: 1px;
  }

  #jewelryCustomPage .jewelry-custom-works-head > a {
    display: none;
  }

  #jewelryCustomPage .jewelry-custom-work-grid {
    display: block;
  }

  #jewelryCustomPage .jewelry-custom-work-card:not(:first-child) {
    display: none;
  }

  #jewelryCustomPage .jewelry-custom-work-card--cms:not(:first-child) {
    display: block;
    margin-top: 58px;
  }

  #jewelryCustomPage .jewelry-custom-work-card img {
    aspect-ratio: 1.603 / 1;
    margin-bottom: 19px;
  }

  #jewelryCustomPage .jewelry-custom-work-card h3 {
    min-height: 34px;
    margin: 0 0 14px;
    font-family: SerifCN, serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: .2px;
  }

  #jewelryCustomPage .jewelry-custom-work-card p {
    min-height: 42px;
    margin: 0;
    font-size: 12px;
    line-height: 1.72;
    letter-spacing: .25px;
  }

  #jewelryCustomPage .jewelry-custom-work-card a {
    margin-top: 24px;
    font-size: 12px;
  }

  #jewelryCustomPage .jewelry-custom-works-mobile-tail {
    display: grid;
  }

  #jewelryCustomPage .jewelry-custom-works-mobile-tail .mobile-standard-tail__link {
    padding: 0 0 6px;
    border-bottom: 1px solid currentColor;
    color: #aaa39d;
    font-family: Harmony, "Microsoft YaHei", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.15;
    letter-spacing: 1.2px;
    text-decoration: none;
  }

  #brandCoCreationPage .co-creation-mobile-break {
    display: inline;
  }

  #brandCoCreationPage .co-creation-intro p {
    white-space: nowrap;
  }

  .co-creation-card,
  .designer-plan-card,
  .jewelry-custom-work-card {
    min-width: 0;
    max-width: 100%;
  }

  .co-creation-card h2,
  .designer-plan-card h2,
  .jewelry-custom-work-card h3 {
    width: 100%;
    overflow-wrap: anywhere;
  }

  .co-creation-card img,
  .designer-plan-card img,
  .jewelry-custom-work-card img {
    max-width: 100%;
  }

  .co-creation-card:hover img,
  .designer-plan-card img:hover,
  .designer-plan-card:has(a:hover) img,
  .jewelry-custom-work-card:hover img {
    transform: none;
  }

  #designerPlanPage .designer-plan-grid {
    row-gap: 68px;
  }

  #designerPlanPage .designer-plan-hero {
    height: calc(168.35vw + var(--header));
    padding-top: var(--header);
    box-sizing: border-box;
  }

  #designerPlanPage .designer-plan-hero img {
    object-position: 38.3% center;
  }

  body:has(#designerPlanPage:not([hidden])) .site-header {
    color: var(--ink);
    background: #fff;
    box-shadow: 0 1px 0 var(--line);
  }

  body:has(#designerPlanPage:not([hidden])) .site-header .brand img {
    filter: invert(1);
  }

  #designerPlanPage .designer-plan-intro {
    padding: 107px 20px 83px;
  }

  #designerPlanPage .designer-plan-copy {
    width: min(100%, 560px);
  }

  #designerPlanPage .designer-plan-copy p {
    font-size: 15px;
    line-height: 1.9;
    white-space: nowrap;
  }

  #designerPlanPage .designer-plan-copy p + p {
    margin-top: 27px;
  }

  #designerPlanPage .designer-plan-mobile-break {
    display: inline;
  }

  #designerPlanPage .designer-plan-desktop-break {
    display: none;
  }

  #designerPlanPage .designer-plan-symbol {
    width: 18px;
    margin: 46px 0 78px;
  }

  #designerPlanPage .designer-plan-qr {
    width: 146px;
    height: 146px;
    margin: 68px 0 18px;
  }

  #designerPlanPage .designer-plan-copy span {
    font-size: 13px;
  }

  #designerPlanPage .designer-plan-card img {
    margin-bottom: 19px;
  }

  #designerPlanPage .designer-plan-card h2 {
    min-height: 34px;
    margin: 0 0 14px;
    font-size: 20px;
    line-height: 1.35;
  }

  #designerPlanPage .designer-plan-card p {
    min-height: 42px;
    font-size: 12px;
    line-height: 1.72;
  }

  #designerPlanPage .designer-plan-card a {
    margin-top: 24px;
    font-size: 12px;
    line-height: 1.15;
  }

  #designerPlanPage .designer-plan-more {
    margin-top: 96px;
  }

  #designerPlanPage .designer-plan-works {
    padding-bottom: 123px;
  }

  #brandEventsPage .brand-events-layout {
    display: block;
    width: 100%;
    padding: 130px 0 110px;
  }

  #brandEventsPage .brand-events-copy {
    position: static;
    padding: 0;
  }

  #brandEventsPage .brand-events-copy h1 {
    margin: 0 0 70px 20px;
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
  }

  #brandEventsPage .brand-events-list {
    display: none;
  }

  #brandEventsPage .brand-events-grid {
    width: 55vw;
    margin: 0 8.2vw 0 auto;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 62px;
  }

  #brandEventsPage .brand-events-grid a {
    display: flex;
    flex-direction: column;
    overflow: visible;
    background: transparent;
  }

  #brandEventsPage .brand-events-grid > a[hidden] {
    display: none;
  }

  #brandEventsPage .brand-events-grid > a.brand-event-card--revealing {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .45s ease, transform .45s ease;
  }

  #brandEventsPage .brand-events-grid > a.brand-event-card--revealing.is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  #brandEventsPage .brand-events-grid img {
    order: 2;
    width: 52vw;
    margin-left: auto;
    opacity: 1;
  }

  #brandEventsPage .brand-events-grid span {
    position: static;
    order: 1;
    display: block;
    width: 100%;
    margin: 0 0 22px;
    padding: 0;
    color: #9b9b9b;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.35;
    letter-spacing: .3px;
    opacity: 1;
  }

  #brandEventsPage .brand-events-grid a:hover img {
    opacity: 1;
  }

  #brandEventsPage .brand-events-more {
    display: block;
    width: max-content;
    margin: 112px auto 0;
    padding-bottom: 5px;
    border-bottom: 1px solid currentColor;
    color: #aaa39d;
    font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 1px;
    text-decoration: none;
    cursor: pointer;
    transition: color .22s ease;
  }

  #brandEventsPage .brand-events-more:hover,
  #brandEventsPage .brand-events-more:focus-visible,
  #brandEventsPage .brand-events-more:active {
    color: #d4221e;
  }

  #brandEventsPage .brand-events-more[hidden] {
    display: none;
  }

  /* Reusable mobile article rhythm: opt in on future article containers. */
  .content-modules--mobile-uniform-flow {
    --mobile-article-flow-gap: 40px;
  }

  .content-modules--mobile-uniform-flow > p {
    margin-top: 0;
    margin-bottom: 0;
  }

  #brandEventsDetailPage .event-detail-article {
    padding-bottom: 123px;
  }

  #brandEventsDetailPage .event-detail-more {
    margin-top: 96px;
  }

  .product-detail-main {
    min-width: 0;
    max-width: calc(100vw - 40px);
  }

  .product-detail-gallery,
  .product-detail-window,
  .product-detail-info {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .product-detail-gallery {
    grid-template-columns: minmax(0, 1fr);
  }

  .product-detail-slider {
    width: 100%;
    min-width: 0;
    grid-template-columns: 22px minmax(0, 1fr) 22px;
    gap: 12px;
  }

  .all-jewelry-filter {
    max-width: 100%;
    flex-wrap: wrap;
    gap: 18px 20px;
  }

  .size-guide-table-wrap {
    max-width: 100%;
  }

  .size-guide-tips > div {
    min-width: 0;
    transform: none;
  }

  #brandCoCreationDetailPage .co-detail-content {
    width: min(calc(100% - 40px), 560px);
    min-width: 0;
    padding: 112px 0 112px;
  }

  #brandCoCreationDetailPage .co-detail-intro {
    width: 100%;
    max-width: none;
    margin: 0 auto 40px;
  }

  #brandCoCreationDetailPage .co-detail-intro h1 {
    margin: 0 0 36px;
    font-family: SerifCN, "Source Han Serif SC", "Songti SC", "STSong", serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .25px;
    white-space: normal;
  }

  #brandCoCreationDetailPage .co-detail-rule {
    margin-bottom: 32px;
  }

  #brandCoCreationDetailPage .co-detail-intro p {
    font-size: 13px;
    font-weight: 300;
    line-height: 2;
    letter-spacing: .45px;
    color: #8a8a8a;
  }

  #brandCoCreationDetailPage .co-detail-intro p + p {
    margin-top: 48px;
  }

  #brandCoCreationDetailPage .co-detail-grid--ink {
    margin-bottom: 40px;
  }

  #brandCoCreationDetailPage .co-detail-grid--craft {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    margin-bottom: 36px;
  }

  #brandCoCreationDetailPage .co-detail-caption {
    margin-bottom: 40px;
    font-size: 13px;
    font-weight: 300;
    line-height: 2;
    letter-spacing: .45px;
    color: #8a8a8a;
  }

  #brandCoCreationDetailPage .co-detail-wide {
    margin-bottom: 40px;
  }

  #brandCoCreationDetailPage .co-detail-products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    margin-bottom: 96px;
  }

  #brandCoCreationDetailPage .co-detail-more {
    font-size: 12px;
    letter-spacing: 1.1px;
  }

  #brandCoCreationDetailPage .co-detail-more--desktop {
    display: none;
  }

  #brandCoCreationDetailPage .co-detail-more--mobile {
    display: block;
  }

  #jewelryCustomDetailPage .jewelry-custom-detail-content {
    width: min(calc(100% - 40px), 560px);
    min-width: 0;
    padding: 112px 0 0;
  }

  #jewelryCustomDetailPage .co-detail-intro {
    width: 100%;
    max-width: none;
    margin: 0 auto 40px;
  }

  #jewelryCustomDetailPage .co-detail-intro h1 {
    margin: 0 0 36px;
    font-family: SerifCN, "Source Han Serif SC", "Songti SC", "STSong", serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .25px;
  }

  #jewelryCustomDetailPage .co-detail-rule {
    margin-bottom: 32px;
  }

  #jewelryCustomDetailPage .co-detail-intro p,
  #jewelryCustomDetailPage .co-detail-caption {
    font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 2;
    letter-spacing: .45px;
    color: #8a8a8a;
  }

  #jewelryCustomDetailPage .co-detail-intro p + p {
    margin-top: 48px;
  }

  #jewelryCustomDetailPage .co-detail-grid--ink {
    margin-bottom: 40px;
  }

  #jewelryCustomDetailPage .co-detail-caption {
    margin-bottom: 40px;
  }

  #jewelryCustomDetailPage .co-detail-wide {
    margin-bottom: 40px;
  }

  #jewelryCustomDetailPage .jewelry-custom-detail-products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    margin-bottom: 40px;
  }

  #jewelryCustomDetailPage .jewelry-custom-detail-red {
    margin-bottom: 0;
  }

  #jewelryCustomDetailPage .co-detail-more--desktop {
    display: none;
  }

  #jewelryCustomDetailPage .co-detail-more--mobile {
    display: grid;
  }

  #jewelryCustomDetailPage .mobile-standard-tail__link {
    font-size: 12px;
    letter-spacing: 1.1px;
  }

  #exclusiveEngravingPage .exclusive-engraving-hero {
    height: 780px;
  }

  #exclusiveEngravingPage .exclusive-engraving-hero > img {
    object-fit: fill;
    object-position: center center;
  }

  #exclusiveEngravingPage .exclusive-engraving-hero > picture > img {
    object-fit: cover;
    object-position: center center;
  }

  #exclusiveEngravingPage .exclusive-engraving-intro {
    padding: 108px 20px 86px;
  }

  #exclusiveEngravingPage .exclusive-engraving-intro h2 {
    margin-bottom: 24px;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 1.5px;
  }

  #exclusiveEngravingPage .exclusive-engraving-intro p {
    max-width: 350px;
    margin: 0 auto;
    font-size: 13px;
    line-height: 2;
    letter-spacing: .45px;
    color: #777;
  }

  #exclusiveEngravingPage .exclusive-engraving-intro p .exclusive-engraving-mobile-break {
    display: block;
  }

  #exclusiveEngravingPage .exclusive-engraving-intro p .exclusive-engraving-desktop-break {
    display: none;
  }

  #exclusiveEngravingPage .exclusive-engraving-services {
    width: calc(100vw - 40px);
    max-width: 560px;
    padding-bottom: 76px;
  }

  #exclusiveEngravingPage .exclusive-engraving-service,
  #exclusiveEngravingPage .exclusive-engraving-service--reverse {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 60px;
    align-items: center;
  }

  #exclusiveEngravingPage .exclusive-engraving-service--reverse img {
    grid-column: 2;
    grid-row: 1;
  }

  #exclusiveEngravingPage .exclusive-engraving-service--reverse div {
    grid-column: 1;
    grid-row: 1;
  }

  #exclusiveEngravingPage .exclusive-engraving-service img {
    width: 100%;
    height: auto;
    object-fit: initial;
  }

  #exclusiveEngravingPage .exclusive-engraving-service div {
    width: 100%;
    max-width: none;
  }

  #exclusiveEngravingPage .exclusive-engraving-service h2 {
    margin: 0 0 12px;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: .5px;
  }

  #exclusiveEngravingPage .exclusive-engraving-service p {
    margin: 0 0 9px;
    font-size: 8px;
    line-height: 1.85;
    letter-spacing: .15px;
    color: #777;
    text-align: justify;
    text-align-last: left;
  }

  #exclusiveEngravingPage .exclusive-engraving-service p:last-child {
    margin-bottom: 0;
  }

  #exclusiveEngravingPage .exclusive-engraving-products > h2 {
    font-size: 20px;
  }
}

/* 共同图文编辑器：产品、品牌事件、联合创作与珠宝定制共用图文间距。 */
:is(.content-modules--article, .content-modules--product)
  > :is(.content-module-text, .content-module-caption, p):has(
    + :is(.content-module-image, .content-module-pair, .content-module-grid)
  ) {
  margin-bottom: 0 !important;
}

:is(.content-modules--article, .content-modules--product)
  > :is(.content-module-text, .content-module-caption, p)
  + :is(.content-module-image, .content-module-pair, .content-module-grid) {
  margin-top: 60px !important;
}

:is(.content-modules--article, .content-modules--product)
  > :is(.content-module-image, .content-module-pair, .content-module-grid):has(
    + :is(.content-module-text, .content-module-caption, p)
  ) {
  margin-bottom: 60px !important;
}

:is(.content-modules--article, .content-modules--product)
  > :is(.content-module-image, .content-module-pair, .content-module-grid)
  + :is(.content-module-text, .content-module-caption, p) {
  margin-top: 0 !important;
}

@media (max-width: 900px) {
  :is(.content-modules--article, .content-modules--product)
    > :is(.content-module-text, .content-module-caption, p)
    + :is(.content-module-image, .content-module-pair, .content-module-grid) {
    margin-top: 40px !important;
  }

  :is(.content-modules--article, .content-modules--product)
    > :is(.content-module-image, .content-module-pair, .content-module-grid):has(
      + :is(.content-module-text, .content-module-caption, p)
    ) {
    margin-bottom: 40px !important;
  }
}

@media (min-width: 901px) {
  #exclusiveEngravingPage .exclusive-engraving-intro p .exclusive-engraving-mobile-break {
    display: none;
  }
}

/* 联合创作 CMS：集合卡片与所有详情共用同一套动态模板。 */
#brandCoCreationPage .co-creation-hero picture,
#brandCoCreationDetailPage .co-detail-hero picture {
  display: block;
  width: 100%;
  height: 100%;
}

#brandCoCreationPage .co-creation-hero picture > img,
#brandCoCreationDetailPage .co-detail-hero picture > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#brandCoCreationPage .collaboration-card > picture {
  display: block;
  width: 100%;
}

#brandCoCreationPage .collaboration-card > picture > img {
  display: block;
  width: 100%;
}

#brandCoCreationPage .collaboration-status,
#brandCoCreationDetailPage .collaboration-status {
  grid-column: 1 / -1;
  width: 100%;
  margin: 0;
  padding: 80px 20px;
  color: #8a8a8a;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: .4px;
  text-align: center;
}

#brandCoCreationDetailPage .co-detail-hero {
  height: auto;
  aspect-ratio: 10 / 3;
}

#brandCoCreationDetailPage .collaboration-detail-content > .content-module,
#brandCoCreationDetailPage .collaboration-detail-content > .content-module-more {
  margin-top: 0;
  margin-bottom: 0;
}

#brandCoCreationDetailPage .collaboration-detail-content > .content-module + .content-module {
  margin-top: 60px;
}

#brandCoCreationDetailPage .collaboration-detail-content > .content-module + .content-module-more {
  margin-top: 100px;
}

#brandCoCreationDetailPage .collaboration-detail-head {
  width: 100%;
  max-width: none;
  margin-bottom: 0;
}

#brandCoCreationDetailPage .collaboration-detail-heading {
  color: #18181a;
  font-family: SerifCN, "Source Han Serif SC", "Songti SC", "STSong", serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .25px;
}

#brandCoCreationDetailPage .collaboration-detail-copy,
#brandCoCreationDetailPage .collaboration-detail-list,
#brandCoCreationDetailPage blockquote.collaboration-detail-copy {
  color: #8a8a8a;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 2.1;
  letter-spacing: .7px;
}

#brandCoCreationDetailPage blockquote.collaboration-detail-copy {
  padding-left: 24px;
  border-left: 1px solid #d7d7d7;
}

#brandCoCreationDetailPage .collaboration-detail-list {
  padding-left: 1.4em;
}

#brandCoCreationDetailPage .collaboration-detail-media {
  margin: 0;
}

#brandCoCreationDetailPage .collaboration-detail-media > img,
#brandCoCreationDetailPage .collaboration-detail-grid img {
  display: block;
  width: 100%;
  height: auto;
}

#brandCoCreationDetailPage .collaboration-detail-media--full {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

#brandCoCreationDetailPage .collaboration-detail-grid {
  display: grid;
  gap: 22px;
}

#brandCoCreationDetailPage .collaboration-detail-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#brandCoCreationDetailPage .collaboration-detail-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#brandCoCreationDetailPage .collaboration-detail-more {
  margin-right: auto;
  margin-left: auto;
}

@media (max-width: 900px) {
  #jewelryCustomDetailPage
    .co-detail-hero.jewelry-customization-detail-hero--mobile-hidden {
    display: none;
  }

  #brandCoCreationDetailPage .co-detail-hero.collaboration-detail-hero--mobile-hidden {
    display: none;
  }

  #brandCoCreationDetailPage .co-detail-hero {
    aspect-ratio: 1 / 1;
  }

  #brandCoCreationDetailPage .collaboration-detail-content > .content-module + .content-module {
    margin-top: 40px;
  }

  #brandCoCreationDetailPage .collaboration-detail-content > .content-module + .content-module-more {
    margin-top: 80px;
  }

  #brandCoCreationDetailPage .collaboration-detail-heading {
    font-size: 19px;
  }

  #brandCoCreationDetailPage .collaboration-detail-copy,
  #brandCoCreationDetailPage .collaboration-detail-list,
  #brandCoCreationDetailPage blockquote.collaboration-detail-copy {
    font-size: 13px;
    line-height: 2;
    letter-spacing: .45px;
  }

  #brandCoCreationDetailPage .collaboration-detail-grid--2,
  #brandCoCreationDetailPage .collaboration-detail-grid--3 {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  #brandCoCreationPage .collaboration-status,
  #brandCoCreationDetailPage .collaboration-status {
    padding: 56px 20px;
    font-size: 13px;
  }
}

.drawer-home-row {
  display: none;
}

@media (min-width: 761px) {
  .drawer-home-row {
    display: block;
  }

  .drawer-home {
    text-decoration: none;
  }

  .drawer .drawer-secondary {
    top: 72px;
  }

  .drawer .drawer-primary span {
    top: 50%;
    transform: translate(-50%, -54%);
  }

  .drawer .drawer-secondary--brand {
    padding-top: 0;
  }

  .drawer .drawer-secondary--brand > .drawer-secondary-link {
    display: flex;
    align-items: center;
    height: 42px;
    margin: 0 0 30px;
  }
}

@media (max-width: 760px) {
  .site-header .brand {
    transform: translate(-50%, -50%);
  }

  .site-header #menuToggle {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }

  .drawer {
    inset: 0 auto 0 0;
    transform: translateX(-100%);
  }

  .drawer.is-open {
    transform: translateX(0);
  }

  .drawer .close-button {
    right: auto;
    left: 76px;
  }

  .drawer .drawer-list {
    padding-right: 0;
    padding-left: 76px;
  }

  .drawer .drawer-menu {
    transform: translateX(20px);
  }

  .drawer .drawer-home-row {
    display: block;
  }

  .drawer .drawer-home {
    text-decoration: none;
  }

  .drawer .drawer-primary {
    justify-content: flex-start;
    margin-right: auto;
    margin-left: 20px;
    text-align: left;
  }

  .drawer .drawer-primary span {
    right: auto;
    left: 72px;
    transform: translateX(-50%);
  }

  .drawer .drawer-secondary {
    top: 72px;
    right: auto;
    left: 124px;
    text-align: left;
  }

  .drawer .drawer-secondary-link,
  .drawer .drawer-secondary-title,
  .drawer .drawer-tertiary,
  .drawer .drawer-tertiary a {
    text-align: left;
  }

  .drawer .drawer-secondary-link,
  .drawer .drawer-secondary-title {
    justify-content: flex-start;
  }

  .drawer .drawer-secondary--brand {
    padding-top: 0;
  }

  .drawer .drawer-secondary--brand > .drawer-secondary-link {
    display: flex;
    align-items: center;
    height: 42px;
    margin: 0 0 30px;
  }

  .drawer .drawer-secondary--gift > .drawer-secondary-group > .drawer-secondary-title {
    justify-content: flex-start;
    text-align: left;
  }
}

@media (max-width: 700px) {
  .drawer .close-button {
    top: 29px;
    right: auto;
    left: 25px;
    width: 44px;
    height: 44px;
  }

  .drawer .close-button::before,
  .drawer .close-button::after {
    top: 21px;
    left: 8px;
  }

  .drawer .drawer-list {
    padding-right: 0;
    padding-left: 30px;
  }

  .drawer .drawer-primary span {
    left: 72px;
  }

  .drawer .drawer-secondary {
    top: 64px;
    right: auto;
    left: 125px;
  }

  .drawer .drawer-secondary--brand > .drawer-secondary-link {
    margin-bottom: 22px;
  }
}

.brand-timeline .brand-story-more::after,
.brand-timeline .brand-story-more::before {
  content: none;
}

.brand-timeline .brand-timeline-copy {
  width: calc(100vw - 112px);
  max-width: 1620px;
  margin-left: 56px;
}

.brand-timeline .brand-timeline-copy h2 {
  margin-bottom: 62px;
  font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 2px;
  color: #18181a;
}

.brand-timeline .brand-timeline-copy p {
  max-width: none;
  margin-bottom: 52px;
  font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.85;
  letter-spacing: 1px;
  color: #6f6a65;
}

.brand-timeline .brand-timeline-copy p:last-child {
  margin-bottom: 0;
}

/* Brand development review: match the design draft layout. */
.brand-timeline .timeline-grid {
  width: min(1920px, calc(100vw - clamp(96px, 8vw, 180px))) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: clamp(46px, 3vw, 72px) !important;
  row-gap: 132px !important;
  align-items: start !important;
}

.brand-timeline .timeline-grid > article {
  width: 100% !important;
  margin: 0 !important;
}

.brand-timeline .timeline-grid > article:nth-child(3) {
  grid-column: 2 !important;
}

.brand-timeline .timeline-media {
  width: 100% !important;
  aspect-ratio: 1.34 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.brand-timeline .timeline-media img,
.brand-timeline .timeline-media video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.brand-timeline .timeline-video-controls {
  height: 24px !important;
  font-size: 11px !important;
}

.brand-timeline .timeline-grid h3 {
  margin: 28px 0 0 !important;
  font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
  font-size: 22px !important;
  line-height: 32px !important;
  font-weight: 400 !important;
  letter-spacing: 1px !important;
  color: #18181a !important;
}

.brand-timeline .timeline-grid > article p {
  width: min(100%, 680px) !important;
  max-width: 680px !important;
  margin: 32px 0 0 !important;
  font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
  font-size: 13px !important;
  line-height: 26px !important;
  font-weight: 300 !important;
  letter-spacing: 0.4px !important;
  color: #7a7a7a !important;
}

.brand-timeline .timeline-grid > article p + p {
  margin-top: 22px !important;
}

.brand-timeline .brand-story-more {
  display: block !important;
  width: max-content !important;
  margin: 118px auto 0 !important;
  padding: 20px 0 1px !important;
  border-bottom: 1px solid currentColor !important;
  color: #909090 !important;
  font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
  font-size: 18px !important;
  font-weight: 300 !important;
  line-height: 22px !important;
  letter-spacing: 2px !important;
  text-decoration: none !important;
  appearance: none !important;
  background: transparent !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  cursor: pointer !important;
  transform: none !important;
}

.brand-timeline .brand-story-more-wrap {
  text-align: center !important;
}

.brand-story-page .brand-history-review-layout-v4 .brand-history-review-more-v4 {
  margin-top: 0 !important;
}

.brand-story-page .brand-history-review-layout-v4 .brand-history-review-more-wrap-v4 {
  margin-top: 99px !important;
  margin-bottom: 15px !important;
}

.brand-timeline .brand-story-more::before,
.brand-timeline .brand-story-more::after {
  display: none !important;
  content: none !important;
}

.brand-story-page .brand-timeline .timeline-grid > article.timeline-card--extra[hidden] {
  display: none !important;
}

.brand-story-page .brand-timeline.brand-history-review-expanded-v4 .timeline-grid > article.timeline-card--extra {
  display: block !important;
}

@media (max-width: 900px) {
  .brand-timeline .timeline-grid {
    width: min(100% - 32px, 560px) !important;
    grid-template-columns: 1fr !important;
    row-gap: 72px !important;
  }

  .brand-timeline .timeline-grid > article:nth-child(3) {
    grid-column: 1 !important;
  }

  .brand-timeline .brand-story-more {
    margin-top: 72px !important;
    font-size: 15px !important;
  }
}

/* Brand development review intro: align to the supplied design crop. */
@media (min-width: 901px) {
  .brand-story-page .brand-values {
    padding-top: 84px !important;
  }

  .brand-story-page .brand-values-title {
    transform: translateY(10px) !important;
  }

  .brand-story-page .brand-value-grid {
    width: calc(100vw - ((clamp(38px, 2.7vw, 56px) + 1.5px) * 2)) !important;
    max-width: none !important;
  }

  .brand-story-page .brand-value-grid article {
    justify-items: center !important;
  }

  .brand-story-page .brand-value-grid article h3,
  .brand-story-page .brand-value-grid article p {
    width: 100% !important;
    text-align: center !important;
    transform: translateX(0) !important;
  }

  .brand-story-page .brand-timeline {
    padding-top: 134px !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy {
    width: min(1280px, calc(100vw - 92px)) !important;
    max-width: none !important;
    margin: 0 0 0 calc(clamp(38px, 2.7vw, 56px) - 1px) !important;
    text-align: left !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy h2 {
    margin: 0 0 54px !important;
    font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
    font-size: 34px !important;
    line-height: 1.28 !important;
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    color: #18181a !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy p {
    max-width: none !important;
    margin: 0 !important;
    font-family: Harmony, "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
    font-size: 15px !important;
    line-height: 2.05 !important;
    font-weight: 300 !important;
    letter-spacing: 0.4px !important;
    color: #7f7f7f !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy p + p {
    margin-top: 46px !important;
    margin-bottom: 25px !important;
    transform: translateY(-18px) !important;
  }
}

/* Home page mobile layout: matched to the supplied 1-mobile-home design. */
.gift-mobile-link {
  display: none !important;
}

.design-stage-footer {
  display: none;
}

.mobile-footer-inquiry-button {
  display: none;
}

body.is-real-home .service-icons img {
  opacity: .4;
}

/* Published homepage content keeps the current visual system while replacing media safely. */
.home-hero > .home-hero-slide--cms {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.home-hero > .home-hero-slide--cms.is-active {
  pointer-events: auto;
}

.home-hero > .home-hero-slide--cms picture,
.home-hero > .home-hero-slide--cms picture img,
.home-hero > video.home-hero-slide--cms {
  display: block;
  width: 100%;
  height: 100%;
}

.home-hero > .home-hero-slide--cms picture img,
.home-hero > video.home-hero-slide--cms {
  object-fit: cover;
  object-position: center center;
}

.home-hero::after {
  pointer-events: none;
}

.home-hero > .hero-copy {
  pointer-events: none;
}

.home-hero > .hero-copy > a,
.home-hero > .hero-copy .home-hero-dots,
.home-hero > .hero-copy .home-hero-dots > button {
  pointer-events: auto;
}

.splash-media-image,
.craft-video .home-brand-media,
.craft-video > video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.splash-media-image {
  position: absolute;
  inset: 0;
}

.gift-band::before {
  background-image: linear-gradient(rgba(48,47,45,.74),rgba(48,47,45,.74)), var(--home-gift-bg, url("./网站素材图/1-网站首页素材图/包装红色套装图（已修图） 拷贝 2.jpg"));
}

.service-icons {
  grid-template-columns: repeat(var(--home-service-count, 4), minmax(0, 1fr));
}

@media (min-width: 901px) {
  body.is-real-home .purchase-copy a {
    color: #777;
    font-size: 15px;
  }

  body.is-real-home .home-scroll-arrow {
    position: relative;
    z-index: 3;
    display: none;
    width: 0;
    height: 0;
    margin: 0 auto;
    transform: translateY(30px);
    pointer-events: none;
  }

  body.is-real-home .home-scroll-arrow::before,
  body.is-real-home .home-scroll-arrow::after {
    content: "";
    position: absolute;
    left: 0;
  }

  body.is-real-home .home-scroll-arrow::before {
    top: -23px;
    height: 105px;
    border-left: 2px solid #dedede;
  }

  body.is-real-home .home-scroll-arrow::after {
    top: 81px;
    width: 34px;
    border-top: 2px solid #dedede;
    transform: rotate(-45deg);
    transform-origin: left center;
  }
}

/* Temporarily disable the opening animation on mobile until release preparation. */
@media (max-width: 900px) {
  .splash {
    display: none !important;
  }

  body.is-real-home .home-hero,
  body.is-real-home .feature-product {
    touch-action: pan-y;
  }
}

@media (max-width: 900px) {
  .design-stage:not([hidden]) + .design-stage-footer,
  .category-view:not([hidden]) ~ .design-stage-footer {
    display: block;
  }

  body.is-real-home .site-header {
    padding: 0 18px;
  }

  body.is-real-home .home-hero {
    height: 680px;
  }

  body.is-real-home .home-hero img {
    object-position: center center;
  }

  body.is-real-home .home-hero .hero-copy {
    position: absolute;
    inset: 0;
    transform: none;
  }

  body.is-real-home .home-hero .hero-copy > a {
    position: absolute;
    left: 50%;
    bottom: 76px;
    display: inline-block;
    margin: 0;
    padding-bottom: 5px;
    color: rgba(255, 255, 255, .66);
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 2px;
    line-height: 1;
    transform: translateX(-50%);
  }

  body.is-real-home .home-hero-dots {
    position: absolute;
    left: 50%;
    bottom: 25px;
    gap: 13px;
    transform: translateX(-50%);
  }

  body.is-real-home .home-hero-dot {
    width: 4px;
    height: 4px;
  }

  body.is-real-home .belief-section {
    height: 620px;
    padding: 0 20px;
  }

  body.is-real-home .belief-inner {
    max-width: 335px;
    gap: 8px;
  }

  body.is-real-home .belief-inner p,
  body.is-real-home .belief-inner h2 {
    font-size: 14px !important;
    font-weight: 300;
    line-height: 1.85 !important;
    letter-spacing: .5px;
  }

  body.is-real-home .belief-inner a.brand-link {
    margin-top: 84px;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 2px;
  }

  body.is-real-home .belief-inner a.brand-link::after {
    content: " >>>";
  }

  body.is-real-home .craft-video,
  body.is-real-home .craft-video img {
    height: 230px;
  }

  body.is-real-home .craft-video img {
    object-position: center center;
  }

  body.is-real-home .story-strip {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 58px;
    min-height: 0;
    padding: 83px 0 81px 20px;
    align-items: start;
  }

  body.is-real-home .section-intro {
    transform: none;
  }

  body.is-real-home .section-intro p,
  body.is-real-home .section-intro h2 {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.65;
  }

  body.is-real-home .section-intro .section-kicker {
    transform: none;
  }

  body.is-real-home .section-intro h2 {
    margin: 0 0 28px;
  }

  body.is-real-home .section-intro a.brand-link {
    margin-top: 0;
    font-size: 13px;
    line-height: 1;
  }

  body.is-real-home .section-intro a.brand-link::before {
    content: "探索更多";
    font-size: 13px;
  }

  body.is-real-home .section-intro a.brand-link {
    font-size: 0;
  }

  body.is-real-home .section-intro a.brand-link::after {
    content: " >>>";
    font-size: 13px;
  }

  body.is-real-home .story-carousel {
    width: 100%;
    transform: none;
  }

  body.is-real-home .story-cards {
    gap: 14px;
  }

  body.is-real-home .story-cards::after {
    content: "";
    flex: 0 0 6px;
  }

  body.is-real-home .story-cards a {
    flex: 0 0 238px;
    aspect-ratio: 769 / 1330;
  }

  body.is-real-home .story-cards span {
    top: 34px;
    font-size: 15px;
  }

  body.is-real-home .story-controls {
    grid-template-columns: 26px minmax(0, 1fr) 26px;
    gap: 18px;
    width: calc(100% - 20px);
    margin: 48px 0 0;
  }

  body.is-real-home .story-arrow {
    font-size: 30px;
  }

  body.is-real-home .series-section {
    display: flex;
    flex-direction: column;
    padding: 0 0 120px;
  }

  body.is-real-home .center-title {
    gap: 14px;
    margin-bottom: 26px;
  }

  body.is-real-home .center-title p {
    color: #8e8984;
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 2px;
  }

  body.is-real-home .center-title h2 {
    color: #18181a;
    font-size: 0;
  }

  body.is-real-home .center-title h2::after {
    content: attr(data-mobile-title);
    font-family: SerifCN, serif;
    font-size: 25px;
    font-weight: 400;
    letter-spacing: 2px;
  }

  body.is-real-home .feature-product {
    --feature-main: calc(100vw - 52px);
    width: 100%;
    margin: 0 0 46px;
    transform: none;
    overflow: hidden;
  }

  body.is-real-home .feature-track {
    height: 535px;
  }

  body.is-real-home .feature-main {
    object-position: center center;
  }

  body.is-real-home .feature-side {
    display: none;
  }

  body.is-real-home .feature-arrow {
    display: none;
  }

  body.is-real-home .feature-prev {
    left: 8px;
  }

  body.is-real-home .feature-next {
    right: 8px;
  }

  body.is-real-home .series-product-title {
    margin: 0 0 40px;
    font-size: 0;
  }

  body.is-real-home .series-product-title::after {
    content: "系列作品";
    display: inline-block;
    padding-bottom: 5px;
    border-bottom: 1px solid currentColor;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 2px;
  }

  body.is-real-home .product-row {
    display: grid;
    grid-template-rows: repeat(2, auto);
    grid-auto-flow: column;
    grid-auto-columns: 42vw;
    gap: 11.2vw 5.333vw;
    width: 89.333vw;
    max-width: none;
    margin: 0 auto;
    padding: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  body.is-real-home .product-row::-webkit-scrollbar {
    display: none;
  }

  body.is-real-home .product-row a {
    min-width: 42vw;
    width: 42vw;
    scroll-snap-align: start;
  }

  body.is-real-home .product-row img {
    height: 132px;
  }

  body.is-real-home .product-row b {
    margin-top: 22px;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.45;
  }

  body.is-real-home .product-row span {
    margin-top: 5px;
    font-size: 11px;
    font-weight: 300;
  }

  body.is-real-home .series-product-progress {
    width: 140px;
    margin-top: 60px;
  }

  body.is-real-home .series-more-link {
    display: none;
  }

  body.is-real-home .gift-band {
    min-height: 350px;
    padding: 58px 20px 54px;
  }

  body.is-real-home .gift-band::before {
    background-size: auto 100%;
    background-position: center center;
    opacity: .82;
  }

  body.is-real-home .gift-copy {
    max-width: 335px;
  }

  body.is-real-home .gift-copy p {
    margin-bottom: 12px;
    font-size: 13px;
  }

  body.is-real-home .gift-copy h2 {
    margin-bottom: 22px;
    font-size: 25px;
  }

  body.is-real-home .gift-copy span {
    font-size: 13px;
    line-height: 2;
  }

  body.is-real-home .gift-mobile-link {
    display: inline-block !important;
    margin-top: 54px;
    color: #f1eee9;
    font-size: 13px;
    letter-spacing: 1px;
  }

  body.is-real-home .gift-images {
    display: none;
  }

  body.is-real-home .purchase-section {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 64px;
    min-height: 0;
    padding: 98px 20px 58px;
  }

  body.is-real-home .purchase-copy h2 {
    margin-bottom: 22px;
    font-size: 25px;
    font-weight: 400;
  }

  body.is-real-home .purchase-copy p {
    font-size: 15px;
    line-height: 1.9;
    letter-spacing: 1.5px;
  }

  body.is-real-home .purchase-copy a {
    margin-top: 82px;
    color: #18181a;
    font-size: 12px;
  }

  body.is-real-home .service-icons {
    display: grid;
    grid-template-columns: repeat(var(--home-service-count, 4), minmax(0, 1fr));
    gap: 12px;
    align-items: start;
  }

  body.is-real-home .service-icons a {
    gap: 16px;
    opacity: .6;
  }

  body.is-real-home .service-icons img {
    width: 42px;
    height: 42px;
  }

  body.is-real-home .service-icons span {
    font-size: 10px;
    line-height: 1.45;
    letter-spacing: .2px;
  }

  .home-footer .footer-grid {
    position: relative;
    display: block;
    width: calc(100vw - 40px);
    margin: 0 auto;
    padding: 34px 0 20px;
    border-bottom: 0;
  }

  .home-footer .footer-grid > div {
    position: relative;
    border-bottom: 1px solid #dedbd6;
    text-align: left;
  }

  .home-footer .footer-grid > div:nth-child(3) {
    display: none;
  }

  .home-footer .footer-grid h3 {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 58px;
    margin: 0;
    padding-right: 32px;
    font-size: 15px;
    font-weight: 400;
    cursor: pointer;
  }

  .home-footer .footer-grid h3::after {
    content: "+";
    position: absolute;
    right: 2px;
    top: 50%;
    color: #77716a;
    font-size: 21px;
    font-weight: 200;
    line-height: 1;
    transform: translateY(-52%);
  }

  .home-footer .footer-grid > div.is-mobile-footer-open h3::after {
    content: "−";
  }

  .home-footer .footer-grid a,
  .home-footer .footer-grid p,
  .home-footer .footer-newsletter,
  .home-footer .social-icons {
    display: none;
  }

  .home-footer .footer-grid > div.is-mobile-footer-open > a {
    display: block;
    margin: 0 0 16px;
    color: #77716a;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6;
  }

  .home-footer .footer-grid > div.is-mobile-footer-open > a:last-of-type {
    margin-bottom: 18px;
  }

  .home-footer .footer-grid > div.is-mobile-footer-open .social-icons {
    display: grid;
    grid-template-columns: repeat(5, 28px);
    gap: 23px;
    padding: 2px 0 20px;
  }

  .home-footer .footer-grid > div.is-mobile-footer-open .social-icons img {
    width: 28px;
    height: 28px;
  }

  .home-footer .mobile-footer-inquiry-button {
    display: none;
    margin: 0 0 20px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #77716a;
    font-family: Harmony,"PingFang SC","Microsoft YaHei",sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: 1px;
  }

  .home-footer .footer-grid > div.is-mobile-footer-open .mobile-footer-inquiry-button {
    display: block;
  }

  .home-footer .footer-brand {
    display: none;
  }

  .home-footer .footer-red {
    height: auto;
    min-height: 93px;
    padding: 34px 20px 39px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 3px;
    background: #f7f7f7;
    color: #aaa39d;
    text-align: center;
    font-size: 10px;
    line-height: 1.6;
  }

  .home-footer .footer-red > * {
    margin: 0;
  }
}

.home-footer .footer-red a {
  color: inherit;
  text-decoration: none;
}

@media (min-width: 901px) {
  .home-footer .footer-red {
    justify-content: flex-start;
    gap: 18px;
  }

  .home-footer .footer-red > a:last-child {
    margin-left: auto;
  }
}

/* Keep the supplied 375px portrait design proportional on wider phones. */
@media (max-width: 900px) and (orientation: portrait) {
  body.is-real-home .home-hero {
    height: 181.333vw;
  }

  #brandCoCreationPage .co-creation-hero {
    height: 181.333vw;
  }

  body.is-real-home .home-hero .hero-copy > a {
    bottom: calc(30.933vw - 40px);
  }

  body.is-real-home .home-hero-dots {
    bottom: 6.667vw;
    gap: 3.467vw;
  }

  body.is-real-home .belief-section {
    height: calc(182.4vw - 60px);
    padding: 0 5.333vw;
  }

  body.is-real-home .belief-inner {
    max-width: 89.333vw;
    gap: 2.133vw;
  }

  body.is-real-home .belief-inner a.brand-link {
    margin-top: 22.4vw;
  }

  body.is-real-home .craft-video,
  body.is-real-home .craft-video img {
    height: 63.2vw;
  }

  body.is-real-home .story-strip {
    gap: 15.467vw;
    padding: calc(19.467vw + 10px) 0 21.6vw 5.333vw;
  }

  body.is-real-home .section-intro h2 {
    margin-bottom: 7.467vw;
  }

  body.is-real-home .story-cards {
    gap: 3.733vw;
  }

  body.is-real-home .story-cards::after {
    flex-basis: 1.6vw;
  }

  body.is-real-home .story-cards a {
    flex-basis: 63.467vw;
  }

  body.is-real-home .story-cards span {
    top: 9.067vw;
  }

  body.is-real-home .story-controls {
    gap: 4.8vw;
    width: calc(100% - 5.333vw);
    margin-top: 12.8vw;
  }

  body.is-real-home .series-section {
    padding: max(0px, calc(16vw - 60px)) 0 calc(15.733vw + 40px);
  }

  body.is-real-home .center-title {
    gap: 3.733vw;
    margin-bottom: 6.933vw;
  }

  body.is-real-home .feature-product {
    --feature-main: calc(100vw - 40px);
    margin-bottom: 12.267vw;
  }

  body.is-real-home .feature-track {
    height: 165.63vw;
  }

  body.is-real-home .feature-prev {
    left: 2.133vw;
  }

  body.is-real-home .feature-next {
    right: 2.133vw;
  }

  body.is-real-home .series-product-title {
    margin-bottom: 10.667vw;
  }

  body.is-real-home .product-row {
    gap: 11.2vw 5.333vw;
    width: 89.333vw;
  }

  body.is-real-home .product-row img {
    height: 35.2vw;
  }

  body.is-real-home .product-row b {
    margin-top: 5.867vw;
  }

  body.is-real-home .series-product-progress {
    width: 37.333vw;
    margin-top: 16vw;
  }

  body.is-real-home .gift-band {
    min-height: 93.333vw;
    padding: 15.467vw 5.333vw 14.4vw;
  }

  body.is-real-home .gift-copy {
    max-width: 89.333vw;
  }

  body.is-real-home .gift-copy p {
    margin-bottom: 3.2vw;
  }

  body.is-real-home .gift-copy h2 {
    margin-bottom: 5.867vw;
  }

  body.is-real-home .gift-mobile-link {
    margin-top: 14.4vw;
  }

  body.is-real-home .purchase-section {
    gap: 17.067vw;
    padding: calc(18.133vw + 30px) 5.333vw 15.467vw;
  }

  body.is-real-home .purchase-copy h2 {
    margin-bottom: 5.867vw;
  }

  body.is-real-home .purchase-copy a {
    margin-top: 21.867vw;
  }

  body.is-real-home .service-icons {
    gap: 3.2vw;
  }

  body.is-real-home .service-icons a {
    gap: 4.267vw;
  }

  body.is-real-home .service-icons img {
    width: 11.2vw;
    height: 11.2vw;
  }

  .home-footer .footer-grid {
    width: 89.333vw;
    padding: 14.4vw 0 calc(10.667vw - 20px);
  }

  .home-footer .footer-red {
    min-height: 24.8vw;
    padding: calc(3.733vw + 20px) 5.333vw 10.4vw;
  }
}

/* Add breathing room around the "more brand history" control without changing its line spacing. */
.brand-story-page .brand-history-review-layout-v4 .brand-history-review-more-wrap-v4 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.brand-story-page .brand-history-review-layout-v4 .brand-history-review-more-wrap-v4 {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
  text-align: center !important;
}

.brand-story-page .brand-history-review-layout-v4 .brand-history-review-more-v4 {
  display: inline-block !important;
  width: max-content !important;
  margin: 0 auto !important;
  padding: 0 0 5px !important;
  border-bottom: 1px solid currentColor !important;
  color: rgb(170, 163, 157) !important;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  line-height: 13.8px !important;
  letter-spacing: 1.2px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

@media (min-width: 901px) and (max-width: 1800px) {
  .brand-story-page .brand-value-grid article {
    grid-template-rows: max-content max-content auto;
  }
}

@media (min-width: 901px) and (max-width: 1280px) {
  .brand-story-page .brand-value-grid {
    width: calc(100vw - 80px) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap: 72px 48px !important;
  }

  .brand-story-page .brand-value-grid article {
    grid-template-rows: max-content max-content auto !important;
  }

  .brand-story-page .brand-value-grid article h3 {
    margin-bottom: 18px !important;
  }

  .brand-story-page .brand-value-grid article p {
    margin-bottom: 32px !important;
  }

  .delivery-policy-content,
  .join-content {
    width: calc(100vw - 80px);
  }

  .delivery-policy-intro {
    margin-left: 32px;
    margin-right: 32px;
  }

  .delivery-policy-section {
    grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
    gap: 64px;
    padding-left: 32px;
    padding-right: 32px;
  }

  .join-openings,
  .join-process {
    grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
    gap: 80px;
    padding-left: 32px;
    padding-right: 32px;
  }

  .delivery-policy-copy,
  .join-openings > p,
  .join-process > p {
    font-size: 14px;
  }
}

@media (min-width: 901px) and (max-width: 1250px) {
  .product-detail-main {
    width: calc(100vw - 80px);
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .62fr);
    column-gap: 48px;
  }

  .product-detail-gallery {
    width: 100%;
  }

  .product-detail-window {
    height: clamp(420px, 48vw, 560px);
  }

  .product-detail-slider {
    grid-template-columns: 32px minmax(220px, 1fr) 32px;
    gap: 18px;
  }

  .product-detail-note {
    margin-top: 160px;
  }

  .product-story-copy,
  .product-story-wide,
  .product-story-pair {
    width: calc(100vw - 80px);
    max-width: 920px;
  }

  .product-story-pair {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-story-pair img {
    width: 100%;
    height: auto;
  }
}

/* Desktop hero guardrails: preserve the current phone/standard-PC layouts
   while limiting height jumps on narrow and ultra-wide screens. */
@media (min-width: 901px) and (max-width: 1280px) {
  .home-hero,
  .brand-story-hero,
  .co-creation-hero,
  .designer-plan-hero,
  .series-detail-hero,
  .all-series-hero,
  .jewelry-custom-hero,
  .custom-box-hero,
  .gift-box-hero,
  .exclusive-engraving-hero {
    height: clamp(700px, 58vw, 820px);
  }
}

@media (min-width: 1801px) {
  .home-hero,
  .brand-story-hero,
  .co-creation-hero,
  .designer-plan-hero,
  .series-detail-hero,
  .all-series-hero,
  .jewelry-custom-hero,
  .custom-box-hero,
  .gift-box-hero,
  .exclusive-engraving-hero {
    height: clamp(820px, 49.8438vw, 1040px);
  }
}

@media (min-width: 901px) and (max-width: 1280px) {
  #seriesNewDetailPage > .series-detail-hero {
    height: clamp(700px, 58vw, 820px);
  }
}

@media (min-width: 1801px) {
  #seriesNewDetailPage > .series-detail-hero {
    height: clamp(820px, 49.8438vw, 1040px);
  }
}

/* 新作品集合页与系列内页 CMS 接入。 */
#seriesNewPage .series-new-image picture,
#seriesNewDetailPage > .series-detail-hero picture {
  display: block;
  width: 100%;
  height: 100%;
}

#seriesNewPage .series-new-status {
  min-height: 240px;
  margin: 0;
  padding: 80px 0;
  color: #999;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.5px;
  text-align: center;
}

/* 所有珠宝及分类页 CMS 接入。 */
#allJewelryPage > .series-detail-hero picture {
  display: block;
  width: 100%;
  height: 100%;
}

#allJewelryPage .all-jewelry-status {
  grid-column: 1 / -1;
  min-height: 240px;
  margin: 0;
  padding: 80px 0;
  color: #999;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.5px;
  text-align: center;
}

/* 礼赠场景页面 CMS 接入。 */
#allSeriesDetailPage > .series-detail-hero picture {
  display: block;
  width: 100%;
  height: 100%;
}

#allSeriesDetailPage .gift-scenario-status {
  grid-column: 1 / -1;
  min-height: 240px;
  margin: 0;
  padding: 80px 0;
  color: #999;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.5px;
  text-align: center;
}

/* Brand story mobile sample page: preserve hero, origin and timeline cards. */
@media (max-width: 900px) {
  .brand-story-page .brand-origin p {
    width: 100%;
    font-size: 15px;
    line-height: 32.4px;
    text-align: justify;
    text-justify: inter-ideograph;
    text-align-last: center;
  }

  .brand-story-page .brand-copy-mobile {
    display: inline;
  }

  .brand-story-page .brand-copy-desktop {
    display: none;
  }

  .brand-story-page .brand-origin h2 {
    font-weight: 450;
  }

  .brand-story-page .brand-philosophy {
    min-height: 0;
    padding: 54px 20px 76px;
    background-position: center center;
  }

  .brand-story-page .brand-philosophy .brand-text-block {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
  }

  .brand-story-page .brand-philosophy .brand-text-block h2 {
    width: min(100%, 360px);
    margin: 0 0 38px;
    font-size: 20px;
    line-height: 1.65;
    letter-spacing: .45px;
  }

  .brand-story-page .brand-philosophy .brand-text-block h2 br {
    display: none;
  }

  .brand-story-page .brand-philosophy .brand-text-block p {
    width: min(100%, 305px);
    max-width: 305px;
    margin: 0 0 26px;
    font-size: 14px;
    line-height: 2;
    letter-spacing: .2px;
    color: #68645f;
    text-align: justify;
    text-justify: inter-ideograph;
  }

  .brand-story-page .brand-philosophy .brand-text-block p:last-child {
    margin-bottom: 0;
  }

  .brand-story-page .brand-symbol-line {
    width: 100%;
    max-width: 360px;
    margin: 102px auto 0;
    grid-template-columns: 18px minmax(0, 1fr) 22px minmax(0, 1fr) 18px minmax(0, 1fr) 20px;
    gap: 8px;
    transform: translateY(20px);
  }

  .brand-story-page .brand-symbol-line img {
    width: 100%;
    max-width: 22px;
    max-height: 22px;
  }

  .brand-story-page .brand-values {
    min-height: 0;
    padding: 82px 0 96px;
    background-position: center center;
  }

  .brand-story-page .brand-values-title {
    width: calc(100vw - 40px);
    max-width: 560px;
    margin: 0 auto 72px;
  }

  .brand-story-page .brand-values-title h2 {
    margin: 0 0 28px;
    font-size: 20px;
    line-height: 1.35;
  }

  .brand-story-page .brand-values-title p {
    margin: 0 0 44px;
    font-size: 14px;
    line-height: 1.95;
    letter-spacing: .25px;
  }

  .brand-story-page .brand-values-title img {
    width: 25px;
  }

  .brand-story-page .brand-value-grid {
    width: 90.2vw;
    max-width: 560px;
    margin: 0 auto;
    grid-template-columns: 1fr;
    gap: clamp(30px, 8vw, 34.4px);
  }

  .brand-story-page .brand-value-grid article {
    display: grid;
    grid-template-columns: 42% 53.75%;
    grid-template-rows: auto 1fr;
    column-gap: 4.25%;
    align-items: start;
    text-align: left;
  }

  .brand-story-page .brand-value-grid article h3 {
    grid-column: 1;
    grid-row: 1;
    margin: 5px 0 14px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.45;
    letter-spacing: .1px;
  }

  .brand-story-page .brand-value-grid article p {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
    font-size: 9px;
    line-height: 1.86;
    letter-spacing: 0;
    color: #77716a;
  }

  .brand-story-page .brand-value-grid article:nth-child(4) p {
    width: calc(100% + 8px);
  }

  .brand-story-page .brand-value-grid article img {
    grid-column: 2;
    grid-row: 1 / 3;
    width: 100%;
    height: auto;
    aspect-ratio: .58;
    object-fit: cover;
  }

  .brand-story-page .brand-timeline {
    padding-top: 88px;
    padding-bottom: 0 !important;
  }

  .brand-story-page .brand-history-review-layout-v4 .brand-history-review-more-wrap-v4 {
    display: grid !important;
    justify-items: center !important;
    align-content: start !important;
    margin: 0 !important;
    padding: 96px 0 123px !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy {
    width: calc(100vw - 40px);
    max-width: 560px;
    margin: 0 auto 72px;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy h2 {
    margin: 0 0 13px !important;
    font-size: 20px !important;
    line-height: 1.35 !important;
    letter-spacing: .6px !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy p {
    max-width: none !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.95 !important;
    letter-spacing: .2px !important;
    color: #7a7773 !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy p + p {
    margin-top: 25px !important;
  }

  .brand-story-page .brand-timeline .brand-timeline-copy br {
    display: none;
  }

  .brand-story-page .brand-timeline .brand-history-mobile-join {
    display: none;
  }

  .brand-story-page .brand-timeline .timeline-grid {
    margin-top: 60px !important;
  }

  /* Brand history mobile copy: align both text edges while keeping the final line natural. */
  .brand-story-page .brand-timeline .brand-timeline-copy p,
  .brand-story-page .brand-timeline .timeline-grid > article p {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-ideograph;
  }

}

/* Brand values: keep the desktop copy and imagery visually separated. */
@media (min-width: 901px) {
  #designerPlanPage .designer-plan-hero {
    height: auto;
    aspect-ratio: 16 / 7;
  }

  #designerPlanPage .designer-plan-hero picture {
    display: block;
    width: 100%;
    height: 100%;
  }

  #designerPlanPage .designer-plan-grid.designer-plan-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .brand-story-page .brand-value-grid article {
    grid-template-rows: max-content max-content auto !important;
  }

  .brand-story-page .brand-value-grid article h3 {
    margin-bottom: 10px !important;
  }

  .brand-story-page .brand-value-grid article p {
    margin-bottom: 56px !important;
  }
}

#designerPlanPage .designer-plan-copy--cms p {
  white-space: pre-line;
}

#designerPlanPage .designer-plan-copy--cms .designer-plan-copy__mobile {
  display: none;
}

@media (max-width: 900px) {
  #designerPlanPage .designer-plan-copy--has-mobile-intro .designer-plan-copy__desktop-intro,
  #designerPlanPage .designer-plan-copy--has-mobile-invitation .designer-plan-copy__desktop-invitation {
    display: none;
  }

  #designerPlanPage .designer-plan-copy--has-mobile-intro .designer-plan-copy__mobile-intro,
  #designerPlanPage .designer-plan-copy--has-mobile-invitation .designer-plan-copy__mobile-invitation {
    display: block;
  }

  #designerPlanPage .designer-plan-copy--cms .designer-plan-copy__mobile--first {
    margin-top: 0;
  }
}

/* 珠宝定制 CMS：集合页与所有动态详情共用同一套真实内容模板。 */
#jewelryCustomListPage .co-creation-hero picture,
#jewelryCustomDetailPage .co-detail-hero picture {
  display: block;
  width: 100%;
  height: 100%;
}

#jewelryCustomListPage .co-creation-hero picture > img,
#jewelryCustomDetailPage .co-detail-hero picture > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#jewelryCustomListPage .jewelry-customization-card > picture,
#jewelryCustomListPage .jewelry-customization-card > picture > img {
  display: block;
  width: 100%;
}

#jewelryCustomListPage .jewelry-customization-status,
#jewelryCustomDetailPage .jewelry-customization-status {
  grid-column: 1 / -1;
  width: 100%;
  margin: 0;
  padding: 80px 20px;
  color: #8a8a8a;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: .4px;
  text-align: center;
}

#jewelryCustomDetailPage .co-detail-hero {
  height: auto;
  aspect-ratio: 10 / 3;
}

#jewelryCustomDetailPage .jewelry-customization-detail-content > .content-module,
#jewelryCustomDetailPage .jewelry-customization-detail-content > .content-module-more {
  margin-top: 0;
  margin-bottom: 0;
}

#jewelryCustomDetailPage .jewelry-customization-detail-content > .content-module + .content-module {
  margin-top: 60px;
}

#jewelryCustomDetailPage .jewelry-customization-detail-content > .content-module + .content-module-more {
  margin-top: 100px;
}

#jewelryCustomDetailPage .jewelry-customization-detail-head {
  width: 100%;
  max-width: none;
  margin-bottom: 0;
}

#jewelryCustomDetailPage .jewelry-customization-detail-heading {
  color: #18181a;
  font-family: SerifCN, "Source Han Serif SC", "Songti SC", "STSong", serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .25px;
}

#jewelryCustomDetailPage .jewelry-customization-detail-copy,
#jewelryCustomDetailPage .jewelry-customization-detail-list,
#jewelryCustomDetailPage blockquote.jewelry-customization-detail-copy {
  color: #8a8a8a;
  font-family: Harmony, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 2.1;
  letter-spacing: .7px;
}

#jewelryCustomDetailPage blockquote.jewelry-customization-detail-copy {
  padding-left: 24px;
  border-left: 1px solid #d7d7d7;
}

#jewelryCustomDetailPage .jewelry-customization-detail-list {
  padding-left: 1.4em;
}

#jewelryCustomDetailPage .jewelry-customization-detail-media {
  margin: 0;
}

#jewelryCustomDetailPage .jewelry-customization-detail-media > img,
#jewelryCustomDetailPage .jewelry-customization-detail-grid img {
  display: block;
  width: 100%;
  height: auto;
}

#jewelryCustomDetailPage .jewelry-customization-detail-media--full {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

#jewelryCustomDetailPage .jewelry-customization-detail-grid {
  display: grid;
  gap: 22px;
}

#jewelryCustomDetailPage .jewelry-customization-detail-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#jewelryCustomDetailPage .jewelry-customization-detail-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#jewelryCustomDetailPage .jewelry-customization-detail-more {
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 901px) {
  #jewelryCustomListPage .co-creation-hero {
    height: auto;
    aspect-ratio: 16 / 7;
  }
}

@media (max-width: 900px) {
  #jewelryCustomListPage .co-creation-hero {
    height: auto;
    aspect-ratio: auto;
  }

  #jewelryCustomListPage .co-creation-hero picture,
  #jewelryCustomListPage .co-creation-hero picture > img {
    height: auto;
  }

  #jewelryCustomDetailPage .co-detail-hero {
    aspect-ratio: 1 / 1;
  }

  #jewelryCustomDetailPage .jewelry-customization-detail-content > .content-module + .content-module {
    margin-top: 40px;
  }

  #jewelryCustomDetailPage .jewelry-customization-detail-content > .content-module + .content-module-more {
    margin-top: 80px;
  }

  #jewelryCustomDetailPage .jewelry-customization-detail-content > .jewelry-customization-detail-more {
    margin-bottom: 123px;
  }

  #jewelryCustomDetailPage .jewelry-customization-detail-heading {
    font-size: 19px;
  }

  #jewelryCustomDetailPage .jewelry-customization-detail-copy,
  #jewelryCustomDetailPage .jewelry-customization-detail-list,
  #jewelryCustomDetailPage blockquote.jewelry-customization-detail-copy {
    font-size: 13px;
    line-height: 2;
    letter-spacing: .45px;
  }

  #jewelryCustomDetailPage .jewelry-customization-detail-grid--2,
  #jewelryCustomDetailPage .jewelry-customization-detail-grid--3 {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  #jewelryCustomListPage .jewelry-customization-status,
  #jewelryCustomDetailPage .jewelry-customization-status {
    padding: 56px 20px;
    font-size: 13px;
  }
}

/* 产品详情 CMS：每个 slug 读取真实产品、画廊、规格、图文介绍与关联作品。 */
#seriesProductPage .product-detail-gallery--cms .product-detail-slide picture,
#seriesProductPage .product-detail-gallery--cms .product-detail-slide img {
  display: block;
  width: 100%;
  height: 100%;
}

#seriesProductPage .product-detail-gallery--cms .product-detail-slide img {
  object-fit: cover;
}

#seriesProductPage .product-detail-arrow--cms {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

#seriesProductPage .product-detail-slider.is-single .product-detail-track i {
  width: 100% !important;
  transform: translate(0, -1.5px) !important;
}

#seriesProductPage .product-detail-note--cms {
  white-space: pre-line;
}

#seriesProductPage .product-story-copy--cms {
  box-sizing: border-box;
}

#seriesProductPage .product-story-copy--cms > :is(p, blockquote, ol, ul) {
  margin: 0;
  font-family: Harmony, "Microsoft YaHei", sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 28px;
  letter-spacing: .5px;
  color: #737373;
}

#seriesProductPage .product-story-copy--cms > :is(h2, h3, h4, h5, h6) {
  margin: 0 0 42px;
  font-family: SerifCN, "Songti SC", "STSong", serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 1px;
  color: #18181a;
}

#seriesProductPage .product-story-copy--intro > h2 strong {
  font-weight: inherit;
}

#seriesProductPage .product-story-copy--body > :is(h2, h3, h4, h5, h6) {
  margin-bottom: 28px;
}

/* 后台四类共用图文编辑器生成的正文标题统一使用宋体。 */
.event-detail-article > :is(h2, h3, h4, h5, h6) {
  font-family: SerifCN, "Source Han Serif SC", "Songti SC", "STSong", "SimSun", serif;
  font-weight: 500;
}

#seriesProductPage .product-story-copy--cms .product-story-empty-line {
  line-height: 28px;
}

#seriesProductPage .product-story-copy--cms :is(ol, ul) {
  width: max-content;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-left: 1.4em;
  text-align: left;
}

#seriesProductPage .product-story-wide--cms,
#seriesProductPage .product-story-full--cms,
#seriesProductPage .product-story-pair--cms,
#seriesProductPage .product-story-triple--cms {
  box-sizing: border-box;
  opacity: 1;
  filter: none;
  transform: none;
}

#seriesProductPage .product-story-wide--cms,
#seriesProductPage .product-story-full--cms,
#seriesProductPage .product-story-pair--cms,
#seriesProductPage .product-story-triple--cms {
  margin-top: 0;
  margin-bottom: 0;
}

#seriesProductPage .product-story-pair--cms figure,
#seriesProductPage .product-story-triple--cms figure {
  margin: 0;
}

#seriesProductPage .product-story
  > :is(.content-module-image, .content-module-pair, .content-module-grid)
  + :is(.content-module-image, .content-module-pair, .content-module-grid) {
  margin-top: 60px !important;
}

#seriesProductPage .product-story-wide--cms img,
#seriesProductPage .product-story-full--cms img,
#seriesProductPage .product-story-pair--cms img,
#seriesProductPage .product-story-triple--cms img {
  display: block;
  width: 100%;
  height: auto;
  opacity: 1;
  filter: none;
  transform: none;
}

#seriesProductPage .product-story-full--cms {
  width: 100%;
  overflow: hidden;
}

#seriesProductPage .product-story-triple--cms {
  display: grid;
  width: 920px;
  margin-right: auto;
  margin-left: auto;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

#seriesProductPage .product-story-pair--cms {
  margin-right: auto;
  margin-left: auto;
}

#seriesProductPage .product-popular-card--cms picture {
  display: contents;
}

#seriesProductPage .product-popular-card--cms p {
  margin: 0;
  font-family: Harmony, "Microsoft YaHei", sans-serif;
  font-size: 11px;
  font-weight: 300;
  line-height: 1.55;
  letter-spacing: .25px;
  color: #a0a0a0;
}

#seriesProductPage .product-detail-status {
  width: 100%;
  margin: 0;
  padding: 96px 20px;
  color: #8d8d8d;
  font-family: Harmony, "Microsoft YaHei", sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
}

@media (min-width: 901px) and (max-width: 1250px) {
  #seriesProductPage .product-story-triple--cms {
    width: calc(100vw - 80px);
    max-width: 920px;
  }
}

@media (max-width: 900px) {
  #seriesProductPage .product-detail-gallery--cms,
  #seriesProductPage .product-detail-gallery--cms .product-detail-window {
    min-width: 0;
    max-width: 100%;
  }

  #seriesProductPage .product-detail-arrow--cms {
    min-height: 44px;
  }

  #seriesProductPage .product-story-copy--cms > :is(p, blockquote, ol, ul) {
    font-size: 13px;
    line-height: 2.05;
    letter-spacing: .45px;
    color: rgb(138, 138, 138);
  }

  #seriesProductPage .product-story-copy--cms > :is(h2, h3, h4, h5, h6) {
    margin-bottom: 42px;
    font-size: 22px;
  }

  #seriesProductPage .product-story-copy--cms .product-story-empty-line {
    line-height: 2.05;
  }

  #seriesProductPage .product-story-full--cms {
    width: 100%;
  }

  #seriesProductPage .product-story-triple--cms {
    width: calc(100vw - 40px);
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }

  #seriesProductPage .product-story-pair--cms {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
  }

  #seriesProductPage .product-story
    > :is(.content-module-image, .content-module-pair, .content-module-grid)
    + :is(.content-module-image, .content-module-pair, .content-module-grid) {
    margin-top: 40px !important;
  }
}
@media (max-width: 900px) {
  .talu-mobile-banner-hidden {
    display: none !important;
  }

  :is(
    #realHome > .home-hero,
    #brandStoryPage > .brand-story-hero,
    #brandCoCreationPage > .co-creation-hero,
    #brandCoCreationDetailPage > .co-detail-hero,
    #designerPlanPage > .designer-plan-hero,
    #seriesNewDetailPage > .series-detail-hero,
    #allSeriesPage > .all-series-hero,
    #allSeriesDetailPage > .series-detail-hero,
    #allJewelryPage > .series-detail-hero,
    #jewelryCustomListPage > .co-creation-hero,
    #jewelryCustomPage > .jewelry-custom-hero,
    #jewelryCustomDetailPage > .co-detail-hero,
    #contactPage > .contact-hero,
    #joinPage > .join-hero,
    #customBoxPage > .custom-box-hero,
    #giftBoxPage > .gift-box-hero,
    #exclusiveEngravingPage > .exclusive-engraving-hero
  ):not(.talu-primary-media-ready)
    > :is(img, picture, video, .home-hero-slide) {
    visibility: hidden !important;
  }

  #seriesProductPage
    .product-detail-gallery:not(.talu-primary-media-ready)
    > :is(.product-detail-window, .product-detail-slider) {
    visibility: hidden !important;
  }
}
