/* 四川艺庭装饰 - 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; }
}


/* ================================================
   YITING V3: consultation, explicit fixed image boxes
   The original base theme has float/auto-height images.
   These selectors intentionally override it, with widths
   and HEIGHTS fixed in CSS independent of image dimensions.
   ================================================ */
.yiting-consult .yiting-form-wrap{overflow:visible!important}
.yiting-consult .yiting-consult-panel,
.yiting-consult .yiting-consult-panel *{box-sizing:border-box}
.yiting-consult .yiting-consult-panel{display:grid;grid-template-columns:minmax(260px,35%) minmax(0,65%);width:100%;min-height:320px;box-shadow:0 16px 48px rgba(20,24,26,.09);border:1px solid #e7e2da;background:#f8f6f3;overflow:hidden}
.yiting-consult .yiting-consult-intro{background:#292e2d;color:#fff;padding:clamp(25px,3.2vw,48px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0}
.yiting-consult .yiting-form-eyebrow{font-size:11px;color:#d6bd98;letter-spacing:.2em;line-height:1.5;display:block;text-align:left}
.yiting-consult .yiting-consult-intro h3{font-size:clamp(23px,2.05vw,30px);line-height:1.5;margin:14px 0!important;text-align:left;color:#fff;font-weight:500}
.yiting-consult .yiting-consult-intro p{font-size:14px;line-height:1.8;color:#ddd;max-width:330px;text-align:left;margin:0!important}
.yiting-consult .yiting-contact-phone{display:inline-block;margin-top:24px;padding-bottom:6px;border-bottom:1px solid #ccb08b;color:#e8d1ad!important;font-size:15px;line-height:1.6;overflow-wrap:anywhere}
.yiting-consult .yiting-quote-form{display:block;min-width:0;padding:clamp(22px,2.65vw,38px);margin:0;background:#f8f6f3}
.yiting-consult .yiting-quote-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px}
.yiting-consult .yiting-field{min-width:0;display:block;position:relative}
.yiting-consult .yiting-field label{display:block;font-size:14px;color:#343735;font-weight:500;margin-bottom:9px;text-align:left;line-height:1.5}
.yiting-consult .yiting-field label em{font-style:normal;color:#b44c40}
.yiting-consult .yiting-field input{box-sizing:border-box!important;display:block;width:100%!important;min-width:0!important;height:48px!important;line-height:normal!important;border:1px solid #d5d2ca!important;background:#fff!important;color:#252b29!important;border-radius:3px!important;box-shadow:0 1px 2px rgba(0,0,0,.02);font-size:14px!important;font-weight:400!important;padding:0 14px!important;outline:none;appearance:none;-webkit-appearance:none;margin:0!important}
.yiting-consult .yiting-field input::placeholder{color:#949994!important;opacity:1}
.yiting-consult .yiting-field input:focus{border-color:#977b58!important;box-shadow:0 0 0 3px rgba(151,123,88,.14)}
.yiting-consult .yiting-area-control{position:relative}
.yiting-consult .yiting-area-control input{padding-right:45px!important}
.yiting-consult .yiting-area-control span{display:block;position:absolute;right:15px;top:0;line-height:48px;color:#747a74;font-size:14px;pointer-events:none}
.yiting-consult .yiting-quote-bottom{display:flex;gap:16px;align-items:center;margin-top:21px;min-width:0}
.yiting-consult .yiting-quote-submit{box-sizing:border-box;flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:18px;padding:0 24px!important;height:49px!important;border:0!important;border-radius:2px;background:#292e2d!important;color:#fff!important;cursor:pointer;font-size:15px!important;font-weight:500;white-space:nowrap;text-align:center}
.yiting-consult .yiting-quote-submit:hover{background:#927855!important}
.yiting-consult .yiting-quote-bottom p{font-size:12px;line-height:1.7;color:#737874;min-width:0;margin:0!important;text-align:left}
/* Service cards: explicit heights prevent the first landscape image shortening its column. */
@media(min-width:1081px){
 .index-lingyu ul{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;margin:0!important;padding:0!important}
 .index-lingyu ul>li{display:block!important;float:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important}
 .index-lingyu ul>li .box{height:320px!important;aspect-ratio:auto!important;position:relative!important;margin:0!important;overflow:hidden}
 .index-lingyu ul>li .box>a{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:320px!important}
 .index-lingyu ul>li .img{display:block!important;width:100%!important;height:320px!important;overflow:hidden}
 .index-lingyu ul>li .img img{display:block!important;width:100%!important;height:320px!important;max-width:none!important;object-fit:cover!important;object-position:center!important}
}
/* On tablets three aligned cards per row. */
@media(min-width:801px) and (max-width:1080px){
 .index-lingyu ul{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;margin:0!important;padding:0!important}
 .index-lingyu ul>li{float:none!important;width:auto!important;min-width:0!important;margin:0!important}
 .index-lingyu ul>li .box{height:280px!important;aspect-ratio:auto!important;position:relative!important;margin:0!important}
 .index-lingyu ul>li .box>a{position:absolute!important;inset:0!important;height:280px!important;display:block!important}
 .index-lingyu ul>li .img,.index-lingyu ul>li .img img{display:block!important;width:100%!important;height:280px!important;object-fit:cover!important}
}
/* Fixed mosaic heights: 1 large 2x2 tile plus 4 equal small tiles. */
@media(min-width:1081px){
 .list-anli ul{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(2,220px)!important;gap:8px!important;margin:0!important;padding:0!important}
 .list-anli ul>li{float:none!important;clear:none!important;width:auto!important;height:220px!important;min-height:0!important;min-width:0!important;margin:0!important;padding:0!important}
 .list-anli ul>li:first-child{grid-column:span 2;grid-row:span 2;height:448px!important}
 .list-anli ul>li .box,.list-anli ul>li .box>a,.list-anli ul>li .img{display:block!important;position:relative;height:100%!important;margin:0!important;overflow:hidden}
 .list-anli ul>li .img img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important}
 .list-anli ul>li .box .desc{position:absolute;bottom:16px;left:20px;right:20px;z-index:3}
}
@media(min-width:801px) and (max-width:1080px){
 .list-anli ul{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(2,175px)!important;gap:7px!important;margin:0!important;padding:0!important}
 .list-anli ul>li{width:auto!important;height:175px!important;float:none!important;margin:0!important;min-width:0!important}
 .list-anli ul>li:first-child{grid-column:span 2;grid-row:span 2;height:357px!important}
 .list-anli ul>li .box,.list-anli ul>li .box>a,.list-anli ul>li .img{display:block!important;height:100%!important;margin:0!important;overflow:hidden}
 .list-anli ul>li .img img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
}
/* Other grid imagery: stable sizes for case lists, service lists, about cases and honors. */
@media(min-width:801px){
 .list-case ul,.list-about-anli ul{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 16px;margin:0!important;padding:0!important}
 .list-case ul>li,.list-about-anli ul>li{float:none!important;clear:none!important;width:auto!important;margin:0!important;min-width:0!important}
 .list-case ul>li .box,.list-about-anli ul>li .box{margin:0!important}
 .list-case ul>li .img,.list-about-anli ul>li .img{height:215px!important;aspect-ratio:auto!important;overflow:hidden;margin-bottom:14px!important}
 .list-case ul>li .img img,.list-about-anli ul>li .img img{display:block!important;width:100%!important;height:215px!important;object-fit:cover!important;object-position:center!important}
 .list-lingyu ul{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px 12px;margin:0!important;padding:0!important}
 .list-lingyu ul>li{float:none!important;width:auto!important;margin:0!important;min-width:0!important}
 .list-lingyu ul>li .box{margin:0!important}
 .list-lingyu ul>li .img{height:310px!important;aspect-ratio:auto!important;overflow:hidden}
 .list-lingyu ul>li .img img{display:block!important;width:100%!important;height:310px!important;object-fit:cover!important}
}
.yiting-honors-grid{align-items:stretch}
.yiting-honor img{display:block!important;width:100%!important;height:210px!important;object-fit:contain!important;object-position:center!important;background:#f7f6f2}
@media(min-width:801px) and (max-width:1080px){
 .list-case ul,.list-about-anli ul{grid-template-columns:repeat(3,minmax(0,1fr))}
 .list-lingyu ul{grid-template-columns:repeat(3,minmax(0,1fr))}
 .list-lingyu ul>li .img,.list-lingyu ul>li .img img{height:280px!important}
}
@media(max-width:800px){
 .yiting-consult{margin-bottom:0!important}
 .yiting-consult .yiting-form-wrap{margin:0 .44rem!important;padding:0!important;background:transparent!important;border-radius:0!important;overflow:visible!important}
 .yiting-consult .yiting-form-wrap>h2{margin:0 0 .35rem!important;text-align:left!important;font-size:.47rem!important;line-height:1.5!important}
 .yiting-consult .yiting-consult-panel{display:block!important;min-height:0!important}
 .yiting-consult .yiting-consult-intro{padding:23px 20px!important}
 .yiting-consult .yiting-form-eyebrow{font-size:10px!important}
 .yiting-consult .yiting-consult-intro h3{font-size:21px!important;margin:8px 0!important}
 .yiting-consult .yiting-consult-intro p{font-size:13px!important}
 .yiting-consult .yiting-contact-phone{margin-top:13px!important;font-size:14px!important}
 .yiting-consult .yiting-quote-form{padding:20px 16px!important}
 .yiting-consult .yiting-quote-fields{gap:14px 10px!important}
 .yiting-consult .yiting-field label{font-size:12px!important;margin-bottom:6px!important}
 .yiting-consult .yiting-field input{height:43px!important;padding:0 9px!important;font-size:12px!important}
 .yiting-consult .yiting-area-control input{padding-right:29px!important}
 .yiting-consult .yiting-area-control span{line-height:43px!important;right:8px!important;font-size:12px!important}
 .yiting-consult .yiting-quote-bottom{display:block!important;margin-top:16px!important}
 .yiting-consult .yiting-quote-submit{width:100%!important;height:45px!important;font-size:14px!important}
 .yiting-consult .yiting-quote-bottom p{text-align:center!important;font-size:11px!important;margin:10px 0 0!important}
 /* mobile service scroll cards: fixed 165px, not intrinsic portrait/landscape height */
 .index-lingyu ul>li .box{height:165px!important;aspect-ratio:auto!important;position:relative!important}
 .index-lingyu ul>li .box>a{display:block!important;position:absolute!important;inset:0!important;height:165px!important}
 .index-lingyu ul>li .img,.index-lingyu ul>li .img img{display:block!important;width:100%!important;height:165px!important;object-fit:cover!important}
 /* mobile case cards are two equal-width columns, fixed 140px images */
 .list-anli ul{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.38rem .12rem!important;margin:0!important;padding:0!important}
 .list-anli ul>li,.list-anli ul>li:nth-child(2n+1),.list-anli ul>li:first-child{width:auto!important;height:auto!important;margin:0!important;float:none!important;clear:none!important;min-width:0!important}
 .list-anli ul>li .box{margin:0!important;height:auto!important}
 .list-anli ul>li .box>a{display:block!important;height:auto!important;position:static!important}
 .list-anli ul>li .img{height:140px!important;aspect-ratio:auto!important;overflow:hidden;margin-bottom:.20rem!important}
 .list-anli ul>li .img img{display:block!important;width:100%!important;height:140px!important;object-fit:cover!important;object-position:center!important}
 .list-anli ul>li .box .desc{position:static!important;height:auto!important;padding:0 .1rem!important;max-width:100%!important;color:#222}
 .list-anli ul>li .desc h2{color:#222!important;font-size:.34rem!important;height:.86rem!important;line-height:.43rem!important;white-space:normal!important}
 .list-anli ul>li .desc p{color:#777!important;font-size:.27rem!important}
 .list-lingyu ul li .img,.list-lingyu ul li .img img{height:230px!important;aspect-ratio:auto!important;object-fit:cover!important}
 .yiting-honor img{height:145px!important}
}
@media(max-width:370px){
 .yiting-consult .yiting-quote-fields{grid-template-columns:1fr!important}
 .list-anli ul>li .img,.list-anli ul>li .img img{height:128px!important}
}
