.inner-main { min-height: 700px; background: #f8f8f8; }
.inner-hero { position: relative; height: 480px; overflow: hidden; color: #fff; }
.inner-hero::after { position: absolute; inset: 0; content: ""; background: rgba(0, 0, 0, 0.22); }
.inner-hero > img { width: 100%; height: 100%; object-fit: cover; animation: innerBannerScale 20s infinite linear; transform-origin: center; }
.inner-hero > .wrap { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 2; padding-top: 200px; }
.inner-hero h1 { margin: 0; padding-bottom: 10px; font-size: 44px; font-weight: 700; line-height: 59px; }
.inner-hero p { margin: 0; font-size: 20px; font-weight: 300; }
@keyframes innerBannerScale { 0% { transform: scale(1); } 50% { transform: scale(1.06); } 100% { transform: scale(1); } }
.inner-subnav { height: 100px; border-bottom: 1px solid #ebebeb; background: #fff; }
.inner-subnav > .wrap { display: flex; height: 100%; align-items: center; justify-content: space-between; }
.sub-links { display: flex; height: 100%; align-items: center; gap: 46px; overflow: hidden; }
.sub-links a { position: relative; flex: 0 0 auto; color: #666; font-size: 20px; line-height: 100px; }
.sub-links a.active { color: #cc0212; }
.sub-links a.active::after { position: absolute; right: 0; bottom: 0; left: 0; height: 2px; content: ""; background: #cc0212; }
.breadcrumb { color: #aaa; font-family: "PingFang SC", sans-serif; font-size: 14px; white-space: nowrap; }
.breadcrumb a { color: #aaa; }
.breadcrumb a:hover { color: #cc0212; }
@font-face { font-family: "xyseed-iconfont"; src: url("https://at.alicdn.com/t/c/font_4811202_vwyc2fjffzk.woff2?t=1748507244370") format("woff2"); font-style: normal; font-weight: normal; font-display: block; }
.breadcrumb .breadcrumb-home { padding-right: 10px; color: #cc0212; font-family: "xyseed-iconfont"; font-size: 16px; font-style: normal; }
.breadcrumb i { padding: 0 5px; color: #ccc; font-size: 14px; font-style: normal; }
.inner-content { padding: 80px 0 150px; }
.white-panel { padding: 40px; background: #fff; }
.about-content { min-height: 1427px; padding-top: 100px; padding-bottom: 450px; background: #fafafa; }
.about-detail { display: flex; justify-content: space-between; align-items: start; padding: 0; background: transparent; }
.about-detail > div { width: 65%; }
.about-detail picture { width: 35%; height: 100%; padding-left: 4%; }
.about-detail h1 { margin: 0; padding-bottom: 40px; color: #000; font-size: 40px; font-weight: 500; }
.about-detail .rich { color: #333; font-size: 17px; line-height: 30px; }
.about-detail .rich p { margin: 0; padding-bottom: 20px; }
.about-detail img { width: 100%; margin: 0; }
.culture-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.culture-grid article { min-height: 220px; padding: 38px 28px; border-top: 3px solid #d50012; background: #fafafa; }
.culture-grid b { color: #d50012; }
.culture-grid h2 { margin-top: 34px; font-size: 22px; line-height: 1.6; }
.timeline article { display: grid; grid-template-columns: 150px 1fr; min-height: 105px; align-items: center; border-bottom: 1px solid #eee; }
.timeline strong { color: #d50012; font-size: 30px; }
.timeline p { color: #666; font-size: 17px; }
.inner-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.inner-gallery article { overflow: hidden; background: #fff; }
.inner-gallery img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: 0.35s; }
.inner-gallery article:hover img { transform: scale(1.05); }
.inner-gallery h3 { margin: 0; padding: 20px; font-size: 18px; text-align: center; }
.product-list-page { min-height: 900px; padding: 100px 0; background: #f7f7f7; }
.product-page-intro { max-width: 900px; margin: 0 auto 38px; color: #555; font-size: 17px; line-height: 1.9; text-align: center; }
.product-page-intro p { margin: 0 0 10px; }
.page-managed-intro { margin: 0 0 36px; padding: 26px 34px; color: #555; background: #fff; font-size: 17px; line-height: 1.9; }
.page-managed-intro p { margin: 0 0 10px; }
.product-search { display: flex; width: 670px; height: 62px; margin: 0 auto; overflow: hidden; border-radius: 5px; background: #fff; }
.product-search span { position: relative; width: 60px; }
.product-search span::before { position: absolute; top: 21px; left: 21px; width: 15px; height: 15px; content: ""; border: 2px solid #bbb; border-radius: 50%; }
.product-search span::after { position: absolute; top: 37px; left: 36px; width: 8px; height: 2px; content: ""; background: #bbb; transform: rotate(45deg); }
.product-search input { flex: 1; min-width: 0; border: 0; outline: none; font-size: 17px; }
.product-search button { width: 100px; color: #fff; border: 0; background: #d50012; font-size: 18px; }
.category-grid { display: grid; grid-template-columns: repeat(4, calc((100% - 90px) / 4)); gap: 30px; padding-top: 60px; }
.category-grid article { box-sizing: border-box; padding: 25px; border: 2px solid #fff; border-radius: 5px; background: #fff; transition: 0.5s; }
.category-grid img { width: 100%; aspect-ratio: 1; margin-bottom: 20px; object-fit: cover; transition: 0.35s; }
.category-grid article:hover { border-color: #cc0212; background: #cc0212; }
.category-grid article:hover h2 { color: #fff; }
.category-grid h2 { margin: 0; color: #333; font-size: 26px; font-weight: 700; line-height: 30px; text-align: center; }
.document-list { display: grid; gap: 20px; }
.document-list a { display: flex; min-height: 0; align-items: center; gap: 20px; padding: 20px; color: #666; background: #fff; font-size: 20px; }
.document-list i { display: grid; width: 38px; height: 38px; place-items: center; color: #d50012; border: 2px solid #d50012; border-radius: 4px; font-size: 10px; font-style: normal; font-weight: 700; }
.experiment-intro { margin-bottom: 55px; padding: 30px 60px; color: #333; background: #fff; font-size: 20px; font-weight: 700; line-height: 34px; }
.experiment-card h2 { width: 100%; margin: 0 0 50px; padding: 35px 0; color: #cc0212; border-bottom: 1px solid #f0f0f0; font-size: 28px; font-weight: 700; }
.experiment-card p { color: #333; font-size: 18px; line-height: 34px; }
.experiment-card table { width: 100%; margin-top: 28px; border-collapse: collapse; }
.experiment-card th, .experiment-card td { padding: 15px; border: 1px solid #ddd; text-align: left; }
.experiment-card th { color: #d50012; background: #fafafa; }
.experiment-images { display: flex; flex-wrap: wrap; justify-content: space-around; gap: 2%; padding: 28px 0 18px; }
.experiment-images img { width: 23%; aspect-ratio: 4 / 3; object-fit: cover; }
.article-list-page { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0; }
.article-list-page article { width: 31%; min-height: 0; margin-bottom: 50px; background: #fff; }
.article-list-page img { width: 100%; height: 100%; object-fit: cover; }
.article-list-page article > div { padding: 20px 30px 30px; }
.article-list-page b { display: inline-block; padding: 8px 18px; color: #fff; background: #d50012; }
.article-list-page h2 { margin: 0; padding: 20px 0 0; color: #000; font-size: 20px; line-height: 28px; }
.article-list-page p, .article-list-page span { color: #888; }
.article-list-page span { display: none; }
.article-list-page article:first-child { display: grid; grid-template-columns: 50% 50%; width: 100%; min-height: 500px; margin-bottom: 60px; }
.article-list-page article:first-child > div { padding: 4% 6.5% 0; }
.article-list-page article:first-child h2 { margin: 30px 0 10px; padding: 0; font-size: 30px; font-weight: 700; line-height: 36px; }
.article-list-page article:first-child span { display: block; margin-top: 20px; color: #777; line-height: 28px; }
.article-list-page article > img { height: 240px; }
.article-list-page article:first-child > img { height: 500px; }
.team-list { display: grid; gap: 50px; }
.team-list article { display: grid; grid-template-columns: 35% 60%; min-height: 0; justify-content: space-between; gap: 0; padding: 40px; background: #fff; }
.team-list img { width: 100%; height: 100%; object-fit: cover; }
.team-list h2 { margin: 0; color: #000; font-size: 32px; font-weight: 700; line-height: 60px; }
.team-list h3 { margin: 0; padding-bottom: 25px; color: #cc0212; font-size: 20px; line-height: 30px; }
.team-list p { color: #666; font-size: 15px; line-height: 26px; }
.contact-panel { display: grid; grid-template-columns: 1fr 1fr; min-height: 0; padding: 80px 60px; }
.contact-panel > div:first-child { border-right: 1px solid #eee; }
.contact-panel span, .contact-panel h3 { color: #666; font-size: 17px; font-weight: 400; }
.contact-panel h1 { margin: 8px 0 100px; font-size: 42px; }
.contact-panel h2 { margin: 0 0 40px; color: #666; font-size: 30px; font-weight: 400; line-height: 1.5; }
.fake-qr { display: grid; width: 100px; height: 100px; margin-top: 28px; place-items: center; border: 5px solid #111; font-size: 12px; }
.contact-details { padding-left: 9%; font-size: 24px; }
.contact-details h3 { margin: 0 0 8px; }
.contact-details p, .contact-details div { margin: 0 0 40px; font-size: 24px; line-height: 1.65; }
.contact-details div p { margin: 0 0 6px; }
.contact-map { grid-column: 1 / -1; height: 420px; margin-top: 55px; display: grid; place-items: center; color: #777; background: linear-gradient(rgba(15, 74, 45, 0.18), rgba(15, 74, 45, 0.18)), url("/assets/field-wide.jpg") center / cover; font-size: 20px; }
.page-contact .inner-content:not(.bank-page) { min-height: 1448px; }

/* Target-site inner pages: each about section has a distinct composition. */
.culture-page { padding: 100px 0; background: #526453 url("/assets/field-wide.jpg") center / cover; }
.culture-page > .wrap { display: flex; align-items: stretch; justify-content: space-between; }
.culture-copy { width: 42%; padding: 200px 0 0 30px; color: #fff; }
.culture-copy h2 { margin: 0; font-size: 20px; font-weight: 500; line-height: 60px; }
.culture-copy h3 { margin: 0; font-size: 40px; font-weight: 500; line-height: 50px; }
.culture-card { width: 50%; padding: 70px 80px; color: #fff; background: #cc0212; font-size: 18px; line-height: 30px; }
.culture-card h2 { margin: 10px 0 0; font-size: 20px; font-weight: 700; }
.culture-card p { margin: 0 0 20px; }
.course-page { padding: 100px 0 150px; background: #fafafa; }
.course-tabs { display: flex; width: 90%; height: 50px; margin: 0 auto; align-items: start; justify-content: space-around; }
.course-tabs button { width: 25%; padding: 0 0 20px; color: #c4c4c4; border: 0; border-bottom: 4px solid transparent; background: transparent; font-size: 26px; font-weight: 700; line-height: 26px; }
.course-tabs button.active { color: #cc0212; border-bottom-color: #cc0212; }
.course-stage { display: flex; justify-content: space-between; padding-top: 100px; }
.course-stage img { width: 40%; height: 300px; object-fit: cover; }
.course-stage > div { width: 55%; }
.course-stage h1 { margin: 0; padding-bottom: 30px; color: #222; font-size: 36px; font-weight: 500; }
.course-stage p { margin: 0; color: #777; font-size: 18px; line-height: 30px; }
.history-page { padding: 100px 0; background: #fafafa; }
.history-grid { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4% 0; }
.history-grid article { position: relative; width: 30%; height: 300px; overflow: hidden; }
.history-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.history-grid article div { position: absolute; right: 0; bottom: 0; left: 0; height: 100px; padding-bottom: 20px; color: transparent; background: linear-gradient(transparent, rgba(0,0,0,.4)); font-size: 80px; font-weight: 700; line-height: 80px; text-align: center; -webkit-text-stroke: 1px #fff; transition: .4s; }
.history-grid article:hover img { transform: scale(1.05); }
.history-grid article:hover div { height: 100%; padding-top: 25%; box-sizing: border-box; color: #fff; background: linear-gradient(transparent, #c6150f); }
.photo-page { padding: 100px 0 150px; background: #fafafa; }
.photo-list { display: flex; flex-wrap: wrap; justify-content: space-between; padding-bottom: 60px; }
.photo-list article { width: 24%; margin-bottom: 2%; padding: 15px; background: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.07); }
.photo-list article > a { display: block; }
.photo-list article > a > div { position: relative; height: 200px; overflow: hidden; }
.photo-list img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.photo-list article:hover img { transform: scale(1.05); }
.photo-list p { margin: 0; padding-top: 10px; color: #666; font-size: 16px; line-height: 26px; text-align: center; }
.page-pager { display: flex; justify-content: center; gap: 5px; }
.page-pager a, .page-pager span { min-width: 40px; padding: 10px 15px; color: #666; border: 1px solid #ddd; border-radius: 5px; background: #fff; font-size: 18px; line-height: 20px; text-align: center; }
.page-pager .current { color: #fff; border-color: #cc0212; background: #cc0212; }
.bank-page { min-height: 554px; padding: 80px 0 150px; }
.bank-panel { display: flex; justify-content: space-between; padding: 80px 60px; background: #fff; }
.bank-panel > div { width: 50%; }
.bank-panel h1 { margin: 0; color: #000; font-size: 40px; }
.bank-panel p { margin: 0; color: #333; font-size: 20px; line-height: 40px; }
.bank-panel h6 { margin: 0; padding-top: 20px; color: #cc0212; font-size: 16px; }

/* Product category list and product detail routes mirror the target's three-level flow. */
.product-route { padding: 80px 0; background: #fafafa; }
.product-layout { display: flex; justify-content: space-between; }
.product-categories { width: 20%; padding-top: 20px; border: 1px solid #ebebeb; background: #fff; }
.product-categories h1 { margin: 0; font-size: 24px; line-height: 70px; text-indent: 40px; }
.product-categories a { display: block; color: #555; font-size: 18px; line-height: 50px; text-indent: 40px; }
.product-categories a:hover { color: #cc0212; font-weight: 700; }
.product-categories a.active { color: #fff; background: #cc0212; font-weight: 700; }
.product-results { width: 79%; }
.product-result-grid { display: grid; grid-template-columns: repeat(2, calc((100% - 30px) / 2)); gap: 30px; padding-bottom: 40px; }
.product-result-grid article { padding: 15px; border: 1px solid #fff; background: #fff; overflow: hidden; }
.product-result-grid article > a { display: flex; justify-content: space-between; color: #555; }
.product-result-image { position: relative; width: 43%; height: 0; padding-top: 43%; overflow: hidden; }
.product-result-image img { position: absolute; top: 50%; left: 50%; width: 100%; height: 100%; object-fit: cover; transform: translate(-50%, -50%); }
.product-result-grid article > a > div:last-child { width: 52%; padding-right: 10px; box-sizing: border-box; }
.product-result-grid h1 { margin: 0; padding-top: 20px; overflow: hidden; color: #333; font-size: 36px; font-weight: 500; line-height: 60px; text-overflow: ellipsis; white-space: nowrap; }
.product-result-grid p { display: -webkit-box; margin: 15px 0 0; overflow: hidden; color: #888; font-size: 16px; line-height: 26px; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.product-result-grid article:hover h1 { color: #cc0212; }
.product-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 5px; }
.product-pagination a, .product-pagination span, .product-pagination strong { min-width: 50px; padding: 10px 15px; color: #666; border: 1px solid #ddd; border-radius: 5px; background: #fff; font-size: 18px; font-weight: 400; line-height: 20px; text-align: center; }
.product-pagination strong { color: #fff; border-color: #cc0212; background: #cc0212; }
.product-detail-page { background: #fafafa; }
.product-detail-top { display: flex; justify-content: space-between; padding-top: 80px; padding-bottom: 80px; }
.product-gallery { width: 40%; padding: 20px; background: #fff; }
.product-main-image { position: relative; width: 100%; aspect-ratio: 1; overflow: hidden; }
.product-main-image img { width: 100%; height: 100%; object-fit: cover; }
.product-thumbnails { display: flex; gap: 4px; padding-top: 4px; }
.product-thumbnails button { width: calc((100% - 16px) / 5); height: auto; padding: 0; overflow: hidden; border: 2px solid transparent; background: transparent; aspect-ratio: 1; }
.product-thumbnails button.active { border-color: #cc0212; }
.product-thumbnails img { width: 100%; height: 100%; object-fit: cover; }
.product-detail-copy { width: 52%; }
.product-detail-copy > h1 { margin: 0; color: #000; font-size: 40px; font-weight: 700; line-height: 180px; }
.product-detail-copy > p { margin: 0; color: #666; font-size: 18px; line-height: 30px; }
.product-actions { display: flex; gap: 20px; padding-top: 70px; }
.product-actions a { width: 230px; height: 60px; box-sizing: border-box; color: #cc0212; border: 1px solid #cc0212; border-radius: 3px; font-size: 20px; line-height: 58px; text-align: center; }
.product-actions a:last-child { color: #fff; background: #cc0212; }
.product-actions a:hover { color: #fff; background: #cc0212; }
.product-actions a:last-child:hover { color: #cc0212; background: #fff; }
.product-description { padding: 40px 0 50px; background: #fff; }
.product-description h1, .product-recommend h1 { margin: 0; color: #000; font-size: 36px; font-weight: 700; line-height: 120px; }
.product-description-image { width: min(800px, 100%); margin: 0 auto; }
.product-description-image img { display: block; width: 100%; max-height: 800px; object-fit: cover; }
.product-description p { width: min(800px, 100%); margin: 30px auto 0; color: #333; font-size: 16px; line-height: 30px; }
.product-recommend { padding: 40px 0 100px; background: #fff; }
.product-recommend > .wrap > div { display: flex; justify-content: space-between; gap: 30px; }
.product-recommend a { width: calc((100% - 120px) / 5); color: #666; font-size: 18px; line-height: 30px; text-align: center; }
.product-recommend img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }
.product-recommend span { display: block; padding-top: 10px; }

@media (max-width: 820px) {
  .inner-hero { height: 350px; }
  .inner-hero > .wrap { padding-top: 140px; }
  .inner-hero h1 { font-size: 34px; }
  .inner-hero p { font-size: 16px; }
  .inner-subnav { height: 80px; }
  .sub-links { gap: 30px; }
  .sub-links a { font-size: 17px; line-height: 80px; }
  .breadcrumb { display: none; }
  .inner-content { padding: 50px 0 80px; }
  .about-detail, .article-list-page article, .team-list article, .contact-panel { grid-template-columns: 1fr; }
  .about-detail img { margin-top: 0; }
  .culture-grid, .inner-gallery { grid-template-columns: repeat(2, 1fr); }
  .category-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; padding: 60px 20px 0; }
  .product-search { width: min(100%, 670px); }
  .team-list article { gap: 28px; }
  .contact-panel > div:first-child { border-right: 0; border-bottom: 1px solid #eee; }
  .contact-details { padding: 50px 0 0; }
  .contact-map { height: 300px; }
  .culture-page { padding: 80px 0 120px; }
  .culture-page > .wrap { flex-direction: column; padding-right: 50px; padding-left: 50px; }
  .culture-copy { width: 100%; padding: 0 0 50px; }
  .culture-card { width: 80%; padding: 60px 40px; }
  .course-page, .history-page, .photo-page { padding: 70px 0; }
  .course-stage { padding-top: 50px; }
  .history-grid article { height: 150px; }
  .photo-list article { width: 32%; }
  .photo-list article > a > div { height: 160px; }
  .bank-panel { flex-wrap: wrap; }
  .bank-panel > div { width: 100%; }
  .product-route { padding: 50px 0 80px; }
  .product-layout { display: block; }
  .product-categories, .product-results { width: 100%; }
  .product-categories { display: flex; padding: 20px; border: 0; box-sizing: border-box; }
  .product-categories h1 { width: 90px; font-size: 17px; line-height: 43px; text-indent: 0; white-space: nowrap; }
  .product-categories nav { display: flex; flex: 1; flex-wrap: wrap; }
  .product-categories a { width: auto; margin: 5px 8px 5px 0; padding: 0 10px; font-size: 15px; line-height: 33px; text-indent: 0; }
  .product-result-grid { padding: 30px 30px 60px; box-sizing: border-box; }
  .product-detail-top { padding-top: 50px; padding-bottom: 50px; }
  .product-gallery { width: 46%; }
  .product-detail-copy { width: 48%; }
  .product-detail-copy > h1 { font-size: 32px; line-height: 100px; }
  .product-actions { flex-wrap: wrap; padding-top: 35px; }
  .product-actions a { width: calc(50% - 10px); }
}

@media (max-width: 520px) {
  .inner-hero { height: 280px; }
  .inner-hero > .wrap { padding: 120px 20px 0; }
  .inner-hero h1 { padding-bottom: 10px; font-size: 26px; }
  .inner-hero p { font-size: 14px; }
  .sub-links { gap: 22px; overflow-x: auto; scrollbar-width: none; }
  .sub-links::-webkit-scrollbar { display: none; }
  .sub-links a { font-size: 14px; }
  .inner-content { padding: 35px 0 60px; }
  .white-panel { padding: 24px 20px; }
  .about-detail h1 { font-size: 27px; }
  .culture-grid, .inner-gallery { grid-template-columns: 1fr; }
  .product-list-page { padding: 40px 0 80px; }
  .product-search { height: 50px; margin-bottom: 35px; }
  .product-search button { width: 82px; }
  .category-grid { grid-template-columns: repeat(3, calc((100% - 40px) / 3)); gap: 20px; padding: 40px 0 0; }
  .category-grid article { padding: 0; border: 0; background: transparent; }
  .category-grid img { margin-bottom: 10px; border-radius: 5px; }
  .category-grid h2 { padding: 0; font-size: 17px; line-height: 18px; }
  .article-list-page article, .article-list-page article:first-child { display: block; width: 100%; min-height: 0; margin-bottom: 20px; }
  .article-list-page article > img, .article-list-page article:first-child > img { width: 100%; height: 200px; }
  .article-list-page article > div, .article-list-page article:first-child > div { padding: 15px 20px 20px; }
  .article-list-page h2, .article-list-page article:first-child h2 { margin: 0; padding: 0; font-size: 18px; line-height: 28px; }
  .article-list-page article:first-child span { display: none; }
  .team-list article { padding: 15px; }
  .team-list h2 { font-size: 25px; }
  .contact-panel { padding: 35px 24px; }
  .contact-panel h1 { margin-bottom: 45px; font-size: 28px; }
  .contact-details p, .contact-details div { font-size: 17px; }
  .experiment-intro { padding: 25px 20px; }
  .experiment-card { overflow-x: auto; }
  .experiment-images img { width: 48%; margin-bottom: 12px; }
  .culture-page { padding: 50px 0 100px; }
  .culture-page > .wrap { padding-right: 20px; padding-left: 20px; }
  .culture-copy h3 { font-size: 26px; line-height: 38px; }
  .culture-card { width: 100%; padding: 40px 30px; }
  .culture-card p { font-size: 17px; }
  .course-page, .history-page, .photo-page { padding: 50px 0; }
  .course-tabs { width: 100%; }
  .course-tabs button { font-size: 18px; }
  .course-stage { display: block; padding-top: 30px; }
  .course-stage img, .course-stage > div { width: 100%; }
  .course-stage img { height: auto; }
  .course-stage h1 { padding: 20px 0 10px; font-size: 24px; line-height: 32px; }
  .course-stage p { font-size: 17px; line-height: 28px; text-align: justify; }
  .history-grid { gap: 20px 0; padding-bottom: 80px; }
  .history-grid article { width: 48%; height: 130px; }
  .history-grid article div { height: auto; padding-bottom: 10px; font-size: 40px; line-height: 40px; }
  .photo-list article { width: 49%; padding: 10px; }
  .photo-list article > a > div { height: 120px; }
  .photo-list p { font-size: 14px; }
  .bank-page { padding: 30px 0 80px; }
  .bank-panel { padding: 30px 20px; }
  .bank-panel h1 { padding-bottom: 10px; font-size: 24px; }
  .bank-panel p { font-size: 16px; line-height: 36px; }
  .product-route { padding-top: 0; }
  .product-categories h1 { display: none; }
  .product-categories a { width: 25%; margin: 0; padding: 0; color: #666; background: transparent; text-align: left; }
  .product-categories a.active { color: #cc0212; background: transparent; }
  .product-result-grid { grid-template-columns: 1fr; gap: 20px; padding: 20px 20px 60px; }
  .product-result-grid article { padding: 8px; }
  .product-result-grid h1 { padding-top: 10px; font-size: 24px; line-height: 40px; }
  .product-result-grid p { margin-top: 0; font-size: 15px; line-height: 24px; }
  .product-detail-top { display: block; padding: 0 0 40px; }
  .product-gallery { width: 100%; padding: 0; }
  .product-detail-copy { width: 100%; padding: 0 20px; box-sizing: border-box; background: #fff; }
  .product-detail-copy > h1 { padding: 40px 0 10px; color: #cc0212; font-size: 30px; line-height: 50px; }
  .product-detail-copy > p { display: none; }
  .product-actions { position: fixed; z-index: 50; right: 0; bottom: 0; left: 0; flex-wrap: nowrap; padding: 0; background: #fff; }
  .product-actions a { width: 50%; height: 50px; border-radius: 0; font-size: 18px; line-height: 48px; }
  .product-description { padding-top: 0; }
  .product-description h1 { display: none; }
  .product-description p { padding: 0 20px; box-sizing: border-box; font-size: 17px; line-height: 30px; }
  .product-recommend { padding: 30px 20px 80px; }
  .product-recommend h1 { font-size: 26px; line-height: 80px; }
  .product-recommend > .wrap > div { flex-wrap: wrap; gap: 10px; }
  .product-recommend a { width: 30%; }
}
