/*
 * Safe runtime bridge for Appearance → Customize.
 * Defaults intentionally reproduce the existing theme geometry.
 */
body{font-family:var(--qt-body-font,var(--qt-system));font-size:var(--qt-body-size,16px);line-height:var(--qt-body-line,1.7)}
h1,h2,h3,h4{font-family:var(--qt-heading-font,var(--qt-system))}
h1{font-size:clamp(42px,5vw,var(--qt-h1-max,72px))}
h2{font-size:clamp(32px,3.3vw,var(--qt-h2-max,48px))}
h3{font-size:var(--qt-h3-size,24px)}
.qt-reading{max-width:var(--qt-content-narrow,860px)}
.qt-button{border-radius:var(--qt-radius,0);font-family:var(--qt-button-font,var(--qt-system))}
.qt-header{background:var(--qt-header-bg,#fff)}
.qt-nav{font-family:var(--qt-nav-font,var(--qt-system))}
.qt-nav a{color:var(--qt-nav-color,#222)}
.qt-nav a.is-current,.qt-nav a.is-current:hover,.qt-nav a.is-current:focus-visible,.qt-offcanvas .is-current{color:var(--qt-header-active,var(--qt-accent))}
.qt-footer{color:var(--qt-footer-text,#b9c1c7)}
.qt-logo>img,.qt-footer__logo>img{display:block;width:100%;height:100%;object-fit:contain}
.qt-header-contact-button{flex:none;white-space:nowrap}
.qt-header-actions.is-contact-first .qt-header-contact-button{order:-1}
.qt-footer__grid>[data-footer-column]{min-width:0}

@media(min-width:1200px){
  .qt-logo--desktop{width:var(--qt-logo-width,260px)}
}
@media(min-width:1000px){
  .qt-header{height:var(--qt-header-height,138px)}
  .qt-navbar{height:calc(var(--qt-header-height,138px) - 38px)}
  .qt-container{width:min(calc(100% - var(--qt-container-gutter,48px)),var(--qt-content,1290px))}
  .qt-section{padding:var(--qt-section-space,96px) 0}
}
@media(min-width:690px) and (max-width:999.98px){
  .qt-container{width:min(calc(100% - 36px),var(--qt-content,1290px))}
  .qt-section{padding:var(--qt-section-space-tablet,72px) 0}
}
@media(max-width:689.98px){
  .qt-container{width:min(calc(100% - 28px),var(--qt-content,1290px))}
  .qt-section{padding:var(--qt-section-space-mobile,58px) 0}
}

/* Keep contact details on the left, with the brand tagline on the right,
   matching the reference utility-bar composition. */
.qt-topbar__inner{justify-content:space-between}
.qt-topbar__contacts{order:2;margin-left:auto;justify-content:flex-end}
.qt-topbar__contacts a{display:inline-flex;align-items:center;gap:8px}
.qt-topbar__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px}
.qt-topbar__icon .qt-icon{width:16px;height:16px}
.qt-topbar__tagline{order:1;margin-left:0;white-space:nowrap}

/* Product archive cards respond to a pointer over the main product image. */
.qt-products-archive-main .qt-product-card__image img{
  transition:transform .35s ease,opacity .35s ease;
}
.qt-products-archive-main .qt-product-card:hover .qt-product-card__image--primary,
.qt-products-archive-main .qt-product-card:focus-within .qt-product-card__image--primary{
  transform:scale(1.035);
}
.qt-products-archive-main .qt-product-card:hover .qt-product-card__image--hover,
.qt-products-archive-main .qt-product-card:focus-within .qt-product-card__image--hover{
  transform:scale(1.035);
}

/* Homepage customization CTA: keep the reference's readable copy rhythm. */
.qt-customization-cta__content h2{margin-bottom:22px;font-size:clamp(34px,2.6vw,40px);line-height:1.2}
.qt-customization-cta__body{font-size:16px;line-height:1.55}
.qt-customization-cta__body p{margin:0 0 22px}
.qt-customization-cta__body p:last-child{margin-bottom:0}
.qt-customization-cta__content>.qt-button{margin-top:32px}

/* Customization intro: final desktop alignment for the five-step copy block. */
@media(min-width:1000px){
  .qt-custom-intro .qt-split>div:nth-child(2){
    width:560px;
    max-width:560px;
    padding-top:0!important;
    padding-bottom:0!important;
    align-self:center;
    display:flex;
    flex-direction:column;
  }
  .qt-custom-intro .qt-split>div:nth-child(2) h2{
    width:630px;
    max-width:none;
    margin:0 0 22px;
    font-size:34px;
    line-height:1.2;
    font-weight:700;
    white-space:nowrap;
  }
  .qt-custom-intro .qt-split>div:nth-child(2) p{
    max-width:560px;
    margin:0 0 22px;
    font-size:16px;
    line-height:1.55;
    font-weight:400;
  }
  .qt-custom-intro .qt-split>div:nth-child(2) p:nth-of-type(3){margin-bottom:4px}
  .qt-custom-intro .qt-process-steps{
    max-width:560px;
    margin:0;
    padding-left:20px;
    font-size:16px;
    line-height:1.55;
  }
  .qt-custom-intro .qt-process-steps li{margin:0;font-weight:700}
  .qt-custom-intro .qt-process-steps li+li{margin-top:0}
  .qt-custom-intro .qt-custom-intro__closing{margin:16px 0 0}
.qt-custom-intro .qt-split>div:nth-child(2)>.qt-button{
    align-self:flex-start;
    margin-top:48px;
    font-weight:400;
  }
}

/* Homepage CTA buttons: add a visible lift and arrow motion on hover. */
.home .qt-featured .qt-button--outline,
.home .qt-visits__hero .qt-button{
  transition:transform .25s cubic-bezier(.22,.61,.36,1),box-shadow .25s ease,background-color .2s ease,border-color .2s ease,color .2s ease;
  box-shadow:0 3px 8px rgba(16,47,81,.12);
}
.home .qt-featured .qt-button--outline .qt-icon,
.home .qt-visits__hero .qt-button .qt-icon{
  transition:transform .25s cubic-bezier(.22,.61,.36,1);
}
.home .qt-featured .qt-button--outline:hover,
.home .qt-featured .qt-button--outline:focus-visible,
.home .qt-visits__hero .qt-button:hover,
.home .qt-visits__hero .qt-button:focus-visible{
  transform:translateY(-4px) scale(1.02);
  box-shadow:0 10px 22px rgba(16,47,81,.24);
}
.home .qt-featured .qt-button--outline:hover .qt-icon,
.home .qt-featured .qt-button--outline:focus-visible .qt-icon,
.home .qt-visits__hero .qt-button:hover .qt-icon,
.home .qt-visits__hero .qt-button:focus-visible .qt-icon{
  transform:translateX(5px);
}
@media (prefers-reduced-motion:reduce){
  .home .qt-featured .qt-button--outline,
  .home .qt-visits__hero .qt-button,
  .home .qt-featured .qt-button--outline .qt-icon,
  .home .qt-visits__hero .qt-button .qt-icon{transition:none}
}

/* Additional homepage links: keep hover feedback consistent across sections. */
.home .qt-who__story-link{
  transition:transform .25s cubic-bezier(.22,.61,.36,1),box-shadow .25s ease,background-color .2s ease,border-color .2s ease,color .2s ease;
  box-shadow:0 3px 8px rgba(16,47,81,.12);
}
.home .qt-who__story-link .qt-icon{transition:transform .25s cubic-bezier(.22,.61,.36,1)}
.home .qt-who__story-link:hover,
.home .qt-who__story-link:focus-visible{
  transform:translateY(-4px) scale(1.02);
  box-shadow:0 10px 22px rgba(16,47,81,.24);
}
.home .qt-who__story-link:hover .qt-icon,
.home .qt-who__story-link:focus-visible .qt-icon{transform:translateX(5px)}

.home .qt-materials .qt-tabs__panels article>div>a{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding-bottom:3px;
  color:var(--qt-accent);
  font-weight:700;
  transition:transform .25s cubic-bezier(.22,.61,.36,1),color .2s ease;
}
.home .qt-materials .qt-tabs__panels article>div>a::after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:2px;
  background:var(--qt-accent);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .25s cubic-bezier(.22,.61,.36,1);
}
.home .qt-materials .qt-tabs__panels article>div>a:hover,
.home .qt-materials .qt-tabs__panels article>div>a:focus-visible{
  transform:translateX(5px);
  color:var(--qt-accent);
}
.home .qt-materials .qt-tabs__panels article>div>a:hover::after,
.home .qt-materials .qt-tabs__panels article>div>a:focus-visible::after{transform:scaleX(1)}

@media (prefers-reduced-motion:reduce){
  .home .qt-who__story-link,
  .home .qt-who__story-link .qt-icon,
  .home .qt-materials .qt-tabs__panels article>div>a,
  .home .qt-materials .qt-tabs__panels article>div>a::after{transition:none}
}

/* Homepage CTA copy and buttons: slightly lighter typography with the same
   motion language used by the other primary actions. */
.home .qt-customization-cta__content h2{
  font-size:clamp(30px,2.3vw,36px);
  line-height:1.2;
}
.home .qt-customization-cta__body{
  font-size:15px;
  line-height:1.55;
}
.home .qt-distributor h2{
  font-size:26px;
  line-height:1.35;
}
.home .qt-distributor__body p{
  font-size:15px;
  line-height:1.55;
}
.home .qt-customization-cta .qt-button,
.home .qt-distributor .qt-button{
  transition:transform .25s cubic-bezier(.22,.61,.36,1),box-shadow .25s ease,background-color .2s ease,border-color .2s ease,color .2s ease;
  box-shadow:0 3px 8px rgba(16,47,81,.12);
}
.home .qt-customization-cta .qt-button .qt-icon,
.home .qt-distributor .qt-button .qt-icon{
  transition:transform .25s cubic-bezier(.22,.61,.36,1);
}
.home .qt-customization-cta .qt-button:hover,
.home .qt-customization-cta .qt-button:focus-visible,
.home .qt-distributor .qt-button:hover,
.home .qt-distributor .qt-button:focus-visible{
  transform:translateY(-4px) scale(1.02);
  box-shadow:0 10px 22px rgba(16,47,81,.24);
}
.home .qt-customization-cta .qt-button:hover .qt-icon,
.home .qt-customization-cta .qt-button:focus-visible .qt-icon,
.home .qt-distributor .qt-button:hover .qt-icon,
.home .qt-distributor .qt-button:focus-visible .qt-icon{
  transform:translateX(5px);
}

@media (prefers-reduced-motion:reduce){
  .home .qt-customization-cta .qt-button,
  .home .qt-distributor .qt-button,
  .home .qt-customization-cta .qt-button .qt-icon,
  .home .qt-distributor .qt-button .qt-icon{transition:none}
}

@media (min-width:1000px){
  .home .qt-customization-cta__content h2{
    font-size:28px;
    line-height:1.2;
    letter-spacing:-.015em;
    white-space:nowrap;
  }
}

/* Keep the formal site's Products dropdown geometry identical to the local
   QIANTONG preview. This intentionally overrides only the desktop menu
   alignment rules; mobile navigation and the menu content stay unchanged. */
@media (min-width:1000px){
  .qt-products-mega-menu{
    left:0!important;
    right:auto!important;
    width:calc(
      var(--qt-products-menu-anchor) +
      var(--qt-products-menu-grid-width) +
      var(--qt-products-menu-right-gutter)
    )!important;
    grid-template-columns:minmax(320px,362px) minmax(420px,1fr)!important;
    gap:58px!important;
    padding:0 var(--qt-products-menu-right-gutter) 30px var(--qt-products-menu-anchor)!important;
  }
  body.qt-products-menu-open .qt-nav__has-submenu::before{
    left:0!important;
    right:auto!important;
    width:calc(
      var(--qt-products-menu-anchor) +
      var(--qt-products-menu-grid-width) +
      var(--qt-products-menu-right-gutter)
    )!important;
  }
}

@media (min-width:1000px) and (max-width:1400px){
  .qt-products-mega-menu{
    width:calc(
      var(--qt-products-menu-anchor) +
      var(--qt-products-menu-grid-width) +
      var(--qt-products-menu-right-gutter)
    )!important;
    grid-template-columns:311px minmax(0,1fr)!important;
    gap:49px!important;
    padding:0 var(--qt-products-menu-right-gutter) 22px var(--qt-products-menu-anchor)!important;
  }
  body.qt-products-menu-open .qt-nav__has-submenu::before{
    width:calc(
      var(--qt-products-menu-anchor) +
      var(--qt-products-menu-grid-width)
    )!important;
  }
}
