/* Homepage-only layout fixes. This file is not shared by inner pages. */
.homepage-video {
  position: relative;
}

.homepage-video-section {
  display: block;
  width: 100vw;
  max-width: none;
  margin-top: 0;
  margin-right: calc(50% - 50vw);
  margin-bottom: 0;
  margin-left: calc(50% - 50vw);
}

.homepage-video-section > .pics1 {
  display: block;
  width: 100%;
}

.homepage-about-section {
  display: block;
  clear: both;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

.homepage-about-section > #main,
.homepage-about-section > #main > #container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.homepage-about-section h2 {
  margin-top: 0 !important;
}

.homepage-video .video-js .vjs-big-play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}
/* Homepage footer: independent social buttons (no sprite background). */
.homepage-social-links{display:flex;align-items:center;gap:14px;margin-top:20px}.homepage-social-links a{display:inline-flex!important;align-items:center;justify-content:center;width:32px;height:32px;margin:0!important;padding:0!important;color:#fff!important;font-size:28px!important;line-height:1!important;text-indent:0!important;text-decoration:none!important;background:transparent!important}.homepage-social-links a:before{display:none!important;content:none!important;background:none!important}.homepage-social-links a:hover,.homepage-social-links a:focus{color:#30a76a!important;text-decoration:none!important}.homepage-social-links i{display:block;line-height:1}@media(max-width:767px){.homepage-social-links{padding:4px 20px 20px;margin-top:0}}

/* TI.com typography for all normal page text. */
:root{--nyf-ti-font:"Roboto","Helvetica Neue","Arial Nova","Nimbus Sans","Arial","Noto Sans SC","Noto Sans CJK SC","Source Han Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif}
html body,body h1,body h2,body h3,body h4,body h5,body h6,body p,body a,body span,body li,body div,body button,body input,body select,body textarea,body label,body table{font-family:var(--nyf-ti-font)}
body .fa,body .fas,body .far,body .fal,body .fab{font-family:FontAwesome!important}
body .iconfont,body [class^="icon-"],body [class*=" icon-"]{font-family:iconfont!important}
body .video-js .vjs-icon-placeholder,body .video-js [class^="vjs-icon-"]{font-family:VideoJS!important}

/* Keep all six homepage products in a stable 3 x 2 desktop grid. */
@media(min-width:992px){.product-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.product-grid>.col-md-4{width:auto!important;max-width:none!important;float:none!important}.product-grid>.col-md-4:nth-of-type(3),.product-grid>.col-md-4:nth-of-type(3)>.panel-img-list{display:contents}.product-grid>.col-md-4:nth-of-type(3)>.panel-img-list>.panel-img-box{margin-left:15px;margin-right:15px}.product-grid>.col-md-4:nth-of-type(3)>.panel-img-list>.clearfix{display:none}.product-grid>.col-md-4:nth-of-type(3)>.panel-img-list>.col-md-4{width:auto!important;max-width:none!important;float:none!important}}
/* Prevent Bootstrap row clearfix pseudo-elements from occupying grid cells. */
@media(min-width:992px){.product-grid:before,.product-grid:after{display:none!important;content:none!important}}

/* Join the video and About Us sections with no visible gap. */
.homepage-video-section{padding-bottom:0!important;border-bottom:0!important;vertical-align:top}
.homepage-video-section>img:last-of-type{margin-bottom:0!important}
.homepage-about-section{position:relative;margin-top:-1px!important;border-top:0!important}
.homepage-about-section > #main{margin-top:0!important;padding-top:0!important}

/* Partnership social buttons replace the former QR/background image. */
#cdan2 .partnership-social-item{display:block;float:none;clear:both;margin:14px 0 0!important;padding:0!important}
#cdan2 .partnership-social-item:after{display:none!important;content:none!important}
#cdan2 .homepage-social-links{display:flex;align-items:center;gap:14px;margin:0;padding:0}
#cdan2 .homepage-social-links a{flex:0 0 32px;text-indent:0!important}

/* Compact primary navigation typography. */
#site-navigation ul.menu>li>a{font-size:15px!important;font-weight:600!important}

/* Inline SVG social icons: independent of icon fonts and sprite images. */
#cdan2 .homepage-social-links{display:flex!important;align-items:center!important;gap:24px!important;flex-wrap:wrap!important}
#cdan2 .homepage-social-links .social-svg{display:block;width:24px;height:24px;fill:currentColor}
#cdan2 .homepage-social-links>a{display:inline-flex!important;width:24px!important;height:24px!important;padding:0!important;color:#fff!important;background:transparent!important;border:0!important}
#cdan2 .homepage-social-links>a:hover{color:#30a76a!important}

/* Final TI-inspired typography: ordinary body copy is 16px/400. */
@font-face{font-family:"Roboto";src:url("fonts/Roboto-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
body{font-family:var(--nyf-ti-font)!important;font-size:16px!important;font-weight:400!important;line-height:1.5}
body p,.product-grid .text,.content-list-box .nyf-inline-054,.extendedfooter .nyf-inline-060,.homepage-video-section .nyf-inline-040,.homepage-about-section p.nyf-inline-047{
  font-family:var(--nyf-ti-font)!important;
  font-size:16px!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:24px!important;
}
.homepage-video-section .nyf-inline-040 h3{margin:0 0 6px!important;font-size:20px!important;font-weight:600!important;line-height:28px!important}
.homepage-about-section .service-title,.homepage-about-section .service-title a{font-size:20px!important;font-weight:600!important;line-height:28px!important}
.homepage-about-section .nyf-inline-046{display:block;font-size:16px!important;font-weight:600!important;line-height:24px!important}

/* Final shared title axis and line treatment. */
body h2.homepage-section-title{display:block!important;position:relative!important;left:50%!important;float:none!important;width:calc(100vw - 60px)!important;max-width:1380px!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;transform:translateX(-50%)!important;-webkit-transform:translateX(-50%)!important;text-align:left!important}
body h2.homepage-section-title:after{display:none!important;content:none!important}
@media(max-width:767px){body h2.homepage-section-title{width:calc(100vw - 40px)!important}}

/* Larger type only for the Values, Vision and Mission copy. */
.homepage-video-section .nyf-inline-040{font-size:18px!important;font-weight:400!important;line-height:28px!important}
.homepage-video-section .nyf-inline-040 h3{font-size:24px!important;font-weight:600!important;line-height:32px!important;margin:0 0 6px!important}

/* Final parent-frame alignment for Product, About and News titles. */
main.content > #main.nyf-inline-031,
.homepage-about-section > #main.nyf-inline-036,
main.content > #main.nyf-inline-051{
  width:100%!important;
  max-width:1440px!important;
  box-sizing:border-box!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:30px!important;
  padding-right:30px!important;
}
body h2.homepage-section-title{
  display:block!important;
  position:static!important;
  left:auto!important;
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:none!important;
  -webkit-transform:none!important;
  text-align:left!important;
}
@media(max-width:767px){
  main.content > #main.nyf-inline-031,
  .homepage-about-section > #main.nyf-inline-036,
  main.content > #main.nyf-inline-051{padding-left:20px!important;padding-right:20px!important}
}

/* Scoped repair: section backgrounds stay full width; content stays in the parent frame. */
.homepage-video-inner,
.homepage-footer-inner,
#foot-3 > .inner{
  width:100%!important;
  max-width:1440px!important;
  box-sizing:border-box!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:30px!important;
  padding-right:30px!important;
}
.homepage-video-inner{height:100%!important}

/* Footer columns total 100%; keep Products and Partnership visible. */
@media(min-width:1025px){
  .homepage-footer-inner{padding-top:24px!important;padding-right:0!important;padding-bottom:64px!important;padding-left:0!important}
  .homepage-footer-inner > .nyf-inline-059,
  .homepage-footer-inner > .nyf-inline-059 > .vc_row,
  .homepage-footer-inner .extendedfooter,
  .homepage-footer-inner .uk-container{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .homepage-footer-inner #cdan{width:28%!important;flex:0 0 28%!important}
  .homepage-footer-inner #cdan1{display:block!important;width:12%!important;flex:0 0 12%!important;visibility:visible!important;opacity:1!important}
  .homepage-footer-inner #cdan2{display:block!important;width:22%!important;flex:0 0 22%!important;visibility:visible!important;opacity:1!important}
  .homepage-footer-inner #cdan1.homepage-footer-products{width:26%!important;flex:0 0 26%!important}
  .homepage-footer-inner #cdan{box-sizing:border-box!important;padding-right:12px!important}
  .homepage-footer-inner #cdan1.homepage-footer-products{box-sizing:border-box!important;padding-left:12px!important}
  .homepage-footer-products a{font-size:14px!important;white-space:nowrap!important}
  .homepage-footer-partnership,
  .homepage-footer-partnership h2,
  .homepage-footer-partnership .mobilewrap,
  .homepage-footer-partnership ul,
  .homepage-footer-partnership li{text-align:left!important}
  .homepage-footer-partnership .homepage-social-links{justify-content:flex-start!important;flex-wrap:nowrap!important;white-space:nowrap!important}
  .homepage-footer-partnership .homepage-social-links>a{flex:0 0 24px!important}
}
.homepage-footer-products h2{display:block!important;visibility:visible!important;opacity:1!important}
@media(min-width:768px){.homepage-footer-products .mobilewrap{display:block!important;visibility:visible!important;opacity:1!important}}
.homepage-footer-partnership .partnership-social-item,
.homepage-footer-partnership .homepage-social-links{display:flex!important;visibility:visible!important;opacity:1!important}
.homepage-footer-partnership .social-svg{display:block!important;width:24px!important;height:24px!important;fill:currentColor!important}

@media(max-width:767px){
  .homepage-video-inner,.homepage-footer-inner,#foot-3 > .inner{padding-left:20px!important;padding-right:20px!important}
  .homepage-footer-inner #cdan,.homepage-footer-inner #cdan1,.homepage-footer-inner #cdan2{width:100%!important;flex:0 0 100%!important}
}

/* About and News now use the same content-box heading wrapper as Product. */
.homepage-heading-content{display:block!important;width:100%!important;height:auto!important;position:relative!important;top:auto!important;left:auto!important;text-align:left!important}
.homepage-heading-content>h2.homepage-section-title{display:block!important;width:100%!important;margin-left:0!important;text-align:left!important}

/* Primary semantic heading for the NF522 homepage slide. */
.homepage-hero-h1{margin:0 0 10px;padding:0;color:#d9f8fe;font-size:24px;font-weight:600;line-height:32px;text-align:left}
@media(max-width:760px){.homepage-hero-h1{font-size:20px;line-height:26px}}

/* Requested homepage spacing only. */
@media(min-width:992px){
  .homepage-video-inner > #container,
  .homepage-video-inner > #container > .row{height:100%!important}
  .homepage-video-inner > #container > .row{display:flex!important;align-items:center!important}
  .homepage-video-inner > #container > .row > [class*="col-"]{float:none!important}
  .homepage-video-section .nyf-inline-040{padding-bottom:40px!important}
}
.homepage-product-title{margin-top:48px!important}
@media(max-width:767px){.homepage-product-title{margin-top:32px!important}}
main.content > #main.nyf-inline-051 .homepage-section-title{margin-top:48px!important}
@media(max-width:767px){main.content > #main.nyf-inline-051 .homepage-section-title{margin-top:32px!important}}
@media(min-width:1025px){main.content > #main.nyf-inline-051 .nyf-inline-056{margin-bottom:56px!important}}
.homepage-footer-inner #cdan .wp-block-image img{width:160px!important;max-width:100%!important;height:auto!important}

/* Mobile footer columns must fill the full accordion width. */
@media(max-width:767px){
  .homepage-footer-inner #cdan,
  .homepage-footer-inner #cdan1,
  .homepage-footer-inner #cdan1.homepage-footer-products,
  .homepage-footer-inner #cdan2,
  .homepage-footer-inner #cdan2.homepage-footer-partnership{
    width:100%!important;
    max-width:none!important;
    flex:0 0 100%!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}
