/* =========================================================
   Product + solution shared styles
   Reusable detail modules, catalog foundations and carousels.
   ========================================================= */
/* Shared carousels */
.product-featured{
  isolation:isolate;
}
.product-featured__eyebrow{
  position:absolute;
  z-index:6;
  top:3px;
  left:10%;
  margin:0;
  color:rgba(255,255,255,.58);
  font-size:11px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.14em;
}
.product-featured__slides{
  position:absolute;
  z-index:2;
  inset:28px 0 56px;
}
.product-featured__slide{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  transform:translate3d(18px,0,0);
  transition:opacity .45s ease,transform .45s cubic-bezier(.22,.61,.36,1);
}
.product-featured__slide.is-active{
  z-index:2;
  opacity:1;
  pointer-events:auto;
  transform:translate3d(0,0,0);
}
.product-featured__link{
  display:grid;
  height:100%;
  min-width:0;
  grid-template-rows:minmax(0,1fr) auto;
  color:inherit;
  text-decoration:none;
}
.product-featured__media{
  position:relative;
  display:flex;
  min-height:0;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:0 1% 6px 11%;
}
.product-featured__media img{
  display:block;
  width:auto;
  max-width:86%;
  height:auto;
  max-height:100%;
  object-fit:contain;
  filter:drop-shadow(0 24px 30px rgba(0,0,0,.3));
  transition:transform .35s ease;
}
.product-featured__slide--phone .product-featured__media img{
  max-width:74%;
  max-height:108%;
}
.product-featured__slide--console .product-featured__media img{
  max-width:92%;
  max-height:96%;
}
.product-featured__slide--gateway .product-featured__media img{
  max-width:94%;
  max-height:96%;
}
.product-featured__meta{
  display:flex;
  min-width:0;
  align-items:flex-end;
  justify-content:flex-start;
  gap:24px;
  padding:0 2% 0 10%;
}
.product-featured__meta > div{
  min-width:0;
  flex:0 1 auto;
  max-width:calc(100% - 112px);
}
.product-featured__category{
  display:block;
  margin-bottom:5px;
  color:#86d47a;
  font-size:11px;
  font-weight:600;
  line-height:1.25;
}
.product-featured__title{
  display:block;
  margin:0;
  color:#fff;
  font-size:clamp(19px,1.55vw,24px);
  font-weight:600;
  line-height:1.25;
  letter-spacing:-.02em;
  word-break:keep-all;
  overflow-wrap:normal;
}
.product-featured__cta{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  margin-left:4px;
  gap:7px;
  padding-bottom:3px;
  color:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:600;
  line-height:1.2;
}
.product-featured__cta > span{
  margin:0;
  color:inherit;
  font-size:inherit;
  transition:transform .2s ease;
}
.product-featured__link:hover .product-featured__media img,
.product-featured__link:focus-visible .product-featured__media img{
  transform:translateY(-4px);
}
.product-featured__link:hover .product-featured__cta > span,
.product-featured__link:focus-visible .product-featured__cta > span{
  transform:translateX(3px);
}
.product-featured__footer{
  position:absolute;
  z-index:6;
  right:2%;
  bottom:0;
  left:10%;
  display:flex;
  min-height:42px;
  align-items:center;
  gap:14px;
  padding:0;
}
.product-featured__counter{
  flex:0 0 auto;
  color:rgba(255,255,255,.6);
  font-size:11px;
  font-variant-numeric:tabular-nums;
  font-weight:600;
  line-height:1;
  letter-spacing:.08em;
}
.product-featured__dots{
  display:flex;
  min-width:0;
  align-items:center;
  gap:8px;
}
.product-featured__dots button{
  width:18px;
  height:18px;
  padding:0;
  background:transparent;
  border:0;
  border-radius:50%;
  cursor:pointer;
}
.product-featured__dots button::before{
  display:block;
  width:6px;
  height:6px;
  margin:auto;
  content:"";
  background:rgba(255,255,255,.34);
  border-radius:50%;
  transition:width .2s ease,background-color .2s ease,border-radius .2s ease;
}
.product-featured__dots button.is-active::before{
  width:16px;
  background:#86d47a;
  border-radius:999px;
}
.product-featured__controls{
  display:flex;
  flex:0 0 auto;
  align-items:center;
  gap:8px;
  margin-left:4px;
}
.product-featured__controls button{
  display:flex;
  width:36px;
  height:36px;
  align-items:center;
  justify-content:center;
  padding:0;
  color:rgba(255,255,255,.82);
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  border-radius:50%;
  cursor:pointer;
  font:inherit;
  font-size:16px;
  line-height:1;
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease;
}
.product-featured__controls button:hover{
  color:#fff;
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.22);
  transform:translateY(-1px);
}
.product-featured__controls button:focus-visible,
.product-featured__dots button:focus-visible,
.product-featured__link:focus-visible{
  outline:2px solid #86d47a;
  outline-offset:3px;
}
@media (max-width:1080px){
  .product-featured__eyebrow,
  .product-featured__footer{
    left:6%;
  }
  .product-featured__footer{
    right:3%;
  }
  .product-featured__media{
    padding-left:7%;
  }
  .product-featured__meta{
    padding-left:6%;
  }
}
@media (max-width:720px){
  .product-featured__slides{
    inset:24px 0 52px;
  }
  .product-featured__eyebrow{
    left:0;
    font-size:11px;
  }
  .product-featured__media{
    padding:0 1% 6px 2%;
  }
  .product-featured__slide--phone .product-featured__media img{
    max-width:58%;
  }
  .product-featured__slide--console .product-featured__media img,
  .product-featured__slide--gateway .product-featured__media img{
    max-width:76%;
  }
  .product-featured__meta{
    gap:14px;
    padding:0;
  }
  .product-featured__title{
    font-size:18px;
  }
  .product-featured__cta{
    display:none;
  }
  .product-featured__footer{
    right:0;
    left:0;
    min-height:38px;
    padding:0;
  }
  .product-featured__controls button{
    width:34px;
    height:34px;
  }
}
@media (max-width:520px){
  .product-featured__slides{
    inset:22px 0 48px;
  }
  .product-featured__slide--phone .product-featured__media img{
    max-width:64%;
  }
  .product-featured__slide--console .product-featured__media img,
  .product-featured__slide--gateway .product-featured__media img{
    max-width:88%;
  }
  .product-featured__title{
    font-size:16px;
  }
  .product-featured__counter{
    font-size:11px;
  }
  .product-featured__dots{
    gap:5px;
  }
  .product-featured__dots button{
    width:16px;
    height:16px;
  }
  .product-featured__controls{
    gap:6px;
  }
  .product-featured__controls button{
    width:32px;
    height:32px;
  }
}
@media (prefers-reduced-motion:reduce){
  .product-featured__slide,
  .product-featured__media img,
  .product-featured__cta > span{
    transition:none;
  }
}
.recommendation-section{
  padding:82px 0 72px;
  background:var(--site-surface);
}
.recommendation-section h2{
  margin:0 0 44px;
  color:#10161b;
  font-size:clamp(38px,3.2vw,50px);
  font-weight:600;
  line-height:1.08;
  text-align:center;
  letter-spacing:-.025em;
}
.recommendation-carousel{
  position:relative;
}
.recommendation-carousel__viewport{
  overflow:hidden;
}
.recommendation-carousel__track{
  display:flex;
  gap:24px;
  transition:transform .45s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
.recommendation-card{
  flex:0 0 calc((100% - 48px)/3);
  min-width:0;
  overflow:hidden;
  background:#fff;
  border:1px solid #e1e6e8;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,31,42,.04);
  transition:transform .22s ease,box-shadow .22s ease;
}
.recommendation-card:hover{
  box-shadow:0 16px 30px rgba(15,31,42,.09);
  transform:translateY(-3px);
}
.recommendation-card figure{
  aspect-ratio:16 / 9;
  overflow:hidden;
  margin:0;
  background:#eef1f1;
}
.recommendation-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.recommendation-card:hover img{
  transform:scale(1.025);
}
.recommendation-card > a > div{
  padding:20px 20px 22px;
  text-align:center;
}
.recommendation-card h3{
  margin:0;
  color:#2b343a;
  font-size:18px;
  font-weight:600;
  line-height:1.35;
}
.recommendation-card p{
  margin:8px 0 0;
  color:#8a9297;
  font-size:13px;
  line-height:1.2;
}
.recommendation-carousel__arrow{
  position:absolute;
  top:43%;
  z-index:3;
  display:flex;
  width:38px;
  height:38px;
  align-items:center;
  justify-content:center;
  padding:0 0 3px;
  color:#fff;
  background:var(--site-primary);
  border:0;
  border-radius:50%;
  box-shadow:0 8px 18px rgba(7,135,28,.22);
  cursor:pointer;
  font-size:31px;
  font-weight:400;
  line-height:1;
  transition:background-color .2s ease,transform .2s ease;
}
.recommendation-carousel__arrow:hover{
  background:var(--site-primary-dark);
  transform:scale(1.04);
}
.recommendation-carousel__arrow--prev{
  left:-16px;
}
.recommendation-carousel__arrow--next{
  right:-16px;
}
.recommendation-section__more{
  display:flex;
  justify-content:center;
  margin-top:34px;
}
.recommendation-section__more a{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  color:#fff;
  background:var(--site-primary);
  border-radius:999px;
  font-size:13px;
  font-weight:600;
  line-height:1;
  transition:background-color .2s ease,transform .2s ease;
}
.recommendation-section__more a:hover{
  background:var(--site-primary-dark);
  transform:translateY(-1px);
}
@media (max-width:900px){
  .recommendation-card{
    flex-basis:calc((100% - 20px)/2);
  }
  .recommendation-carousel__track{
    gap:20px;
  }
  .recommendation-carousel__arrow--prev{
    left:8px;
  }
  .recommendation-carousel__arrow--next{
    right:8px;
  }
}
@media (max-width:720px){
  .recommendation-section{
    padding:58px 0 54px;
  }
  .recommendation-section h2{
    margin-bottom:30px;
    font-size:34px;
  }
  .recommendation-card{
    flex-basis:82%;
  }
  .recommendation-card > a > div{
    padding:16px 15px 18px;
  }
  .recommendation-card h3{
    font-size:16px;
  }
}
@media (max-width:520px){
  .recommendation-card{
    flex-basis:88%;
  }
  .recommendation-carousel__arrow{
    width:34px;
    height:34px;
    font-size:27px;
  }
}
/* Shared product / solution detail modules */
.page-solution-scope{
      --campus-primary:var(--site-primary);
      --campus-primary-dark:var(--site-primary-dark);
      --campus-text:var(--site-ink);
      --campus-muted:var(--site-muted);
      --campus-line:var(--site-line);
      --campus-soft:var(--site-surface);
      --campus-white:var(--site-paper);
      --campus-width:var(--site-content-width);
      --campus-gutter:var(--site-content-gutter);
      --campus-h2-size:40px;
      --campus-h3-size:28px;
      --campus-radius-media:var(--site-radius-media);
      --campus-radius-card:var(--site-radius-card);
      --campus-radius-large:var(--site-radius-large);
      --campus-radius-recommend:20px;
      --becke-header-height:var(--site-header-height);
      --campus-subnav-height: 72px;
      --campus-anchor-gap: 0px;
      --campus-anchor-offset: calc(var(--campus-subnav-height) + var(--campus-anchor-gap));
      margin: 0;
      color: var(--campus-text);
      background: var(--campus-white);
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
.page-solution-scope .tuya-campus-page{
      overflow: clip;
      padding-top: var(--becke-header-height);
      background: #fff;
      --campus-sticky-top: var(--becke-header-height);
    }
.page-solution-scope .tuya-campus-shell{
      width: min(var(--campus-width), calc(100% - var(--campus-gutter)));
      margin: 0 auto;
    }
:where(.page-solution-scope .tuya-campus-page) h2{ font-size: var(--campus-h2-size); }
:where(.page-solution-scope .tuya-campus-page) h3{
      font-size: var(--campus-h3-size);
      font-weight: 600;
      line-height: 1.3;
      letter-spacing: -.02em;
    }
.page-solution-scope .tuya-campus-clip-defs{
      position: absolute;
      overflow: hidden;
    }
.page-solution-scope .tuya-campus-hero{
      position: relative;
      height: 622px;
      margin: 0 10px;
      overflow: hidden;
      isolation: isolate;
      background: linear-gradient(122deg, #f2f5fd 0%, #f2f7fc 47%, #f4fbfc 100%);
    }
.page-solution-scope .tuya-campus-hero__media{
      position: absolute;
      inset: 0 0 0 33.8%;
      z-index: -1;
      background: url("https://seapromotionstatic.cdn5th.com/static/223647084400852992.jpg") center 50% / cover no-repeat;
      -webkit-clip-path: url(#campus-hero-clip);
      clip-path: url(#campus-hero-clip);
    }
.page-solution-scope .tuya-campus-hero__arc{
      position: absolute;
      left: 41.8%;
      top: 38px;
      width: 220px;
      height: 177px;
      z-index: 0;
      pointer-events: none;
      opacity: .34;
      background: radial-gradient(circle at 0 100%,
        rgba(255, 255, 255, .62) 0 68px,
        transparent 69px 108px,
        rgba(255, 255, 255, .52) 109px 177px,
        transparent 178px);
    }
.page-solution-scope .tuya-campus-hero__dots{
      position: absolute;
      left: 51.1%;
      top: 24px;
      width: 146px;
      height: 92px;
      z-index: 2;
      pointer-events: none;
      opacity: .9;
      background-image: radial-gradient(circle, rgba(255, 255, 255, .96) 2px, transparent 2.2px);
      background-size: 18px 18px;
      -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 18%, #000 82%, transparent 100%);
      mask-image: linear-gradient(90deg, transparent 0, #000 18%, #000 82%, transparent 100%);
    }
.page-solution-scope .tuya-campus-hero__inner{
      position: relative;
      z-index: 3;
      width: min(var(--campus-width), calc(100% - var(--campus-gutter)));
      height: 100%;
      margin: 0 auto;
      display: flex;
      align-items: center;
    }
.page-solution-scope .tuya-campus-hero__copy{
      width: min(650px, 48%);
      transform: translateY(17px);
    }
.page-solution-scope .tuya-campus-hero h1{
      margin: 0;
      color: #171a1f;
      font-size: clamp(50px, 3vw, 60px);
      line-height: 1.12;
      letter-spacing: -.025em;
      font-weight: 600;
    }
.page-solution-scope .tuya-campus-hero p{
      margin: 25px 0 0;
      color: #858b95;
      font-size: 16px;
      line-height: 1.8;
    }
.page-solution-scope .tuya-campus-hero__actions{
      margin-top: 48px;
    }
.page-solution-scope .tuya-campus-subnav{
      position: sticky;
      top: var(--campus-sticky-top, 0px);
      z-index: 30;
      height: var(--campus-subnav-height);
      display: flex;
      align-items: center;
      background: rgba(255, 255, 255, .98);
      box-shadow: 0 10px 22px rgba(22, 31, 48, .055);
      backdrop-filter: blur(16px);
      transform: translateY(0);
      transition: transform .38s cubic-bezier(.22, .61, .36, 1), box-shadow .28s ease;
    }
.page-solution-scope .tuya-campus-subnav__inner{
      width: min(var(--campus-width), calc(100% - var(--campus-gutter)));
      height: 100%;
      margin: 0 auto;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: flex-start;
    }
.page-solution-scope .tuya-campus-subnav__title{
      position: absolute;
      left: 0;
      top: 50%;
      display: inline-flex;
      align-items: center;
      height: 100%;
      width: 0;
      overflow: hidden;
      opacity: 0;
      white-space: nowrap;
      font-size: 18px;
      font-weight: 600;
      color: #111317;
      transform: translate(-12px, -50%);
      pointer-events: none;
      transition: width .34s cubic-bezier(.22, .61, .36, 1), opacity .24s ease, transform .34s cubic-bezier(.22, .61, .36, 1);
    }
.page-solution-scope .tuya-campus-subnav__links{
      height: 100%;
      display: flex;
      align-items: stretch;
      gap: 48px;
      margin: 0;
      transform: translateX(0);
      transition: transform .38s cubic-bezier(.22, .61, .36, 1), gap .28s ease;
    }
.page-solution-scope .tuya-campus-subnav__cta{
      position: absolute;
      right: 0;
      top: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 0;
      min-height: 46px;
      padding: 0;
      overflow: hidden;
      border: 2px solid transparent;
      border-radius: 10px;
      background: var(--campus-primary);
      color: #fff;
      font-size: .95rem;
      font-weight: 600;
      line-height: 1;
      white-space: nowrap;
      opacity: 0;
      transform: translate(12px, -50%);
      pointer-events: none;
      transition: width .34s cubic-bezier(.22, .61, .36, 1), opacity .24s ease, transform .34s cubic-bezier(.22, .61, .36, 1), padding .34s ease, background-color .2s ease;
    }
.page-solution-scope .tuya-campus-subnav__cta:hover{
      background: var(--campus-primary-dark);
    }
.page-solution-scope .tuya-campus-subnav__link{
      position: relative;
      display: inline-flex;
      align-items: center;
      color: #24272d;
      font-size: 14px;
      white-space: nowrap;
      transition: color .2s ease;
    }
.page-solution-scope .tuya-campus-subnav__link::after{
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: 2px;
      background: var(--campus-primary);
      transform: scaleX(0);
      transform-origin: center;
      transition: transform .25s ease;
    }
.page-solution-scope .tuya-campus-subnav__link:hover,
.page-solution-scope .tuya-campus-subnav__link.is-active{ color: #101216; }
.page-solution-scope .tuya-campus-subnav__link:hover::after{ transform: scaleX(1); }
.page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__link.is-active{
      color: var(--campus-primary);
    }
.page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__link.is-active::after{
      transform: scaleX(0);
    }
.page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__title{
      width: 220px;
      opacity: 1;
      transform: translate(0, -50%);
    }
.page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__links{
      gap: 46px;
      transform: translateX(224px);
    }
.page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__cta{
      width: 194px;
      padding: 0 24px;
      opacity: 1;
      transform: translate(0, -50%);
      pointer-events: auto;
    }
.page-solution-scope :is(.tuya-campus-section, .contact-section){
      scroll-margin-top: var(--campus-anchor-offset);
    }
.page-solution-scope .tuya-campus-section{
      position: relative;
      padding: 88px 0;
    }
.page-solution-scope .tuya-campus-section--soft{ background: var(--campus-soft); }
.page-solution-scope .site-faq-section{ background: var(--campus-white); }
.page-solution-scope .tuya-campus-section__head{
      max-width: 780px;
      margin: 0 auto 48px;
      text-align: center;
    }
.page-solution-scope .tuya-campus-section__head h2{
      margin: 0;
      line-height: 1.2;
      letter-spacing: -.02em;
      font-weight: 600;
    }
.page-solution-scope .tuya-campus-section__head p{
      margin: 22px auto 0;
      color: var(--campus-muted);
      font-size: 16px;
      line-height: 1.9;
    }
.page-solution-scope .tuya-campus-overview-section{
      padding-bottom: 0;
    }
.page-solution-scope .tuya-campus-overview-section > .tuya-campus-shell .tuya-campus-section__head{
      margin-bottom: 48px;
    }
.page-solution-scope .tuya-campus-overview{
      width: 100%;
    }
.page-solution-scope .tuya-campus-overview__row{
      background: var(--campus-soft);
    }
.page-solution-scope .tuya-campus-overview__row:nth-child(even){
      background: var(--campus-white);
    }
.page-solution-scope .tuya-campus-overview__inner{
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
      align-items: center;
      gap: clamp(56px, 6vw, 96px);
      min-height: 560px;
      padding-top: clamp(52px, 4.8vw, 72px);
      padding-bottom: clamp(52px, 4.8vw, 72px);
    }
.page-solution-scope .tuya-campus-overview__row.tuya-campus-overview__row_right .tuya-campus-overview__visual{
      order: 2;
    }
.page-solution-scope .tuya-campus-overview__visual{
      overflow: hidden;
      aspect-ratio: 16 / 10;
      border-radius: var(--campus-radius-media);
      background: var(--campus-white);
    }
.page-solution-scope .tuya-campus-overview__visual img{
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
.page-solution-scope .tuya-campus-overview__copy{
      max-width: 610px;
    }
.page-solution-scope :is(.tuya-campus-overview__copy,.tuya-campus-overview__feature-copy).site-rich-content--embedded{
      --rich-text-color: var(--campus-muted);
      --rich-heading-color: var(--campus-text);
      --rich-h3-size: var(--campus-h3-size);
      --rich-h3-size-mobile: var(--campus-h3-size);
    }
.page-solution-scope .tuya-campus-overview__copy h3::after{
      content: "";
      width: 44px;
      height: 3px;
      display: block;
      margin-top: 20px;
      background: var(--campus-primary-dark);
      border-radius: 999px;
    }
.page-solution-scope .tuya-campus-overview__feature{
      padding-top: clamp(52px, 4.8vw, 72px);
      padding-bottom: clamp(52px, 4.8vw, 72px);
      text-align: center;
    }
.page-solution-scope .tuya-campus-overview__feature-copy{
      max-width: 1260px;
      margin: 0 auto;
    }
.page-solution-scope .tuya-campus-overview__feature-copy.site-rich-content--embedded{
      --rich-paragraph-margin: 28px 0 0;
      --rich-paragraph-margin-mobile: 20px 0 0;
    }
.page-solution-scope .tuya-campus-overview__feature-copy h3::after{
      content: "";
      width: 48px;
      height: 3px;
      display: block;
      margin: 20px auto 0;
      background: var(--campus-primary-dark);
      border-radius: 999px;
    }
.page-solution-scope .tuya-campus-overview__feature-media{
      width: min(100%, 1393px);
      margin: 24px auto 0;
      overflow: hidden;
      border-radius: var(--campus-radius-media);
      background: var(--campus-white);
    }
.page-solution-scope .tuya-campus-overview__feature-media img{
      width: 100%;
      height: auto;
      display: block;
    }
.page-solution-scope .tuya-campus-inline-link{
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-top: 28px;
      color: var(--campus-text);
      font-size: 15px;
      font-weight: 600;
    }
.page-solution-scope .tuya-campus-inline-link--light{ color: #fff; }
.page-solution-scope .tuya-campus-inline-link::after{
      width: 26px;
      height: 1px;
      content: "";
      background: var(--campus-primary);
      transition: width .2s ease;
    }
.page-solution-scope .tuya-campus-inline-link:hover::after{ width: 38px; }
.page-solution-scope .tuya-campus-pain-grid{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 20px;
    }
.page-solution-scope .tuya-campus-pain-card{
      position: relative;
      display: flex;
      flex-direction: column;
      min-height: 350px;
      padding: 30px 27px 27px;
      background: #fff;
      border: 1px solid var(--campus-line);
      border-radius: var(--campus-radius-card);
      box-shadow: 8px 9px 0 var(--pain-accent);
      transition: transform .24s ease, box-shadow .24s ease;
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(1){
      --pain-accent: var(--campus-primary);
      --pain-icon-color: var(--campus-primary-dark);
      --pain-icon-bg: #e8f5ea;
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(2){
      --pain-accent: var(--site-system-blue);
      --pain-icon-color: #1f668f;
      --pain-icon-bg: #eaf3f8;
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(3){
      --pain-accent: var(--site-slate);
      --pain-icon-color: #3c5665;
      --pain-icon-bg: #edf2f4;
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(4){
      --pain-accent: #8a6d3b;
      --pain-icon-color: #72582f;
      --pain-icon-bg: #f5f0e7;
    }
.page-solution-scope .tuya-campus-pain-card:hover{
      transform: translate(-3px, -5px);
      box-shadow: 13px 15px 0 var(--pain-accent);
    }
.page-solution-scope .tuya-campus-pain-card__icon{
      display: grid;
      place-items: center;
      width: 54px;
      height: 54px;
      margin-bottom: 26px;
      border-radius: 16px;
      color: var(--pain-icon-color);
      background: var(--pain-icon-bg);
    }
.page-solution-scope .tuya-campus-pain-card__icon .site-icon{
      width: 29px;
      height: 29px;
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(1) .tuya-campus-pain-card__icon .site-icon{
      filter:var(--site-icon-filter-primary-dark);
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(2) .tuya-campus-pain-card__icon .site-icon{
      filter:var(--site-icon-filter-system);
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(3) .tuya-campus-pain-card__icon .site-icon{
      filter:var(--site-icon-filter-slate);
    }
.page-solution-scope .tuya-campus-pain-card:nth-child(4) .tuya-campus-pain-card__icon .site-icon{
      filter:invert(60.9%) sepia(21.8%) saturate(772%) hue-rotate(-2.3deg) brightness(57.2%) contrast(106.7%);
    }
.page-solution-scope .tuya-campus-pain-card h3{
      margin: 0 0 14px;
      color: var(--campus-text);
    }
.page-solution-scope .tuya-campus-pain-card p{
      margin: 0;
      color: var(--campus-muted);
      font-size: .94rem;
      line-height: 1.75;
    }
.page-solution-scope .tuya-campus-architecture{
      margin-top: 18px;
      padding: 36px;
      background: #fff;
      border: 1px solid #eceef1;
      box-shadow: 0 12px 44px rgba(20, 26, 38, 0.05);
    }
.page-solution-scope .tuya-campus-architecture img{ width: 100%; }
.page-solution-scope :is(.tuya-campus-overview__row--gis, .tuya-campus-overview__row--visual-right){
      background: transparent;
    }
.page-solution-scope .tuya-campus-gis{
      position: relative;
      width: 100%;
      min-height: 600px;
      overflow: hidden;
    }
.page-solution-scope .tuya-campus-gis--map{
      background:
        linear-gradient(90deg, rgba(43, 61, 94, .94) 0%, rgba(55, 75, 111, .80) 30%, rgba(78, 96, 129, .30) 54%, rgba(255, 255, 255, 0) 74%),
        url("https://www.keneuc.cn/uploads/allimg/20260727/1-260HG62S0b1.webp") center center / cover no-repeat;
    }
.page-solution-scope .tuya-campus-gis--right{
      background:
        linear-gradient(270deg, rgba(43, 61, 94, .94) 0%, rgba(55, 75, 111, .80) 30%, rgba(78, 96, 129, .30) 54%, rgba(255, 255, 255, 0) 74%),
        url("https://ex.becke.com.cn/uploads/allimg/20251227/1-25122G5051H30.webp") center center / cover no-repeat;
    }
.page-solution-scope .tuya-campus-gis__inner{
      position: relative;
      min-height: 600px;
    }
.page-solution-scope .tuya-campus-gis__copy{
      position: absolute;
      top: 50%;
      left: 0;
      width: min(43%, 590px);
      color: #fff;
      transform: translateY(-50%);
    }
.page-solution-scope .tuya-campus-gis--right .tuya-campus-gis__copy{
      right: 0;
      left: auto;
    }
.page-solution-scope .tuya-campus-gis__copy h3{
      margin: 0;
      color: #fff;
    }
.page-solution-scope .tuya-campus-gis__mobile-viewport{
      display: none;
    }
.page-solution-scope .tuya-campus-gis__mobile-media{
      display: block;
    }
.page-solution-scope .tuya-campus-gis__copy h3::after{
      content: "";
      width: 72px;
      height: 4px;
      display: block;
      margin-top: 24px;
      background: #58a33d;
      border-radius: 999px;
    }
.page-solution-scope .tuya-campus-gis__copy p{
      margin: 18px 0 0;
      color: rgba(255, 255, 255, .92);
      font-size: 16px;
      line-height: 1.9;
    }
.page-solution-scope .tuya-campus-vms-tabs{
      background: var(--campus-white);
    }
.page-solution-scope .tuya-campus-vms-tabs__nav{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      background: var(--campus-white);
    }
.page-solution-scope .tuya-campus-vms-tabs__nav--five{
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
.page-solution-scope .tuya-campus-vms-tab{
      position: relative;
      min-height: 74px;
      padding: 16px 20px;
      border: 0;
      background: transparent;
      color: var(--campus-muted);
      cursor: pointer;
      font-size: 15px;
      line-height: 1.45;
      transition: color .2s ease, background-color .2s ease;
    }
.page-solution-scope .tuya-campus-vms-tab::after{
      content: "";
      position: absolute;
      left: 22px;
      right: 22px;
      bottom: -1px;
      height: 3px;
      background: var(--campus-primary);
      transform: scaleX(0);
      transform-origin: center;
      transition: transform .22s ease;
    }
.page-solution-scope .tuya-campus-vms-tab.is-active::after{
      transform: scaleX(1);
    }
.page-solution-scope .tuya-campus-vms-panel{
      display: grid;
      background: var(--campus-white);
      opacity: 1;
      transform: none;
      transition: opacity .2s ease, transform .2s ease;
    }
.page-solution-scope .tuya-campus-vms-panel.is-entering,
    .page-solution-scope .tuya-campus-scene-view.is-entering{
      opacity: 0;
      transform: translateY(8px);
    }
.page-solution-scope .tuya-campus-vms-panel[hidden],
    .page-solution-scope .tuya-campus-scene-view[hidden]{
      display: none !important;
    }
.page-solution-scope .tuya-campus-vms-panel__media{
      margin: 0;
      overflow: hidden;
      background: var(--campus-soft);
    }
.page-solution-scope .tuya-campus-vms-panel__media img{
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
    }
.page-solution-scope .tuya-campus-vms-panel__media--contain img{
      object-fit: contain;
    }
.page-solution-scope .tuya-campus-vms-panel__copy{
      align-self: center;
    }
.page-solution-scope .tuya-campus-vms-panel__copy h3{
      margin: 0;
    }
.page-solution-scope .tuya-campus-vms-panel__copy > p{
      max-width: 600px;
      margin: 22px 0 0;
      color: var(--campus-muted);
      font-size: 16px;
      line-height: 1.9;
    }
.page-solution-scope .tuya-campus-section__head--scenes{
      margin-bottom: 18px;
    }
.page-solution-scope :is(.tuya-campus-vms-tabs--scenes, .tuya-campus-vms-tabs--advantages){
      background: transparent;
    }
.page-solution-scope :is(.tuya-campus-vms-tabs--scenes, .tuya-campus-vms-tabs--advantages) .tuya-campus-vms-tabs__nav{
      position: relative;
      width: max-content;
      max-width: min(100%, var(--campus-width));
      display: flex;
      flex-wrap: nowrap;
      justify-content: center;
      margin-inline: auto;
      background: transparent;
    }
.page-solution-scope :is(.tuya-campus-vms-tabs--scenes, .tuya-campus-vms-tabs--advantages) .tuya-campus-vms-tabs__nav::before{
      content: "";
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      height: 1px;
      background: var(--campus-line);
      box-shadow: 0 0 0 100vmax var(--campus-line);
      -webkit-clip-path: inset(0 -100vmax);
      clip-path: inset(0 -100vmax);
      pointer-events: none;
    }
.page-solution-scope :is(.tuya-campus-vms-tabs--scenes, .tuya-campus-vms-tabs--advantages) .tuya-campus-vms-tab{
      flex: 0 0 auto;
      min-width: 0;
      min-height: 62px;
      padding: 14px clamp(18px, 1.9vw, 28px);
      color: var(--campus-text);
      font-size: clamp(12px, 1.08vw, 16px);
      font-weight: 600;
      line-height: 1.4;
      letter-spacing: -.01em;
      white-space: nowrap;
    }
.page-solution-scope :is(.tuya-campus-vms-tabs--scenes, .tuya-campus-vms-tabs--advantages) .tuya-campus-vms-tab::after{
      left: 10px;
      right: 10px;
      height: 3px;
    }
.page-solution-scope :is(.tuya-campus-vms-tabs--scenes, .tuya-campus-vms-tabs--advantages) .tuya-campus-vms-tab:hover,
    .page-solution-scope :is(.tuya-campus-vms-tabs--scenes, .tuya-campus-vms-tabs--advantages) .tuya-campus-vms-tab.is-active{
      color: var(--campus-primary-dark);
      background: transparent;
    }
.page-solution-scope .tuya-campus-scene-view{
      opacity: 1;
      transform: none;
      transition: opacity .2s ease, transform .2s ease;
    }
.page-solution-scope .tuya-campus-scene-view__description{
      max-width: 1120px;
      margin: clamp(32px, 3vw, 44px) auto 0;
      color: var(--campus-muted);
      font-size: 16px;
      line-height: 1.85;
      text-align: center;
    }
.page-solution-scope .tuya-campus-scene-view__media{
      width: 92%;
      margin: clamp(24px, 2.6vw, 34px) auto 0;
      aspect-ratio: 2 / 1;
      overflow: hidden;
      border-radius: var(--campus-radius-media);
      background: var(--campus-white);
    }
.page-solution-scope .tuya-campus-scene-view__media img{
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
    }
.page-solution-scope .tuya-campus-section__head--advantages{
      margin-bottom: 18px;
    }
.page-solution-scope .tuya-campus-vms-tabs--advantages .tuya-campus-vms-panel{
      grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
      align-items: center;
      gap: clamp(54px, 6vw, 92px);
      min-height: 0;
      padding: clamp(44px, 4.2vw, 64px) clamp(0px, 2.4vw, 34px) 0;
      background: transparent;
    }
.page-solution-scope .tuya-campus-vms-tabs--advantages .tuya-campus-vms-panel__media{
      min-height: 0;
      aspect-ratio: 16 / 10;
      border-radius: var(--campus-radius-media);
      background: var(--campus-soft);
    }
.page-solution-scope .tuya-campus-vms-tabs--advantages .tuya-campus-vms-panel__media--contain{
      padding: clamp(18px, 2vw, 30px);
    }
.page-solution-scope .tuya-campus-vms-tabs--advantages .tuya-campus-vms-panel__copy{
      padding: 0;
    }
.page-solution-scope .tuya-campus-vms-tabs--advantages .tuya-campus-vms-panel__copy h3::after{
      content: "";
      width: 72px;
      height: 4px;
      display: block;
      margin-top: 26px;
      background: var(--campus-primary-dark);
      border-radius: 999px;
    }
.page-solution-scope .tuya-campus-vms-tabs--advantages .tuya-campus-vms-panel__copy > p{
      max-width: 640px;
      margin-top: 28px;
    }
.page-solution-scope .tuya-campus-cases{
      --campus-case-offset: 0%;
    }
.page-solution-scope .tuya-campus-cases__viewport{
      position: relative;
      overflow: hidden;
      border-radius: clamp(20px, 2vw, var(--campus-radius-large));
      background: #171b22;
      outline: none;
    }
.page-solution-scope .tuya-campus-cases__viewport:focus-visible{
      box-shadow: 0 0 0 3px rgba(29, 140, 94, .2);
    }
.page-solution-scope .tuya-campus-cases__track{
      display: flex;
      transform: translate3d(var(--campus-case-offset), 0, 0);
      transition: transform .55s cubic-bezier(.22, .61, .36, 1);
      will-change: transform;
    }
.page-solution-scope .tuya-campus-case{
      display: grid;
      grid-template-columns: 1.08fr .92fr;
      flex: 0 0 100%;
      min-width: 0;
      min-height: 520px;
      background: #171b22;
      color: #fff;
    }
.page-solution-scope .tuya-campus-case:not(.is-active){
      pointer-events: none;
    }
.page-solution-scope .tuya-campus-case__media{
      min-height: 520px;
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
    }
.page-solution-scope .tuya-campus-case__media--01{
      background-image: linear-gradient(rgba(10, 14, 20, .08), rgba(10, 14, 20, .08)), url("https://seapromotionstatic.cdn5th.com/static/223647084400852992.jpg");
    }
.page-solution-scope .tuya-campus-case__media--02{
      background-image: linear-gradient(rgba(10, 14, 20, .08), rgba(10, 14, 20, .08)), url("https://seapromotionstatic.cdn5th.com/static/282399598117642240.png");
    }
.page-solution-scope .tuya-campus-case__media--03{
      background-image: linear-gradient(rgba(10, 14, 20, .08), rgba(10, 14, 20, .08)), url("https://seapromotionstatic.cdn5th.com/static/282399475048374272.png");
    }
.page-solution-scope .tuya-campus-case__media--04{
      background-image: linear-gradient(rgba(10, 14, 20, .08), rgba(10, 14, 20, .08)), url("https://seapromotionstatic.cdn5th.com/static/316478369485279232.jpg");
    }
.page-solution-scope .tuya-campus-case__copy{
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 70px 76px;
    }
.page-solution-scope .tuya-campus-case__tag{
      margin-bottom: 20px;
      color: #ff8a61;
      font-size: 13px;
      font-weight: 600;
      letter-spacing: .15em;
      text-transform: uppercase;
    }
.page-solution-scope .tuya-campus-case__copy h3{
      margin: 0;
    }
.page-solution-scope .tuya-campus-case__copy p{
      margin: 24px 0 0;
      color: rgba(255, 255, 255, .72);
      font-size: 15px;
      line-height: 1.95;
    }
.page-solution-scope .tuya-campus-cases__controls{
      position: absolute;
      right: 28px;
      bottom: 28px;
      z-index: 3;
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 9px 10px 9px 14px;
      border: 1px solid rgba(255, 255, 255, .14);
      border-radius: 999px;
      background: rgba(14, 18, 24, .78);
      box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
    }
.page-solution-scope .tuya-campus-cases__dots{
      display: flex;
      align-items: center;
      gap: 6px;
    }
.page-solution-scope .tuya-campus-cases__dot{
      width: 7px;
      height: 7px;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, .32);
      cursor: pointer;
      transition: width .3s ease, background .3s ease;
    }
.page-solution-scope .tuya-campus-cases__dot:hover{
      background: rgba(255, 255, 255, .66);
    }
.page-solution-scope .tuya-campus-cases__dot.is-active{
      width: 24px;
      background: var(--campus-primary);
    }
.page-solution-scope .tuya-campus-cases__dot:focus-visible{
      outline: 2px solid #fff;
      outline-offset: 3px;
    }
.page-solution-scope .tuya-campus-cases__counter{
      padding-left: 14px;
      border-left: 1px solid rgba(255, 255, 255, .14);
      color: rgba(255, 255, 255, .72);
      font-size: 12px;
      font-weight: 600;
      font-variant-numeric: tabular-nums;
      letter-spacing: .08em;
      white-space: nowrap;
    }
.page-solution-scope .tuya-campus-cases__arrows{
      display: flex;
      align-items: center;
      gap: 4px;
    }
.page-solution-scope .tuya-campus-cases__arrow{
      display: inline-flex;
      width: 34px;
      height: 34px;
      align-items: center;
      justify-content: center;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: rgba(255, 255, 255, .08);
      color: #fff;
      font-size: 17px;
      line-height: 1;
      cursor: pointer;
      transition: background .25s ease, color .25s ease;
    }
.page-solution-scope .tuya-campus-cases__arrow:hover{
      background: #fff;
      color: var(--campus-text);
    }
.page-solution-scope .tuya-campus-cases__arrow:focus-visible{
      outline: 2px solid #fff;
      outline-offset: 3px;
    }
.page-solution-scope .tuya-campus-recommend-grid{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 26px;
    }
.page-solution-scope .tuya-campus-recommend-card{
      position: relative;
      aspect-ratio: 16 / 10;
      overflow: hidden;
      color: #fff;
      border-radius: var(--campus-radius-recommend);
      isolation: isolate;
    }
.page-solution-scope .tuya-campus-recommend-card--01{ --recommend-image: url("https://seapromotionstatic.cdn5th.com/static/282399475048374272.png"); }
.page-solution-scope .tuya-campus-recommend-card--02{ --recommend-image: url("https://seapromotionstatic.cdn5th.com/static/282399598117642240.png"); }
.page-solution-scope .tuya-campus-recommend-card--03{ --recommend-image: url("https://seapromotionstatic.cdn5th.com/static/223647084400852992.jpg"); }
.page-solution-scope .tuya-campus-recommend-card::before{
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2;
      background: var(--recommend-image) center / cover no-repeat;
      transition: transform .55s ease;
    }
.page-solution-scope .tuya-campus-recommend-card::after{
      content: "";
      position: absolute;
      inset: 0;
      z-index: -1;
      background: linear-gradient(180deg, rgba(11, 15, 21, .06) 20%, rgba(11, 15, 21, .8) 100%);
    }
.page-solution-scope .tuya-campus-recommend-card:hover::before{ transform: scale(1.045); }
.page-solution-scope .tuya-campus-recommend-card__copy{
      position: absolute;
      left: 34px;
      right: 34px;
      bottom: 32px;
    }
.page-solution-scope .tuya-campus-recommend-card__copy h3{
      margin: 0;
    }
.page-solution-scope .tuya-campus-recommend-card__copy p{
      margin: 12px 0 0;
      color: rgba(255, 255, 255, .76);
      font-size: 14px;
      line-height: 1.7;
    }

.page-solution-scope [data-campus-reveal]{
      opacity: 0;
      transform: translateY(28px);
      transition: opacity .7s ease, transform .7s ease;
    }
.page-solution-scope [data-campus-reveal].is-visible{
      opacity: 1;
      transform: none;
    }
@media (max-width: 1100px) {
  .page-solution-scope .tuya-campus-overview__inner{ gap: 48px; }

    .page-solution-scope .tuya-campus-vms-tabs--advantages .tuya-campus-vms-panel{ gap: 48px; }

    .page-solution-scope .tuya-campus-case__copy{ padding: 54px 48px; }
}
@media (max-width: 900px) {
  .page-solution-scope .tuya-campus-hero{
          height: auto;
          margin: 0;
          display: flex;
          flex-direction: column;
        }

    .page-solution-scope .tuya-campus-hero__inner{
          order: 1;
          width: min(100% - 48px, 720px);
          height: auto;
          align-items: flex-start;
          padding: 72px 0 48px;
        }

    .page-solution-scope .tuya-campus-hero__copy{
          width: 100%;
          max-width: 610px;
          transform: none;
        }

    .page-solution-scope .tuya-campus-hero__media{
          position: relative;
          order: 2;
          inset: auto;
          z-index: 1;
          width: 100%;
          aspect-ratio: 16 / 10;
          background-position: center;
          -webkit-clip-path: none;
          clip-path: none;
        }

    .page-solution-scope .tuya-campus-hero__arc,
    .page-solution-scope .tuya-campus-hero__dots{
          display: none;
        }

    .page-solution-scope .tuya-campus-subnav__inner{
          width: 100%;
          min-width: 0;
          padding-left: 24px;
          padding-right: 24px;
          overflow: hidden;
        }

    .page-solution-scope .tuya-campus-subnav__title,
  .page-solution-scope .tuya-campus-subnav__cta,
  .page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__title,
  .page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__cta{ display: none; }

    .page-solution-scope .tuya-campus-subnav__links,
  .page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__links{
          flex: 1 1 auto;
          min-width: 0;
          margin: 0;
          overflow-x: auto;
          overflow-y: hidden;
          padding: 0;
          scrollbar-width: none;
          overscroll-behavior-inline: contain;
          -webkit-overflow-scrolling: touch;
        }

    .page-solution-scope .tuya-campus-subnav__links::-webkit-scrollbar{ display: none; }

    .page-solution-scope .tuya-campus-subnav__link{
          flex: 0 0 auto;
        }

    .page-solution-scope .tuya-campus-subnav__link.is-active{
          color: var(--campus-primary);
        }

    .page-solution-scope .tuya-campus-subnav__link.is-active::after{
          transform: scaleX(1);
        }

    .page-solution-scope .tuya-campus-section{ padding: 72px 0; }

    .page-solution-scope .tuya-campus-section__head{ margin-bottom: 40px; }

    .page-solution-scope :is(.tuya-campus-section__head--advantages, .tuya-campus-section__head--scenes){ margin-bottom: 18px; }

    .page-solution-scope .tuya-campus-overview-section{ padding-bottom: 0; }

    .page-solution-scope .tuya-campus-overview-section > .tuya-campus-shell .tuya-campus-section__head{ margin-bottom: 40px; }

    .page-solution-scope .tuya-campus-overview__inner{
          grid-template-columns: 1fr;
          gap: 28px;
          min-height: 0;
          padding-top: 48px;
          padding-bottom: 48px;
        }

    .page-solution-scope .tuya-campus-overview__copy{ max-width: none; }

    .page-solution-scope .tuya-campus-overview__feature{ padding-top: 48px; padding-bottom: 48px; }

    .page-solution-scope .tuya-campus-gis,
        .page-solution-scope .tuya-campus-gis__inner{
          min-height: 520px;
        }

    .page-solution-scope .tuya-campus-gis--map{
          background-position: 62% center;
        }

    .page-solution-scope .tuya-campus-gis--right{
          background-position: 38% center;
        }

    .page-solution-scope .tuya-campus-gis__copy{
          width: min(52%, 520px);
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tabs__nav{
          display: block;
          overflow: visible;
          border-top: 1px solid var(--campus-line);
          border-bottom: 0;
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tabs__nav::before{
          display: none;
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tab{
          width: 100%;
          min-width: 0;
          min-height: 62px;
          display: flex;
          align-items: center;
          padding: 16px 44px 16px 0;
          border-bottom: 1px solid var(--campus-line);
          color: var(--campus-text);
          font-size: 16px;
          font-weight: 600;
          line-height: 1.45;
          text-align: left;
          white-space: nowrap;
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tab::after{
          display: none;
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tab::before{
          content: "+";
          position: absolute;
          top: 50%;
          right: 2px;
          width: 28px;
          height: 28px;
          display: grid;
          place-items: center;
          color: var(--campus-muted);
          font-size: 24px;
          font-weight: 400;
          line-height: 1;
          transform: translateY(-50%);
          transition: color .2s ease, transform .2s ease;
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tab.is-active{
          color: var(--campus-primary-dark);
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tab.is-active::before{
          content: "−";
          color: var(--campus-primary-dark);
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tabs__panels{
          display: none;
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-panel,
        .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-scene-view{
          width: 100%;
          border-bottom: 1px solid var(--campus-line);
        }

    .page-solution-scope .tuya-campus-scene-view__description{
          max-width: 760px;
          margin-top: 36px;
          padding: 0 12px;
        }

    .page-solution-scope .tuya-campus-scene-view__media{
          width: 100%;
          margin-top: 24px;
        }

    .page-solution-scope .tuya-campus-vms-tabs--advantages.is-accordion .tuya-campus-vms-panel{
          grid-template-columns: 1fr;
          gap: 24px;
          min-height: 0;
          padding: 24px 0 30px;
        }

    .page-solution-scope .tuya-campus-vms-tabs--advantages.is-accordion .tuya-campus-vms-panel__media{
          min-height: 0;
        }

    .page-solution-scope .tuya-campus-vms-tabs--advantages.is-accordion .tuya-campus-vms-panel__copy h3{
          display: none;
        }

    .page-solution-scope .tuya-campus-vms-tabs--advantages.is-accordion .tuya-campus-vms-panel__copy > p{
          max-width: none;
          margin-top: 0;
        }

    .page-solution-scope .tuya-campus-vms-tabs--scenes.is-accordion .tuya-campus-scene-view{
          padding: 24px 0 30px;
        }

    .page-solution-scope .tuya-campus-vms-tabs--scenes.is-accordion .tuya-campus-scene-view__description{
          max-width: none;
          margin: 0;
          padding: 0;
          text-align: left;
        }

    .page-solution-scope .tuya-campus-vms-tabs--scenes.is-accordion .tuya-campus-scene-view__media{
          width: 100%;
          margin-top: 22px;
        }

    .page-solution-scope .tuya-campus-pain-grid{ grid-template-columns: 1fr; }

    .page-solution-scope .tuya-campus-case{ grid-template-columns: 1fr; }

    .page-solution-scope .tuya-campus-case__media{ min-height: 390px; }

    .page-solution-scope .tuya-campus-case__copy{ padding-bottom: 112px; }

    .page-solution-scope .tuya-campus-recommend-grid{ grid-template-columns: 1fr; }
}
@media (min-width: 641px) and (max-width: 900px) {
  .page-solution-scope .tuya-campus-overview__row:nth-child(even) .tuya-campus-overview__visual{ order: 0; }
}
@media (max-width: 640px) {
  .page-solution-scope{
          --campus-h2-size: 32px;
          --campus-h3-size: 24px;
          --campus-radius-media: 12px;
          --campus-radius-large: 20px;
          --campus-subnav-height: 64px;
        }

    .page-solution-scope .tuya-campus-shell{ width: min(100% - 32px, var(--campus-width)); }

    .page-solution-scope .tuya-campus-hero__inner{
          width: calc(100% - 32px);
          padding: 52px 0 38px;
        }

    .page-solution-scope .tuya-campus-hero h1{ font-size: 40px; }

    .page-solution-scope .tuya-campus-hero p{ margin-top: 20px; font-size: 15px; line-height: 1.75; }

    .page-solution-scope .tuya-campus-hero__actions{ margin-top: 30px; }

    .page-solution-scope .tuya-campus-hero__media{
          aspect-ratio: 16 / 10;
          background-size: cover;
          background-position: center;
        }

    .page-solution-scope .tuya-campus-subnav__inner{ padding-left: 16px; padding-right: 16px; }

    .page-solution-scope .tuya-campus-subnav__links,
  .page-solution-scope .tuya-campus-subnav.is-scrolled .tuya-campus-subnav__links{
          gap: 30px;
        }

    .page-solution-scope .tuya-campus-section{ padding: 60px 0; }

    .page-solution-scope .tuya-campus-section__head{ margin-bottom: 32px; }

    .page-solution-scope :is(.tuya-campus-section__head--advantages, .tuya-campus-section__head--scenes){ margin-bottom: 18px; }

    .page-solution-scope .tuya-campus-overview-section{ padding-bottom: 0; }

    .page-solution-scope .tuya-campus-overview-section > .tuya-campus-shell .tuya-campus-section__head{ margin-bottom: 32px; }

    .page-solution-scope .tuya-campus-overview__inner{
          gap: 0;
          padding-top: 38px;
          padding-bottom: 38px;
        }

    .page-solution-scope .tuya-campus-overview__copy{
          display: contents;
        }

    .page-solution-scope .tuya-campus-overview__copy > *{
          order: 3;
        }

    .page-solution-scope .tuya-campus-overview__copy > h3{
          order: 1;
        }

    .page-solution-scope .tuya-campus-overview__visual{
          order: 2;
          margin-top: 22px;
        }

    .page-solution-scope .tuya-campus-overview__copy h3::after{
          width: 40px;
          margin-top: 16px;
        }

    .page-solution-scope .tuya-campus-overview__feature{
          display: grid;
          grid-template-columns: 1fr;
          gap: 0;
          padding-top: 40px;
          padding-bottom: 40px;
        }

    .page-solution-scope .tuya-campus-overview__feature-copy{
          display: contents;
        }

    .page-solution-scope .tuya-campus-overview__feature-copy > *{
          order: 3;
        }

    .page-solution-scope .tuya-campus-overview__feature-copy > h3{
          order: 1;
        }

    .page-solution-scope .tuya-campus-overview__feature-copy h3::after{
          width: 40px;
          margin-top: 16px;
        }

    .page-solution-scope .tuya-campus-overview__feature-media{
          order: 2;
          margin-top: 22px;
        }

    .page-solution-scope .tuya-campus-pain-card{ min-height: 0; padding: 30px 27px 27px; }

    .page-solution-scope .tuya-campus-architecture{ padding: 12px; overflow-x: auto; }

    .page-solution-scope .tuya-campus-architecture img{ min-width: 760px; }

    .page-solution-scope .tuya-campus-overview__row--gis{
          background: var(--campus-soft);
        }

    .page-solution-scope .tuya-campus-overview__row--visual-right{
          background: var(--campus-white);
        }

    .page-solution-scope .tuya-campus-gis{
          min-height: 0;
          overflow: visible;
          background: none;
        }

    .page-solution-scope .tuya-campus-gis__mobile-viewport{
          display: block;
          margin-top: 16px;
          overflow: hidden;
        }

    .page-solution-scope .tuya-campus-gis__mobile-media{
          width: 100%;
          max-width: none;
          height: auto;
          margin-left: 0;
        }

    .page-solution-scope .tuya-campus-gis__inner{
          min-height: 0;
          padding-top: 28px;
          padding-bottom: 44px;
        }

    .page-solution-scope .tuya-campus-gis__copy,
        .page-solution-scope .tuya-campus-gis--right .tuya-campus-gis__copy{
          position: static;
          width: 100%;
          color: var(--campus-text);
          transform: none;
        }

    .page-solution-scope .tuya-campus-gis__copy h3{
          color: var(--campus-text);
        }

    .page-solution-scope .tuya-campus-gis__copy h3::after{
          width: 40px;
          height: 3px;
          margin-top: 16px;
          background: var(--campus-primary-dark);
        }

    .page-solution-scope .tuya-campus-gis__copy p{
          max-width: none;
          margin-top: 16px;
          color: var(--campus-muted);
          font-size: 15px;
          line-height: 1.8;
        }

    .page-solution-scope .tuya-campus-vms-tabs.is-accordion .tuya-campus-vms-tab{
          min-height: 58px;
          padding-top: 14px;
          padding-bottom: 14px;
          font-size: 16px;
        }

    .page-solution-scope .tuya-campus-vms-tabs--scenes.is-accordion .tuya-campus-scene-view{
          display: flex;
          flex-direction: column;
        }

    .page-solution-scope .tuya-campus-vms-tabs--scenes.is-accordion .tuya-campus-scene-view__media{
          order: 1;
          margin-top: 0;
          aspect-ratio: 16 / 9;
        }

    .page-solution-scope .tuya-campus-vms-tabs--scenes.is-accordion .tuya-campus-scene-view__description{
          order: 2;
          margin-top: 18px;
          padding: 0;
          font-size: 15px;
          line-height: 1.8;
        }

    .page-solution-scope .tuya-campus-vms-panel__copy > p{
          font-size: 15px;
          line-height: 1.8;
        }

    .page-solution-scope .tuya-campus-case__media{ min-height: 300px; }

    .page-solution-scope .tuya-campus-case__copy{ padding: 42px 28px 106px; }

    .page-solution-scope .tuya-campus-cases__controls{ right: 18px; bottom: 18px; gap: 10px; padding: 8px 8px 8px 12px; }

    .page-solution-scope .tuya-campus-cases__counter{ padding-left: 10px; }

    .page-solution-scope .tuya-campus-cases__arrow{ width: 32px; height: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  .page-solution-scope{ scroll-behavior: auto; }

    .page-solution-scope *,
  .page-solution-scope *::before,
  .page-solution-scope *::after{ transition-duration: .01ms !important; animation-duration: .01ms !important; }

    .page-solution-scope [data-campus-reveal]{ opacity: 1; transform: none; }
}
@media (min-width:1081px) {
  .page-solution-scope .tuya-campus-subnav.is-scrolled{
          transform: translateY(calc(-1 * var(--becke-header-height)));
          box-shadow: 0 10px 28px rgba(22, 31, 48, .09);
        }
}
@media (max-width:1080px) {
  .page-solution-scope{
          --becke-header-height: 72px;
          --campus-anchor-offset: calc(var(--becke-header-height) + var(--campus-subnav-height) + var(--campus-anchor-gap));
        }

    .page-solution-scope .tuya-campus-page{ --campus-sticky-top: var(--becke-header-height); }
}
/* Shared catalog foundations */
.product-list-page,
.solution-list2-main{
  --catalog-line:#e4e9eb;
  padding-top:var(--site-header-height);
  color:var(--site-ink);
  background:#fff;
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.product-list-hero{
  position:relative;
  min-height:clamp(540px,35vw,650px);
  overflow:hidden;
  isolation:isolate;
  color:#fff;
  background:#071726;
}
.product-list-hero__scene{
  position:absolute;
  z-index:0;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 58%;
  opacity:.22;
  filter:saturate(.72) contrast(.92);
}
.product-list-hero__shade{
  position:absolute;
  z-index:1;
  inset:0;
  background:linear-gradient(90deg,rgba(4,19,31,.98) 0%,rgba(4,19,31,.94) 35%,rgba(4,19,31,.68) 60%,rgba(4,19,31,.42) 100%),linear-gradient(180deg,rgba(7,24,38,.08),rgba(4,17,28,.58));
  pointer-events:none;
}
.product-list-hero__inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(620px,1.18fr);
  min-height:inherit;
  align-items:center;
  gap:clamp(42px,4.5vw,78px);
  padding:64px 0 58px;
}
.product-list-hero__copy{
  max-width:630px;
}
.product-list-hero__kicker{
  margin:0 0 16px;
  color:#86d47a;
  font-size:12px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.14em;
}
.product-list-hero h1{
  max-width:620px;
  margin:0;
  color:#fff;
  font-size:clamp(46px,4vw,68px);
  font-weight:600;
  line-height:1.06;
  letter-spacing:-.035em;
}
.product-list-hero__lead{
  max-width:590px;
  margin:24px 0 0;
  color:rgba(255,255,255,.76);
  font-size:clamp(16px,1.05vw,18px);
  line-height:1.75;
}
.product-list-hero__actions{
  margin-top:34px;
}
.product-list-hero__visual{
  position:relative;
  min-width:0;
  height:clamp(420px,30vw,520px);
}
.product-list-categories{
  background:#fff;
}
.product-list-categories__inner{
  display:flex;
  min-height:78px;
  align-items:center;
  gap:22px;
  overflow-x:auto;
  border-bottom:1px solid var(--catalog-line);
  scrollbar-width:none;
}
.product-list-categories__inner::-webkit-scrollbar{
  display:none;
}
.product-list-categories a{
  position:relative;
  flex:0 0 auto;
  padding:11px 17px 12px;
  color:#535f67;
  border-radius:4px;
  font-size:14px;
  font-weight:500;
  line-height:1;
  white-space:nowrap;
  transition:color .2s ease,background-color .2s ease;
}
.product-list-categories a:hover{
  color:var(--site-primary-dark);
}
.product-list-categories a.is-active{
  color:var(--site-primary-dark);
  background:#eef7eb;
}
.product-list-categories a.is-active::after{
  content:"";
  position:absolute;
  right:0;
  bottom:-18px;
  left:0;
  height:2px;
  background:var(--site-primary);
}
.product-list-products,
.solution-list2-directory{
  padding:64px 0 82px;
  background:#f5f7f6;
}
@media (max-width:1180px){
  .product-list-categories__inner{gap:10px;}
  .product-list-categories a{padding-inline:14px;}
}
@media (max-width:1080px){
  .product-list-page,
  .solution-list2-main{padding-top:var(--site-header-height-mobile);}
  .product-list-hero{min-height:0;}
  .product-list-hero__scene{object-position:68% center;}
  .product-list-hero__shade{
    background:linear-gradient(180deg,rgba(4,19,31,.94) 0%,rgba(4,19,31,.82) 52%,rgba(4,19,31,.62) 100%);
  }
  .product-list-hero__inner{
    grid-template-columns:1fr;
    gap:24px;
    padding:54px 0 28px;
  }
  .product-list-hero__copy{max-width:720px;}
  .product-list-hero__visual{
    width:min(100%,720px);
    height:340px;
    justify-self:center;
  }
}
@media (max-width:720px){
  .product-list-hero__inner{
    gap:16px;
    padding:42px 0 18px;
  }
  .product-list-hero__kicker{
    margin-bottom:12px;
    font-size:11px;
  }
  .product-list-hero h1{font-size:clamp(36px,11vw,46px);}
  .product-list-hero__lead{
    margin-top:18px;
    font-size:15px;
    line-height:1.7;
  }
  .product-list-hero__actions{
    margin-top:26px;
  }
  .product-list-hero__visual{height:300px;}
  .product-list-categories__inner{min-height:64px;}
  .product-list-categories a{
    padding:10px 13px 11px;
    font-size:13px;
  }
  .product-list-categories a.is-active::after{bottom:-14px;}
  .product-list-products,
  .solution-list2-directory{padding:44px 0 60px;}
}
@media (max-width:520px){
  .product-list-hero__visual{height:268px;}
}
@media (prefers-reduced-motion:reduce){
  .product-list-page *,
  .product-list-page *::before,
  .product-list-page *::after,
  .solution-list2-main *,
  .solution-list2-main *::before,
  .solution-list2-main *::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}

/* Mobile section navigation */
@media (max-width:900px){
  .tuya-campus-subnav{
    position:sticky;
    top:88px;
    z-index:90;
    background:var(--site-paper,#fff);
    border-bottom:1px solid rgba(13,27,38,.1);
    box-shadow:0 8px 20px rgba(13,27,38,.06);
    isolation:isolate;
  }

  .tuya-campus-subnav__links{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    gap:8px;
    width:100%;
    max-width:100%;
    min-height:54px;
    box-sizing:border-box;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    scroll-padding-inline:16px;
    scrollbar-width:none;
    padding:5px 16px;
  }

  .tuya-campus-subnav__links::-webkit-scrollbar{display:none}

  .tuya-campus-subnav__links a[href^="#"]{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 14px;
    border:0;
    border-radius:999px;
    white-space:nowrap;
    scroll-snap-align:center;
    touch-action:manipulation;
  }

  .tuya-campus-subnav__links a.is-active,
.tuya-campus-subnav__links a.active,
.tuya-campus-subnav__links a[aria-current="true"],
.tuya-campus-subnav__links a[aria-current="location"]{
    color:var(--site-primary,#07871c);
    background:rgba(7,135,28,.1);
    font-weight:700;
  }

  .tuya-campus-subnav::before,
  .tuya-campus-subnav::after{
    content:"";
    position:absolute;
    top:1px;
    bottom:1px;
    width:22px;
    z-index:2;
    opacity:0;
    pointer-events:none;
    transition:opacity .18s ease;
  }

  .tuya-campus-subnav::before{
    left:0;
    background:linear-gradient(90deg,var(--site-paper,#fff),rgba(255,255,255,0));
  }

  .tuya-campus-subnav::after{
    right:0;
    background:linear-gradient(270deg,var(--site-paper,#fff),rgba(255,255,255,0));
  }

  .tuya-campus-subnav.has-horizontal-overflow:not(.is-scroll-start)::before,
  .tuya-campus-subnav.has-horizontal-overflow:not(.is-scroll-end)::after{opacity:1}

  .page-solution-scope section[id],
  .page-solution-scope [data-section][id]{
    scroll-margin-top:calc(88px + 70px);
  }
}

@media (max-width:480px){
  .tuya-campus-subnav__links{gap:6px;padding-inline:12px}
  .tuya-campus-subnav__links a[href^="#"]{padding-inline:12px;font-size:13px}
}
