/* 四川艺庭装饰 - scoped enhancements; original template layout retained */
.yiting-container{max-width:1260px;padding:0 5%;margin:0 auto;box-sizing:border-box}.yiting-intro{padding:85px 0;background:#262a2a;color:#fff}.yiting-intro h1{font-size:36px;margin:12px 0}.yiting-intro p{line-height:1.9}.yiting-kicker{letter-spacing:.24em;color:#cbb48e}.yiting-space{padding-top:55px;padding-bottom:85px}.yiting-extra{padding:25px 0 50px}.yiting-extra .head-title{margin-bottom:25px}.yiting-honors-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.yiting-honor{display:block;background:#fff;border:1px solid #eee;color:#303030;text-decoration:none;overflow:hidden;padding-bottom:16px}.yiting-honor img{display:block;width:100%;height:210px;object-fit:contain;background:#f8f7f4}.yiting-honor h2,.yiting-honor h3{font-size:16px;line-height:1.5;font-weight:500;padding:12px 13px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.yiting-honor p{padding:8px 13px;color:#777;line-height:1.6}.yiting-subtitle{color:#777;line-height:1.9;font-size:15px;margin-bottom:18px}.yiting-call{padding:14px 2px;text-align:center;line-height:1.8}.yiting-call p{color:#666;margin:5px 0 14px}.yiting-call-btn{display:inline-block;background:#282c2c;color:#fff!important;padding:12px 22px;border-radius:2px;text-decoration:none!important;font-size:15px}.yiting-call-btn:hover{background:#a98c68}.yiting-body{max-width:1000px;margin:35px auto;line-height:2;font-size:16px;color:#333}.yiting-body p{margin-bottom:19px}.yiting-body img{max-width:100%;height:auto;display:block;margin:0 auto}.yiting-history p{border-left:3px solid #aa9573;padding:10px 0 10px 22px;margin-bottom:4px}.yiting-article h1{font-size:30px;margin:25px 0}.yiting-pagination{text-align:center;margin:25px 0;line-height:2}.yiting-pagination a{padding:5px 12px;display:inline-block}.index-about .right-video{cursor:default}.index-youshi .big-size{font-size:44px!important}.yiting-extra .page-content-box{margin:0 5%}
@media(max-width:800px){.yiting-container{padding:0 .44rem}.yiting-intro{padding:48px 0}.yiting-intro h1{font-size:26px}.yiting-space{padding-top:30px;padding-bottom:55px}.yiting-extra{padding:24px 0}.yiting-honors-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.yiting-honor img{height:145px}.yiting-honor h2,.yiting-honor h3{font-size:13px;padding:8px 9px 0}.yiting-honor p{font-size:12px}.yiting-body{font-size:15px}.yiting-article h1{font-size:24px}.navbr ul li{width:16.6667%!important}.index-youshi .big-size{font-size:28px!important}.footer-right .btn-form{display:block;text-align:center}}

@media(min-width:1000px){.header .navbr ul li{padding-left:14px!important;padding-right:14px!important}.header .navbr ul li a{font-size:15px!important}.header .lianxi ul li{margin-right:0!important;padding-right:0!important}}
@media(max-width:1200px) and (min-width:801px){.header .navbr ul li{padding-left:9px!important;padding-right:9px!important}.header .navbr ul li a{font-size:14px!important}.header .logo img{height:42px!important}.header .logo{top:24px!important}.header .lianxi .tel{font-size:13px!important}}
@media(max-width:999px) and (min-width:801px){.header .navbr{left:170px!important;right:110px!important}.header .navbr ul li{padding-left:5px!important;padding-right:5px!important}}

/* YITING LAYOUT REPAIR 20260918-2
   Preserve the existing visual structure while normalizing mixed portrait/landscape
   source photographs. All rules are scoped to existing website components. */

/* Consultation: the source theme globally justifies paragraph text. */
.yiting-consult .index-form { overflow: visible; }
.yiting-consult .yiting-call {
  display: flex; flex-direction: column; justify-content: center; align-items: center;
  gap: 13px; padding: 4px 15px 8px; text-align: center;
}
.yiting-consult .yiting-call p {
  margin: 0 !important; text-align: center; line-height: 1.65;
}
.yiting-consult .yiting-call-btn {
  display: inline-flex; align-items: center; justify-content: center;
  max-width: 100%; text-align: center; white-space: normal;
}

/* Uniform honor card outlines even for differently oriented certificates. */
.yiting-honors-grid { align-items: stretch; }
.yiting-honor { height: 100%; box-sizing: border-box; }
.yiting-honor h2, .yiting-honor h3 { min-height: 3em; }

/* Desktop: original five services + one-large/four-small case mosaic. */
@media (min-width: 801px) {
  .yiting-consult { margin-bottom: 56px; }
  .yiting-consult .head-title { margin-bottom: 22px; }
  .slideBox .bd li img {
    display: block; width: 100%; height: min(36.46vw, 700px);
    min-height: 290px; object-fit: cover; object-position: center;
  }
  .index-lingyu ul {
    display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px;
    margin: 0; padding: 0;
  }
  .index-lingyu ul li { float: none; width: auto !important; min-width: 0; margin: 0 !important; }
  .index-lingyu ul li .box { height: auto; margin: 0; aspect-ratio: 3 / 4; position: relative; }
  .index-lingyu ul li .box > a { display: block; position: absolute; inset: 0; }
  .index-lingyu ul li .box .img { display: block; height: 100%; }
  .index-lingyu ul li .box .img img {
    display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;
  }
  .index-lingyu ul li .box .desc { padding: clamp(12px, 1.6vw, 28px) !important; }
  .index-lingyu ul li .box .desc h2 {
    max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  }
  .index-lingyu ul li .box .desc p.miaoshu {
    height: auto; max-height: 3em; line-height: 1.5; white-space: normal;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
  }

  .list-anli ul {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2, clamp(150px, 15.5vw, 238px));
    gap: 8px; margin: 0; padding: 0;
  }
  .list-anli ul li, .list-anli ul li:first-child {
    float: none; clear: none; width: auto !important;
    height: 100%; margin: 0 !important; min-width: 0;
  }
  .list-anli ul li:first-child { grid-column: span 2; grid-row: span 2; }
  .list-anli ul li .box, .list-anli ul li .box > a, .list-anli ul li .box .img {
    display: block; height: 100%; margin: 0;
  }
  .list-anli ul li .box .img img, .list-anli ul li:first-child .box .img img {
    display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;
  }
  .list-anli ul li .box .desc { max-width: calc(100% - 40px); }

  .list-lingyu ul {
    display: grid; grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 28px 12px; margin: 0;
  }
  .list-lingyu ul li { float: none; width: auto !important; min-width: 0; margin: 0 !important; }
  .list-lingyu ul li .box { height: 100%; margin: 0; }
  .list-lingyu ul li .box .img { aspect-ratio: 3 / 4; }
  .list-lingyu ul li .box .img img { display: block; width: 100%; height: 100%; object-fit: cover; }

  .list-case ul, .list-about-anli ul {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px 16px; margin: 0; padding: 0;
  }
  .list-case ul li, .list-case ul li:nth-child(4n + 1), .list-about-anli ul li {
    float: none; clear: none; width: auto !important; margin: 0 !important; min-width: 0;
  }
  .list-case ul li .box, .list-about-anli ul li .box { margin: 0; }
  .list-case ul li .box .img, .list-about-anli ul li .box .img {
    aspect-ratio: 4 / 3; overflow: hidden; margin-bottom: 15px;
  }
  .list-case ul li .box .img img, .list-about-anli ul li .box .img img {
    display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;
  }
  .list-case ul li .box .desc, .list-about-anli ul li .box .desc { padding: 0 3px; }
  .list-case ul li .box .desc p, .list-about-anli ul li .box .desc p {
    overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
  }
}

/* Tablet widths: keep every row aligned and prevent five cards becoming too narrow. */
@media (min-width: 801px) and (max-width: 1080px) {
  .index-lingyu ul, .list-lingyu ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .list-anli ul { grid-template-rows: repeat(2, 165px); }
  .list-case ul, .list-about-anli ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Narrow screens: honor the site's separate mobile template and its horizontal
   service-scroller, but give every card the same image proportions. */
@media (max-width: 800px) {
  .yiting-consult .yiting-call { gap: 12px; padding: 0 6px 12px; font-size: 14px; }
  .yiting-consult .yiting-call-btn { padding: 12px 15px; font-size: 14px; line-height: 1.5; }
  .slideBox .bd ul li img {
    display: block; width: 100%; height: calc((100vw - .88rem) * .625);
    object-fit: cover; object-position: center;
  }
  .index-lingyu ul li { vertical-align: top; white-space: normal; }
  .index-lingyu ul li .box { height: auto; aspect-ratio: 3 / 4; position: relative; }
  .index-lingyu ul li .box > a { display: block; position: absolute; inset: 0; }
  .index-lingyu ul li .box .img { display: block; height: 100%; }
  .index-lingyu ul li .box .img img {
    display: block; width: 100%; height: 100%; object-fit: cover;
  }
  .index-lingyu ul li .box .desc { bottom: 0; }

  .list-anli ul {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .38rem .12rem; margin: 0; padding: 0;
  }
  .list-anli ul li, .list-anli ul li:nth-child(2n + 1), .list-anli ul li:first-child {
    float: none; clear: none; width: auto !important; margin: 0 !important; min-width: 0;
  }
  .list-anli ul li .box { margin: 0; }
  .list-anli ul li .box .img { aspect-ratio: 4 / 3; overflow: hidden; }
  .list-anli ul li .box .img img {
    display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;
  }
  .list-anli ul li .box .desc h2 { overflow: hidden; }
  .list-lingyu ul li .img { aspect-ratio: 16 / 10; overflow: hidden; }
  .list-lingyu ul li .img img { display: block; width: 100%; height: 100%; object-fit: cover; }
  .yiting-honors-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .yiting-honor { min-width: 0; }
  .yiting-honor img { width: 100%; height: 145px; object-fit: contain; }
  .yiting-honor h2, .yiting-honor h3 { overflow-wrap: anywhere; }
}
