/* Shared by article/case lists and details; CMS content remains editable. */
.xy-content { --content-ink: #35312f; --content-muted: #706974; --content-link: #574654; }
.xy-content .mainer { color: var(--content-ink); }
.xy-content .mainer a:focus-visible { outline: 2px solid #574654; outline-offset: 4px; }
.xy-content .banner_page .item { height: 220px; }
.xy-content .banner_page2 .item img { width: 100%; height: 220px; object-fit: cover; }
.xy-content .page_about { padding: 32px 0 48px; }
.xy-content .page_tit { margin-bottom: 28px; }
.xy-content .page_tit h1 { font-size: 32px; line-height: 1.5; font-weight: 600; color: var(--content-ink); margin: 20px 0; }
.xy-content .page_tit h1 img { display: none; }
.xy-content .tag_tit ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.xy-content .tag_tit ul li { float: none; margin: 0; }
.xy-content .tag_tit ul li a { padding: 8px 16px; font-size: 15px; }
.xy-content .news_list .wrap { max-width: 1180px; width: calc(100% - 40px); }
.xy-content .news_list ul { width: 100%; }
.xy-content .news_list ul li { margin-bottom: 0; border-bottom: 1px solid #e5dfd8; }
.xy-content .news_list ul li > a { display: flex; flex-direction: row-reverse; align-items: center; gap: 32px; padding: 28px 0; }
.xy-content .news_list .img { float: none; flex: 0 0 32%; margin: 0; }
.xy-content .news_list .img img { width: 100%; height: auto; aspect-ratio: 8 / 5; object-fit: cover; border-radius: 4px; }
.xy-content .news_list .text { flex: 1; min-width: 0; padding: 0; border: 0; }
.xy-content .news_list .clear { display: none; }
.xy-content .news_list h2 { font-size: 23px; line-height: 1.5; font-weight: 600; margin: 0 0 12px; }
.xy-content .news_list h2 span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; white-space: normal; }
.xy-content .news_list .d_text { height: auto; margin: 0 0 12px; font-size: 15px; line-height: 1.8; color: var(--content-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.xy-content .news_list .p_time { font-size: 14px; color: #706974; }
.xy-content .news_list ul li a:hover { background: #fff4e7; }
.xy-content .news_list ul li a:hover .text .d_text, .xy-content .news_list ul li a:hover .text p { color: var(--content-muted); }
.xy-content .news_list ul li a:hover h2 { color: var(--content-link); }
.xy-content .case .case_list { margin-top: 30px; }
.xy-content .case_list ul { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px 24px; padding: 0; margin: 0; }
.xy-content .case_list ul::after { display: none; }
.xy-content .case_list ul li { float: none; width: auto; margin: 0; }
.xy-content .case_list ul li a { margin: 0; }
.xy-content .case_list ul img { width: 100%; height: auto; aspect-ratio: 8 / 5; object-fit: contain; background: #faf8f5; border-radius: 4px; }
.xy-content .case_list .text h2, .xy-content .case_list .text h3 { font-size: 18px; font-weight: 500; line-height: 1.65; height: auto; padding: 0; margin: 12px 0 0; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.xy-content .news_details .bg { margin-top: 0; }
.xy-content .news_details .title, .xy-content .details .title { max-width: 900px; width: calc(100% - 48px); margin: 0 auto; padding: 28px 0; text-align: left; }
.xy-content .title h1 { font-size: 32px; font-weight: 600; line-height: 1.5; margin: 0 0 16px; }
.xy-content .title p { margin: 0; font-size: 14px; line-height: 1.8; color: #706974; }
.xy-content .news_details .bg > .text, .xy-content .details > .wrap > .text { max-width: 900px; width: calc(100% - 48px); margin: 24px auto 0; padding-bottom: 28px; font-size: 16px; line-height: 1.9; color: #35312f; overflow-wrap: anywhere; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) p { margin: 0 0 16px; line-height: 1.9 !important; text-indent: 0; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) :is(h2,h3,h4) { text-align: left; font-family: inherit; font-weight: 600; line-height: 1.5; color: var(--content-ink); scroll-margin-top: 110px; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) h2 { font-size: 24px; margin: 32px 0 16px; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) h3 { font-size: 20px; margin: 24px 0 12px; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) h4 { font-size: 18px; margin: 20px 0 12px; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) :is(h2,h3,h4) :is(span,strong) { font-size: inherit !important; font-family: inherit !important; line-height: inherit !important; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) img { max-width: 100% !important; height: auto !important; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) :is(ul,ol) { padding-left: 1.5em; margin: 12px 0 20px; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) ul { list-style: disc; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) ol { list-style: decimal; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) li { list-style: inherit; margin-bottom: 6px; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) :is(table,pre) { max-width: 100%; overflow-x: auto; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) table { display: block; }
.xy-content .txt_cur { display: flex; gap: 16px; padding: 32px 0; }
.xy-content .txt_cur .clear { display: none; }
.xy-content .txt_cur a { box-sizing: border-box; float: none; flex: 1; min-width: 0; background: #faf8f5; border: 1px solid #e5dfd8; padding: 16px; line-height: 1.7; text-align: left; }
.xy-content .txt_cur a:is(.prev,.next) span, .xy-content .txt_cur a:is(.prev,.next):hover span { background: none; padding: 0; color: #35312f; overflow-wrap: anywhere; }
.xy-content .txt_cur a.prev span::before { content: '上一篇：'; color: #706974; }
.xy-content .txt_cur a.next span::before { content: '下一篇：'; color: #706974; }
.xy-content .txt_cur a:hover { border-color: #574654; }
.xy-content .page_more > .wrap > h2 { font-size: 24px; font-weight: 600; line-height: 1.5; margin-bottom: 24px; }
.xy-content .news_xg_list ul { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; padding: 0; margin: 0; }
.xy-content .news_xg_list ul::after { display: none; }
.xy-content .news_xg_list ul li { float: none; width: auto; margin: 0; }
.xy-content .news_xg_list ul a { margin: 0; }
.xy-content .news_xg_list img { width: 100%; height: auto; aspect-ratio: 8 / 5; object-fit: cover; }
.xy-content .news_xg_list .text { width: 100%; margin: 12px 0 0; }
.xy-content .news_xg_list .text h3 { font-size: 16px; line-height: 1.6; white-space: normal; }
.xy-content .content-toc { box-sizing: border-box; width: calc(100% - 48px); max-width: 900px; margin: 24px auto; padding: 16px 20px; border: 1px solid #e5dfd8; border-radius: 4px; background: #faf8f5; }
.xy-content .content-toc summary { cursor: pointer; font-size: 17px; font-weight: 600; line-height: 1.7; color: var(--content-link); }
.xy-content .details .text .content-toc { width: 100%; }
.xy-content .content-toc nav { max-height: 320px; overflow-y: auto; margin-top: 12px; }
.xy-content .content-toc ol, .xy-content .details .text .content-toc ol { list-style: none; padding-left: 0; margin: 0; }
.xy-content .content-toc ol ol, .xy-content .details .text .content-toc ol ol { padding-left: 18px; border-left: 1px solid #e5dfd8; margin: 8px 0; }
.xy-content .content-toc li { list-style: inherit; margin: 6px 0; font-size: 15px; line-height: 1.7; }
.xy-content .content-toc a { color: var(--content-link); text-decoration: underline; text-underline-offset: 3px; }
.xy-content .case-project-scope { box-sizing: border-box; width: calc(100% - 48px); max-width: 900px; margin: 24px auto; padding: 20px 24px; border-left: 3px solid #e98b00; background: #fff4e7; }
.xy-content .case-project-scope h2 { font-size: 20px; font-weight: 600; line-height: 1.5; margin: 0 0 14px; }
.xy-content .case-project-scope dl { display: grid; grid-template-columns: 90px 1fr; gap: 10px 16px; font-size: 16px; line-height: 1.8; }
.xy-content .case-project-scope dt { color: #706974; }
.xy-content .case-project-scope dd { margin: 0; color: #35312f; }
.xy-content .case-project-scope p { font-size: 14px; line-height: 1.8; margin: 14px 0 0; color: #706974; }
.xy-content .case-delivery { font-size: 14px; line-height: 1.8; color: #706974; margin-top: 10px; }
.xy-content .page_more[hidden] { display: none; }
.xy-case-detail .details > .wrap > .text { animation: none !important; visibility: visible !important; opacity: 1 !important; transform: none !important; }
@media (max-width: 700px) {
  .xy-content .banner_page .item, .xy-content .banner_page2 .item img { height: 110px; }
  .xy-content .page_about { padding-top: 20px; }
  .xy-content .page_tit h1 { font-size: 27px; }
  .xy-content .news_list ul li > a { gap: 14px; padding: 22px 0; align-items: flex-start; }
  .xy-content .news_list .img { flex-basis: 30%; }
  .xy-content .news_list h2 { font-size: 19px; }
  .xy-content .news_list .d_text { font-size: 14px; -webkit-line-clamp: 2; }
  .xy-content .case_list ul { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 14px; }
  .xy-content .case_list .text h2, .xy-content .case_list .text h3 { font-size: 16px; }
  .xy-content .title h1 { font-size: 24px; }
  .xy-content .news_details .title, .xy-content .details .title, .xy-content .news_details .bg > .text, .xy-content .details > .wrap > .text { width: calc(100% - 32px); }
  .xy-content :is(.news_details .bg > .text, .details > .wrap > .text) h2 { font-size: 22px; }
  .xy-content .txt_cur { flex-direction: column; }
  .xy-content .txt_cur a { width: 100%; }
  .xy-content .news_xg_list ul { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 14px; }
  .xy-content .content-toc, .xy-content .case-project-scope { width: calc(100% - 32px); padding: 16px; }
  .xy-content .details .text .content-toc { width: 100%; }
  .xy-content .case-project-scope dl { grid-template-columns: 72px 1fr; gap: 8px; font-size: 15px; }
}

.xy-content .news_details { background: #faf8f5; }
.xy-content :is(.news_details .bg > .text, .details > .wrap > .text) a { color: var(--content-link); text-decoration: underline; text-underline-offset: 3px; }
