@charset "UTF-8";
/* YuanFeng V52.83 generated CSS bundle; source modules retained. */

/* ---- source: assets/css/footer-whatsapp-v52.47.css ---- */
.bottomMenu .yf-footer-social--whatsapp:hover{color:#25D366!important;}
.bottomMenu .yf-footer-social--whatsapp svg{width:100%;height:100%;display:block;}

/* ---- source: assets/css/mobile-layout-v52.50.css ---- */

/* YuanFeng V52.50 — mobile navigation/footer and project-detail parity */

/* Mobile header stays available just like desktop navigation chrome. */
@media (max-width:750px){
  .topMenu.scrollA{
    margin-top:0!important;
    top:0!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    background:#fff!important;
  }
  .subMenu.scrollB{
    margin-top:0!important;
    top:50px!important;
  }
}

/* Mobile footer: two-column editorial sitemap, contact below — reference mobile layout. */
.yf-footer-mobile-category,
.yf-footer-mobile-separator{display:none;}
@media (max-width:650px){
  .bottomMenu .bottomDiv .bottomLinks{
    padding:0 24px 28px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:42px!important;
    row-gap:0!important;
    align-items:start!important;
    padding:48px 0 26px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItemDiv{
    display:contents!important;
    width:auto!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem{
    float:none!important;
    width:auto!important;
    min-width:0!important;
    margin:0 0 34px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem:nth-child(1){
    grid-column:1;grid-row:1;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem:nth-child(2){
    grid-column:2;grid-row:1 / span 3;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem:nth-child(3){
    grid-column:1;grid-row:2;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem:nth-child(4){
    grid-column:1;grid-row:3;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem :is(h1,h2.yf-h1-demoted,h3.yf-h1-demoted){
    font-size:17px!important;
    line-height:1.25!important;
    margin:0 0 18px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem a,
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem span{
    font-size:15px!important;
    line-height:1.55!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem ul{
    margin:0!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .linksItem ul p{
    margin:0 0 6px!important;
  }
  .yf-footer-mobile-category{
    display:block!important;
    margin:0 0 4px!important;
  }
  .yf-footer-mobile-category a{
    font-family:HOS-C-Regular!important;
    color:#111!important;
  }
  .yf-footer-mobile-separator{
    display:block!important;
    font-size:14px!important;
    line-height:1!important;
    color:#888!important;
    margin:0 0 16px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .location{
    grid-column:1 / -1!important;
    grid-row:4!important;
    width:100%!important;
    margin:6px 0 0!important;
    padding-top:8px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .location :is(h1,h2.yf-h1-demoted,h3.yf-h1-demoted){
    font-size:17px!important;
    margin:0 0 18px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .location ul li,
  .bottomMenu .bottomDiv .bottomLinks .linksDiv .location ul li p{
    font-size:14px!important;
    line-height:1.75!important;
    margin:0!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .infoDiv{
    display:block!important;
    padding:22px 0 18px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .infoDiv .infoList{
    margin-top:18px!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .infoDiv .infoList p{
    text-align:left!important;
    white-space:nowrap!important;
  }
}

/* Project detail on mobile keeps the desktop editorial stagger instead of flattening. */
@media (max-width:900px){
  .yf-project-poster .yfpp-copy{
    text-align:center!important;
  }
  .yf-project-poster .yfpp-copy .lead{
    text-align:center!important;
  }
  .yf-project-poster .yfpp-pair{
    display:grid!important;
    grid-template-columns:.82fr 1.18fr!important;
    gap:12px!important;
    align-items:start!important;
    padding-top:24px!important;
    padding-bottom:24px!important;
    margin-bottom:62px!important;
  }
  .yf-project-poster .yfpp-pair.reverse{
    grid-template-columns:1.18fr .82fr!important;
  }
  .yf-project-poster .yfpp-pair figure:first-child,
  .yf-project-poster .yfpp-pair.reverse figure:first-child{
    margin-top:0!important;
    transform:translateY(-14px)!important;
  }
  .yf-project-poster .yfpp-pair figure:last-child,
  .yf-project-poster .yfpp-pair.reverse figure:last-child{
    margin-top:0!important;
    transform:translateY(16px)!important;
  }
  .yf-project-poster .yfpp-gallery{
    padding-left:12px!important;
    padding-right:12px!important;
  }
}
@media (max-width:520px){
  .yf-project-poster .yfpp-pair{gap:8px!important;margin-bottom:54px!important;}
  .yf-project-poster .yfpp-pair figure:first-child,
  .yf-project-poster .yfpp-pair.reverse figure:first-child{transform:translateY(-10px)!important;}
  .yf-project-poster .yfpp-pair figure:last-child,
  .yf-project-poster .yfpp-pair.reverse figure:last-child{transform:translateY(12px)!important;}
}

/* ---- source: assets/css/mobile-header-drawer-v52.52.css ---- */
/* YuanFeng V52.52 — mobile header controls + right drawer refinements. */
.yf-mobile-drawer-socials{display:none;}
@media (max-width:750px){
  .topMenu,.topMenu.scrollA{height:50px!important;margin-top:0!important;top:0!important;visibility:visible!important;opacity:1!important;transform:none!important;}
  .topMenu .topMenuDiv{width:100%!important;max-width:none!important;height:50px!important;padding:0 16px!important;margin:0!important;display:flex!important;align-items:flex-start!important;box-sizing:border-box!important;}
  .topMenu .topMenuDiv .mLogo{width:auto!important;flex:0 0 auto!important;}
  .topMenu .mLinks{display:none!important;flex:none!important;width:0!important;}
  .topMenu .topMenuDiv .mBtn{width:auto!important;flex:0 0 auto!important;margin-left:auto!important;}
  .topMenu .topMenuDiv .mBtn>div{width:auto!important;}
  .topMenu .topMenuDiv .mBtn div ul{float:none!important;width:auto!important;margin:0!important;padding:0!important;display:flex!important;align-items:flex-start!important;justify-content:flex-end!important;}
  .topMenu .topMenuDiv .mBtn div ul p,.topMenu .topMenuDiv .mBtn div ul li{flex:0 0 auto!important;margin-top:-5px!important;}
  .topMenu .topMenuDiv .mBtn div ul .searchOpen{padding-left:4px!important;padding-right:7px!important;}
  .topMenu .topMenuDiv .mBtn div ul .langOpen{padding-left:5px!important;padding-right:7px!important;white-space:nowrap!important;}
  .topMenu .topMenuDiv .mBtn div ul .menuOpen{padding-left:5px!important;padding-right:0!important;}
  .subMenu,.subMenu.scrollB{top:50px!important;margin-top:0!important;}
  .menuList .yf-mobile-drawer-socials{display:flex!important;position:absolute!important;right:22px!important;bottom:max(28px, env(safe-area-inset-bottom))!important;align-items:center!important;justify-content:flex-end!important;gap:15px!important;z-index:3!important;}
  .menuList .yf-mobile-drawer-social{display:flex!important;align-items:center!important;justify-content:center!important;width:23px!important;height:23px!important;color:#fff!important;text-decoration:none!important;opacity:.96!important;}
  .menuList .yf-mobile-drawer-social svg{display:block!important;width:100%!important;height:100%!important;fill:currentColor;stroke:currentColor;}
  .menuList .yf-mobile-drawer-social--xhs{width:27px!important;}
  .menuList .yf-mobile-drawer-social--xhs svg text{fill:currentColor!important;stroke:none!important;font-size:5px!important;font-family:Arial,sans-serif!important;}
  .menuList .yf-mobile-drawer-social:active{opacity:.65!important;}
}

/* ---- source: assets/css/mobile-polish-v52.53.css ---- */
/* YuanFeng V52.53 — mobile header alignment + footer cleanup. */
@media (max-width:750px){
  /* Keep the language label on the same optical centerline as search/menu. */
  .topMenu .topMenuDiv .mBtn div ul .langOpen{
    margin-top:0!important;
  }
}
@media (max-width:650px){
  /* V52.53: mobile footer no longer shows the temporary Indoor Lighting category/separator. */
  .bottomMenu .yf-footer-mobile-category,
  .bottomMenu .yf-footer-mobile-separator{display:none!important;}
  /* Center the legal line as one group beneath the social icons. */
  .bottomMenu .bottomDiv .bottomLinks .infoDiv .infoList{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:26px!important;
    margin:18px auto 0!important;
    text-align:center!important;
  }
  .bottomMenu .bottomDiv .bottomLinks .infoDiv .infoList p{
    flex:0 0 auto!important;
    margin:0!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
}
