/* =========================================================
   CHENDA SHENGYE — Apple-inspired premium visual system
   Layout enhancement layer. Original HTML/content preserved.
   ========================================================= */
:root{
  --ap-black:#0b0b0c;
  --ap-ink:#1d1d1f;
  --ap-muted:#6e6e73;
  --ap-line:rgba(0,0,0,.08);
  --ap-soft:#f5f5f7;
  --ap-white:#fff;
  --ap-ease:cubic-bezier(.22,1,.36,1);
  --ap-ease-soft:cubic-bezier(.16,1,.3,1);
}

html{background:#fff;scroll-behavior:smooth}
body{background:#fff;color:var(--ap-ink);overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

/* ---------- page transition: no black screen ---------- */
.cs-page-wash{
  position:fixed;inset:0;z-index:99999;pointer-events:none;
  background:rgba(255,255,255,.96);
  opacity:1;transform:none;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  animation:apPageIn .62s var(--ap-ease-soft) forwards;
}
@keyframes apPageIn{0%{opacity:1;filter:blur(5px)}100%{opacity:0;filter:blur(0)}}
body.cs-leaving{overflow:hidden}
body.cs-leaving .site-wrap{transform:scale(.992);filter:blur(3px);opacity:.72;transition:transform .48s var(--ap-ease),filter .48s ease,opacity .48s ease}
.cs-page-wash.cs-transition-out{animation:none!important;opacity:0;transition:opacity .48s var(--ap-ease-soft)}

/* ---------- premium progress ---------- */
.cs-progress{height:2px!important;background:#111!important;box-shadow:none!important;z-index:100002}

/* ---------- header: strong logo, quiet Apple-like chrome ---------- */
.site-navbar-wrap{
  position:relative;z-index:1000;
  border:0!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 1px 0 rgba(0,0,0,.06)!important;
  transition:background .45s var(--ap-ease),box-shadow .45s var(--ap-ease),backdrop-filter .45s ease;
}
.site-navbar-wrap .site-navbar-top{
  min-height:34px!important;padding:0!important;
  border-bottom:1px solid rgba(0,0,0,.045);
  background:rgba(250,250,252,.78)!important;
}
.site-navbar-wrap .site-navbar-top .container{padding-top:5px!important;padding-bottom:5px!important}
.site-navbar-wrap .site-navbar-top a{font-size:10px!important;letter-spacing:.02em;color:#777!important}
.site-navbar-wrap .site-navbar-top .icon-twitter,
.site-navbar-wrap .site-navbar-top .icon-facebook,
.site-navbar-wrap .site-navbar-top .icon-linkedin,
.site-navbar-wrap .site-navbar-top .icon-instagram{opacity:.62;transition:opacity .3s ease}
.site-navbar-wrap .site-navbar-top a:hover span{opacity:1}
.site-navbar-wrap .site-navbar{background:rgba(255,255,255,.86)!important}
.site-navbar-wrap .site-navbar>.container{padding-top:6px!important;padding-bottom:6px!important}
.site-navbar-wrap .logoheise{line-height:1!important}
.site-navbar-wrap .logoheise img{height:60px!important;width:auto!important;display:block;transition:transform .5s var(--ap-ease)}
.site-navbar-wrap .logoheise a:hover img{transform:scale(1.015)}
.site-navigation .site-menu>li>a{
  color:#171717!important;font-size:13px!important;font-weight:500!important;
  letter-spacing:.025em;padding:25px 18px!important;transition:color .3s ease,opacity .3s ease;
}
.site-navigation .site-menu>li>a:hover{color:#777!important}
.site-navigation .site-menu>li.active>a{font-weight:600!important}
.site-navigation .dropdown{border:0!important;border-radius:16px!important;box-shadow:0 20px 60px rgba(0,0,0,.12)!important;padding:10px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.site-navigation .dropdown a{border-radius:10px;padding:10px 14px!important;font-size:12px!important}
.site-navbar-wrap.cs-scrolled{background:rgba(255,255,255,.88)!important;box-shadow:0 10px 40px rgba(0,0,0,.07)!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}

/* ---------- hero: cinematic full screen ---------- */
.site-blocks-cover,.slide-one-item .site-blocks-cover{
  min-height:calc(100svh - 34px)!important;height:calc(100svh - 34px)!important;
  border:0!important;background-position:center!important;
}
.site-blocks-cover:before,.slide-one-item .site-blocks-cover:before{
  background:linear-gradient(180deg,rgba(0,0,0,.06),transparent 38%,rgba(0,0,0,.28))!important;
}
.site-blocks-cover:after,.slide-one-item .site-blocks-cover:after{opacity:.55}
.site-blocks-cover video{filter:saturate(.9) contrast(1.04)!important}
.site-blocks-cover h1{
  font-size:clamp(44px,6.2vw,92px)!important;line-height:.96!important;
  letter-spacing:-.045em!important;font-weight:600!important;
}
.site-blocks-cover p{font-size:clamp(15px,1.2vw,20px)!important;line-height:1.55!important;letter-spacing:.01em}

/* Hero carousel: each slide feels like a separate product story */
.home-slider{background:#000}
.slide-one-item .site-blocks-cover{isolation:isolate}
.slide-one-item .owl-item.active .site-blocks-cover{animation:apHeroIn 1.15s var(--ap-ease) both!important}
@keyframes apHeroIn{0%{opacity:.72;transform:scale(1.018)}100%{opacity:1;transform:scale(1)}}
.slide-one-item .owl-dots{position:absolute!important;left:50%!important;bottom:30px!important;transform:translateX(-50%)!important;z-index:8}
.slide-one-item .owl-dot span{width:5px!important;height:5px!important;margin:4px!important;background:rgba(255,255,255,.5)!important;transition:all .45s var(--ap-ease)!important}
.slide-one-item .owl-dot.active span{width:28px!important;border-radius:6px!important;background:#fff!important}
.slide-one-item .owl-nav{bottom:42px!important;top:auto!important;right:42px!important;left:auto!important;opacity:.75!important;display:flex!important;gap:8px!important}
.slide-one-item .owl-prev,.slide-one-item .owl-next{width:46px!important;height:46px!important;border-radius:50%!important;background:rgba(0,0,0,.22)!important;border:1px solid rgba(255,255,255,.3)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform .45s var(--ap-ease),background .35s ease!important}
.slide-one-item .owl-prev:hover,.slide-one-item .owl-next:hover{transform:scale(1.08)!important;background:rgba(255,255,255,.14)!important}

/* ---------- section rhythm ---------- */
.site-section{
  padding-top:clamp(90px,9vw,150px)!important;
  padding-bottom:clamp(90px,9vw,150px)!important;
  border:0!important;
  background:#fff;
}
.site-section.bg-light{background:var(--ap-soft)!important}
.site-section.border-bottom{border:0!important}
.site-section>.container{max-width:1180px}
.site-section h2.display-4,.site-section h2.display-6{
  color:var(--ap-ink)!important;letter-spacing:-.04em!important;font-weight:600!important;line-height:1.05!important;
}
.site-section h2.font-weight-light{font-weight:600!important;letter-spacing:-.045em!important}
.site-section p{color:#5e5e63;line-height:1.85}

/* ---------- numbers / capability strip ---------- */
.site-section.border-bottom.bg-light.py-5{
  padding-top:100px!important;padding-bottom:100px!important;
}
.site-section.border-bottom.bg-light.py-5 .col-12{margin-bottom:70px!important}
.site-section.border-bottom.bg-light.py-5 .col-12 h2{
  font-size:clamp(34px,4vw,58px)!important;text-transform:none!important;letter-spacing:-.045em!important;
}
.site-section.border-bottom.bg-light.py-5 .col-md-6.col-lg-4>div{
  min-height:150px;padding:28px 20px;border-top:1px solid rgba(0,0,0,.11);
  align-items:flex-start!important;transition:transform .65s var(--ap-ease),border-color .4s ease;
}
.site-section.border-bottom.bg-light.py-5 .col-md-6.col-lg-4:hover>div{transform:translateY(-6px);border-color:#111}
.site-section.border-bottom.bg-light.py-5 img{opacity:.82;transition:transform .6s var(--ap-ease)}
.site-section.border-bottom.bg-light.py-5 .col-md-6.col-lg-4:hover img{transform:scale(1.06)}
.site-section.border-bottom.bg-light.py-5 h2{font-size:42px!important;letter-spacing:-.04em!important;margin-bottom:3px!important}
.site-section.border-bottom.bg-light.py-5 strong{font-size:13px!important;letter-spacing:.01em}

/* ---------- application mosaic: less template, more editorial ---------- */
.site-section .half-sm{
  position:relative;min-height:390px;overflow:hidden;background:#f5f5f7;
}
.site-section .half-sm .bg-image{min-height:390px!important;background-size:cover!important;background-position:center!important;transition:transform 1.25s var(--ap-ease),filter 1.1s ease!important}
.site-section .half-sm:hover .bg-image{transform:scale(1.045)!important;filter:saturate(1.03)}
.site-section .half-sm .text{
  display:flex;align-items:center;background:#f5f5f7!important;padding:clamp(28px,4vw,56px)!important;
}
.site-section .half-sm .text .p-4{padding:0!important}
.site-section .half-sm h2{font-size:clamp(22px,2vw,30px)!important;line-height:1.18!important;letter-spacing:-.035em!important;font-weight:600!important;margin-bottom:22px!important}
.site-section .half-sm h2 small{display:block;margin-top:7px;font-size:10px!important;letter-spacing:.16em!important;text-transform:uppercase;color:#8b8b91!important;font-weight:500}
.site-section .half-sm p{font-size:13px!important;line-height:1.85!important;color:#68686d!important}
.site-section .half-sm a{display:inline-flex!important;align-items:center;gap:8px;margin-top:10px;font-size:10px!important;letter-spacing:.12em!important;text-decoration:none!important;border-bottom:1px solid #222;padding-bottom:7px;transition:gap .35s var(--ap-ease)}
.site-section .half-sm a:after{content:'→';font-size:14px;line-height:1;transition:transform .35s var(--ap-ease)}
.site-section .half-sm a:hover{gap:14px}.site-section .half-sm a:hover:after{transform:translateX(3px)}

/* section intro above mosaic */
.site-section .row.mb-5.justify-content-center{margin-bottom:75px!important}
.site-section .row.mb-5.justify-content-center h2{font-size:clamp(42px,5.3vw,78px)!important;margin-bottom:22px!important}
.site-section .row.mb-5.justify-content-center .h3{font-size:15px!important;color:#777!important;line-height:1.8;font-weight:400}

/* ---------- material story ---------- */
.site-section .bg-image.bg-sm-height{background-size:cover!important;background-position:center!important;min-height:560px!important}
.site-section .site-block-check{padding:0;margin:34px 0 36px!important;list-style:none}
.site-section .site-block-check li{position:relative;padding:14px 0 14px 26px;border-bottom:1px solid rgba(0,0,0,.09);font-size:13px;color:#444}
.site-section .site-block-check li:before{content:'✓';position:absolute;left:0;top:13px;font-size:12px;color:#111}
.site-section .btn-outline-primary{border:1px solid #222!important;color:#111!important;background:transparent!important;border-radius:999px!important;padding:11px 22px!important;font-size:11px!important;letter-spacing:.08em!important;transition:all .4s var(--ap-ease)!important}
.site-section .btn-outline-primary:hover{background:#111!important;color:#fff!important;transform:translateY(-2px)}

/* ---------- testimonials: airy editorial quote ---------- */
.block-13{padding:20px 0!important}
.block-47{align-items:flex-start!important;gap:25px}
.block-47-image img{width:54px!important;height:54px!important;border-radius:50%!important;object-fit:cover;filter:grayscale(1);opacity:.75}
.block-47-quote p{font-size:18px!important;line-height:1.65!important;color:#222!important;letter-spacing:-.01em}
.block-47-quote-author{font-size:11px!important;color:#777!important;letter-spacing:.04em}

/* ---------- discover / video split ---------- */
.site-block-half.site-block-video{min-height:680px!important;background:#f5f5f7}
.site-block-half.site-block-video .image{min-height:680px!important;background-size:cover!important;background-position:center!important;transition:transform 1.2s var(--ap-ease)}
.site-block-half.site-block-video:hover .image{transform:scale(1.015)}
.site-block-half.site-block-video .text{padding:clamp(50px,7vw,110px)!important;display:flex;flex-direction:column;justify-content:center}
.site-block-half.site-block-video .site-heading{font-size:clamp(42px,5vw,76px)!important;line-height:.98!important;letter-spacing:-.045em!important;font-weight:600!important}
.site-block-half.site-block-video .site-heading small{display:block;margin-top:18px;font-size:13px!important;line-height:1.5;color:#777;letter-spacing:.02em}
.site-block-half.site-block-video .lead{font-size:17px!important;line-height:1.75!important;color:#3d3d42!important;max-width:600px}
.site-block-half.site-block-video .text p:not(.lead){font-size:13px!important;line-height:1.8!important;color:#777;max-width:580px}
.play-button{width:74px!important;height:74px!important;border-radius:50%!important;background:rgba(255,255,255,.86)!important;box-shadow:0 15px 45px rgba(0,0,0,.16)!important;transition:transform .5s var(--ap-ease)!important}
.play-button:hover{transform:scale(1.1)!important}

/* ---------- CTA becomes quiet premium band ---------- */
.promo.bg-primary{background:#111!important;padding:76px 20px!important;position:relative;overflow:hidden}
.promo.bg-primary:before{content:'';position:absolute;inset:-50%;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.12),transparent 25%);animation:apCtaGlow 9s ease-in-out infinite alternate}
@keyframes apCtaGlow{from{transform:translate(-10%,-5%) scale(.9)}to{transform:translate(10%,5%) scale(1.15)}}
.promo.bg-primary a{position:relative;z-index:1}
.promo.bg-primary h2{font-size:clamp(25px,3vw,42px)!important;letter-spacing:-.035em!important;font-weight:500!important}

/* ---------- footer ---------- */
.site-footer{background:#0b0b0c!important;color:#999!important;padding-top:90px!important;padding-bottom:45px!important}
.site-footer h3{color:#fff!important;font-size:12px!important;letter-spacing:.1em!important;text-transform:uppercase}
.site-footer a{color:#aaa!important;font-size:12px!important}.site-footer a:hover{color:#fff!important}
.site-footer:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent)!important}

/* ---------- global hover / reveal ---------- */
.cs-reveal{filter:blur(0)!important;transform:translateY(46px);transition:opacity .9s var(--ap-ease),transform 1.05s var(--ap-ease)!important}
.cs-reveal.cs-visible{transform:none}
.cs-delay-1{transition-delay:.02s!important}.cs-delay-2{transition-delay:.08s!important}.cs-delay-3{transition-delay:.14s!important}.cs-delay-4{transition-delay:.20s!important}

/* ---------- inner pages: spacious title / content ---------- */
body:not(:has(.home-slider)) .site-blocks-cover{min-height:56vh!important;height:56vh!important}
body:not(:has(.home-slider)) .site-blocks-cover h1{font-size:clamp(44px,6vw,82px)!important;letter-spacing:-.05em!important}
body:not(:has(.home-slider)) .site-section{padding-top:110px!important;padding-bottom:110px!important}
body:not(:has(.home-slider)) .site-section>.container{max-width:1180px}

/* ---------- responsive ---------- */
@media(max-width:991px){
  .site-navbar-wrap .logoheise img{height:60px!important}
  .site-navigation .site-menu>li>a{padding:20px 12px!important}
  .site-section .half-sm{min-height:auto}
  .site-section .half-sm .bg-image{min-height:300px!important}
  .site-section .half-sm .text{min-height:300px}
  .site-block-half.site-block-video,.site-block-half.site-block-video .image{min-height:520px!important}
}
@media(max-width:767px){
  .site-navbar-wrap .site-navbar-top{display:none}
  .site-navbar-wrap .site-navbar>.container{padding-top:8px!important;padding-bottom:8px!important}
  .site-navigation .site-menu>li>a{padding:14px 8px!important;font-size:12px!important}
  .site-blocks-cover,.slide-one-item .site-blocks-cover{min-height:72svh!important;height:72svh!important}
  .site-section{padding-top:72px!important;padding-bottom:72px!important}
  .site-section .row.mb-5.justify-content-center h2{font-size:40px!important}
  .site-section .half-sm .text{padding:30px!important}
  .site-section .bg-image.bg-sm-height{min-height:360px!important}
  .site-block-half.site-block-video,.site-block-half.site-block-video .image{min-height:420px!important}
  .site-block-half.site-block-video .text{padding:55px 30px!important}
}
@media(prefers-reduced-motion:reduce){.cs-page-wash{display:none!important}.site-wrap,*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
