
/* ============================================================
   TJNE site-wide polish and interaction fixes
   - robust header/mobile navigation
   - consistent dropdown behavior
   - unified footer spacing
   - partner logo card containment
   ============================================================ */

:root{--tj-breakpoint:1180px}
.site-header,.nav-wrap{overflow:visible!important}
.site-header{z-index:1000!important}
.nav-wrap{position:relative}
.brand{min-width:0}
.brand-mark{max-width:min(280px,42vw);height:52px;object-fit:contain;object-position:left center}
.brand-text{min-width:0}
.language-switcher{position:relative;z-index:1080}
.lang-current{touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent}
.lang-menu{z-index:1200!important;pointer-events:auto!important}
.language-switcher.open .lang-menu{opacity:1!important;visibility:visible!important;transform:translateY(0)!important}
.mobile-menu{position:relative;z-index:1220!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent;line-height:1}

@media(max-width:1180px){
  .nav-cta{display:none!important}
  .language-switcher{display:none!important}
  .mobile-menu{display:block!important}
  .main-nav{display:none!important}
  .main-nav.open{
    display:flex!important;position:absolute;left:16px;right:16px;top:calc(100% + 10px);
    background:#fff;border:1px solid var(--platinum,var(--line,#dce8f4));border-radius:16px;
    box-shadow:0 24px 64px rgba(11,31,58,.16);padding:10px;flex-direction:column;align-items:stretch;
    z-index:1180!important;max-height:min(72vh,620px);overflow:auto;-webkit-overflow-scrolling:touch;
  }
  .main-nav.open a{display:block!important;padding:12px 16px!important;border-radius:10px!important;white-space:normal!important}
  .main-nav.open .mobile-language-row{display:block!important;border-top:1px solid var(--platinum,var(--line,#dce8f4));margin-top:8px;padding:12px 8px 4px}
  .main-nav.open .mobile-language-row>span{display:block;font-size:11px;font-weight:800;color:var(--muted,#5e7898);text-transform:uppercase;letter-spacing:.1em;margin:0 8px 8px}
  .main-nav.open .mobile-language-row>div{display:flex;flex-wrap:wrap;gap:6px}
  .main-nav.open .mobile-language-row a{display:inline-flex!important;padding:7px 10px!important;border:1px solid var(--platinum,var(--line,#dce8f4));background:#fff!important;font-size:12px!important;line-height:1.2!important}
  .main-nav.open .mobile-language-row a.active{background:var(--blue-pale,var(--sky,#e8f3ff))!important;color:var(--blue,#1a4a8a)!important;border-color:var(--blue-bg,var(--line-2,#c8daed))}
  body.nav-open{overflow:hidden}
}
@media(min-width:1181px){
  .mobile-menu{display:none!important}
  .main-nav{display:flex!important}
}
@media(max-width:720px){
  .brand-mark{max-width:190px!important;height:46px!important}
  .nav-wrap{height:64px!important}
  .main-nav.open{left:12px;right:12px;top:calc(100% + 8px)}
}

/* partner logos */
.partners-section{background:linear-gradient(180deg,#f6f9fd 0%,#eef4f9 100%)}
.partners-card{border-radius:22px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 18px 50px rgba(11,31,58,.08)!important}
.partner-logos{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:16px!important;align-items:stretch!important}
.partner-logos-home{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.partner-logo-card{height:112px!important;min-width:0;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;border:1px solid #d9e3ee!important;border-radius:12px!important;box-shadow:0 1px 0 rgba(255,255,255,.9) inset!important;display:grid!important;place-items:center!important;padding:14px 18px!important;overflow:hidden!important}
.partner-logo-card img{width:auto!important;height:auto!important;max-width:96%!important;max-height:76px!important;object-fit:contain!important;object-position:center!important;filter:none!important;opacity:1!important;transform:none!important}
.partner-logo-card:hover{border-color:#c8daed!important;background:#fff!important;box-shadow:0 8px 22px rgba(11,31,58,.07)!important;transform:translateY(-1px)}
.partner-logo-card:hover img{filter:none!important;opacity:1!important;transform:none!important}
@media(max-width:900px){.partner-logos-home{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:540px){.partner-logos,.partner-logos-home{grid-template-columns:1fr!important}.partner-logo-card{height:104px!important}}

/* unified footer */
.site-footer{background:#0b1f3a!important;color:rgba(255,255,255,.6)!important;border-top:1px solid rgba(255,255,255,.06)!important}
.footer-grid{display:grid!important;grid-template-columns:minmax(240px,1.55fr) repeat(5,minmax(120px,1fr))!important;gap:30px!important;padding:58px 0 46px!important;align-items:start!important}
.footer-brand img{width:160px!important;height:auto!important;object-fit:contain!important;object-position:left center!important;opacity:.96!important;margin-bottom:18px!important}
.footer-brand p{max-width:260px!important;font-size:.8rem!important;line-height:1.72!important;color:rgba(255,255,255,.56)!important}
.footer-socials,.socials{display:flex!important;align-items:center!important;gap:8px!important;margin-top:20px!important}
.footer-social-btn,.socials a{width:34px!important;height:34px!important;border-radius:10px!important;background:transparent!important;border:0!important;display:grid!important;place-items:center!important;padding:0!important;text-decoration:none!important;overflow:visible!important}
.footer-social-btn img,.socials a img{width:32px!important;height:32px!important;object-fit:contain!important;opacity:.92!important;display:block!important}
.site-footer h3{font-family:'Inter',system-ui,sans-serif!important;font-size:.68rem!important;font-weight:800!important;color:#fff!important;letter-spacing:.12em!important;text-transform:uppercase!important;margin:0 0 18px!important}
.site-footer a,.site-footer p,.site-footer address>p{display:block!important;color:rgba(255,255,255,.58)!important;font-size:.8rem!important;line-height:1.45!important;margin:9px 0!important;font-style:normal!important;font-weight:400!important}
.site-footer a:hover{color:rgba(255,255,255,.92)!important}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08)!important;font-size:.72rem!important;letter-spacing:.03em!important}
.footer-bottom .container{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;padding:18px 0!important;color:rgba(255,255,255,.42)!important}
.footer-bottom a{display:inline!important;color:rgba(255,255,255,.44)!important;font-size:inherit!important;margin:0!important}
@media(max-width:1180px){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.footer-brand{grid-column:1/-1!important}}
@media(max-width:720px){.footer-grid{grid-template-columns:1fr 1fr!important;gap:24px!important}.footer-bottom .container{flex-direction:column!important;text-align:center!important;gap:6px!important}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr!important}.footer-brand p{max-width:100%!important}}

/* general touch/click safety */
a,button,summary{touch-action:manipulation}
[hidden]{display:none!important}


/* v34 layout/navigation/form corrections */
/* Header: keep logo and menu in one row, avoid hero overlap, and make mobile menu reliable. */
.site-header{
  position:sticky!important;
  top:0!important;
  z-index:3000!important;
  min-height:78px!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid var(--platinum,var(--line,#dce8f4))!important;
  overflow:visible!important;
}
.nav-wrap{
  height:78px!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  overflow:visible!important;
}
.brand{flex:0 1 auto!important;min-width:0!important;margin-right:auto!important;display:flex!important;align-items:center!important;overflow:hidden!important}
.brand-mark{width:260px!important;max-width:min(260px,42vw)!important;height:52px!important;object-fit:contain!important;object-position:left center!important;display:block!important}
.main-nav{align-items:center!important;gap:1px!important;margin:0 10px!important;white-space:nowrap!important;min-width:0!important;overflow:visible!important;z-index:3050!important}
.main-nav a{white-space:nowrap!important;line-height:1.15!important}
.nav-cta{white-space:nowrap!important;flex-shrink:0!important}
.language-switcher{flex-shrink:0!important;z-index:3060!important}
.lang-menu{z-index:3100!important}
.mobile-menu{flex-shrink:0!important;margin-left:auto!important;z-index:3120!important}

@media(max-width:1260px){
  .site-header{min-height:72px!important}
  .nav-wrap{height:72px!important}
  .brand-mark{width:240px!important;max-width:min(240px,64vw)!important;height:50px!important}
  .nav-cta,.language-switcher{display:none!important}
  .mobile-menu{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:34px!important;padding:0!important}
  .main-nav{display:none!important}
  .main-nav.open{
    display:flex!important;
    position:absolute!important;
    left:16px!important;
    right:16px!important;
    top:calc(100% + 8px)!important;
    z-index:3200!important;
    background:#fff!important;
    border:1px solid var(--platinum,var(--line,#dce8f4))!important;
    border-radius:16px!important;
    box-shadow:0 24px 64px rgba(11,31,58,.18)!important;
    padding:10px!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:2px!important;
    max-height:min(76vh,620px)!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .main-nav.open a{display:block!important;padding:12px 16px!important;white-space:normal!important}
}
@media(min-width:1261px){
  .mobile-menu{display:none!important}
  .main-nav{display:flex!important}
}
@media(max-width:720px){
  .site-header{min-height:66px!important}
  .nav-wrap{height:66px!important}
  .brand-mark{width:196px!important;max-width:calc(100vw - 112px)!important;height:44px!important}
  .main-nav.open{left:12px!important;right:12px!important;top:calc(100% + 8px)!important}
}

/* Contact form: hide anti-spam honeypot and make long-message input clear and stable. */
.hp-field,
.contact-form .hp-field,
.contact-form-wrap .hp-field,
form .hp-field{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  pointer-events:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.contact-form,
.contact-form-wrap{min-width:0!important}
.contact-form label,
.contact-form-wrap label{display:flex!important;flex-direction:column!important;gap:7px!important;margin:0 0 16px!important;min-width:0!important}
.contact-form input,
.contact-form select,
.contact-form textarea,
.contact-form-wrap input,
.contact-form-wrap select,
.contact-form-wrap textarea{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  min-height:44px!important;
  padding:12px 14px!important;
  line-height:1.45!important;
}
.contact-form textarea,
.contact-form-wrap textarea{min-height:132px!important;max-height:260px!important;resize:vertical!important}
.contact-form .form-grid,
.contact-form-wrap .form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;margin-bottom:2px!important}
.contact-form>label,
.contact-form-wrap form>label{width:100%!important;clear:both!important}
.form-actions{display:flex!important;align-items:center!important;gap:14px!important;flex-wrap:wrap!important;margin-top:8px!important}
.form-actions p{margin:0!important;line-height:1.55!important;max-width:680px!important}
@media(max-width:760px){
  .contact-form .form-grid,.contact-form-wrap .form-grid{grid-template-columns:1fr!important}
  .contact-form,.contact-form-wrap{padding:32px 24px!important}
  .contact-form textarea,.contact-form-wrap textarea{min-height:126px!important}
}

/* Application/product chips: keep each pill as one complete unit and wrap by chip, not inside the chip. */
.mini-chip-row,
.badge-row,
.chip-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:flex-start!important;
  max-width:100%!important;
  overflow:visible!important;
}
.mini-chip-row a,
.badge-row span,
.chip-grid span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 1 auto!important;
  max-width:100%!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  line-height:1.2!important;
  box-sizing:border-box!important;
}
.two-col,.page-hero-copy,.section-heading,.app-content,.subproduct-content,.info-panel{min-width:0!important;overflow:visible!important}
@media(max-width:480px){
  .mini-chip-row a,.badge-row span,.chip-grid span{font-size:.74rem!important;padding:7px 10px!important}
}

/* Application detail icons: consistent line-icon treatment for five application modules. */
.app-icon,
.app-icon-wrap{color:var(--blue,#0b5cab)!important}
.app-icon svg,
.app-icon-wrap svg{width:24px!important;height:24px!important;stroke:currentColor!important;stroke-width:1.9!important;fill:none!important;stroke-linecap:round!important;stroke-linejoin:round!important;display:block!important}
.app-icon.water{background:#e0f2ff!important;color:#1880e0!important}
.app-icon.battery{background:#e0f6ee!important;color:#1a7a51!important}
.app-icon.hydrogen{background:#e4fff8!important;color:#0fad8e!important}
.app-icon.industrial{background:#fff3dc!important;color:#b66a00!important}
.app-icon.shield{background:#ece8ff!important;color:#5f56b3!important}

/* Homepage contact icons: brighter line icons on dark blue background. */
.contact-info-list .ci-icon{
  color:#d7ecff!important;
  background:rgba(96,165,250,.14)!important;
  border-color:rgba(215,236,255,.22)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)!important;
}
.contact-info-list .ci-icon svg{stroke:currentColor!important;fill:none!important}

/* v35 applications + contact refinements */
.app-detail-grid article.application-link-card{
  position:relative!important;
  cursor:pointer!important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
.app-detail-grid article.application-link-card:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(11,92,171,.30)!important;
  box-shadow:0 22px 46px rgba(15,44,72,.13)!important;
}
.app-detail-grid article.application-link-card:focus-within,
.app-detail-grid article.application-link-card:focus{
  outline:3px solid rgba(11,92,171,.22)!important;
  outline-offset:3px!important;
}
.app-content .app-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:18px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#0b5cab,#1f78d1)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:800!important;
  font-size:.88rem!important;
  letter-spacing:.01em!important;
  box-shadow:0 12px 24px rgba(11,92,171,.18)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
  white-space:nowrap!important;
}
.app-content .app-cta:hover,
.application-link-card:hover .app-content .app-cta{
  background:linear-gradient(135deg,#064c94,#0b6fc7)!important;
  box-shadow:0 16px 30px rgba(11,92,171,.25)!important;
  transform:translateX(2px)!important;
}
.app-content .app-cta span{font-size:1rem!important;line-height:1!important;}

/* Contact page side-panel icons: keep them compact and readable, not oversized. */
.page-contact .contact-info-list{
  display:grid!important;
  gap:14px!important;
  margin:30px 0 0!important;
}
.page-contact .contact-info-list li{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:0!important;
  min-height:38px!important;
}
.page-contact .contact-info-list .ci-icon{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:11px!important;
  color:#d7ecff!important;
  background:rgba(96,165,250,.14)!important;
  border:1px solid rgba(215,236,255,.22)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)!important;
  flex:0 0 38px!important;
  overflow:hidden!important;
}
.page-contact .contact-info-list .ci-icon svg{
  width:18px!important;
  height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  fill:none!important;
  display:block!important;
}
.page-contact .contact-info-list .ci-text{min-width:0!important;line-height:1.45!important;}
.page-contact .contact-panel{overflow:hidden!important;}
@media(max-width:900px){
  .app-content .app-cta{width:100%!important;}
}


/* v36: About page partner-logo section spacing refinement */
.page-about #partners {
  padding-top: 86px !important;
  padding-bottom: 86px !important;
}
.page-about #partners .partners-card {
  width: min(1120px, calc(100% - 88px)) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
  padding: 52px 56px 58px !important;
  box-sizing: border-box !important;
}
.page-about #partners .section-kicker,
.page-about #partners h2,
.page-about #partners .partners-intro {
  max-width: 880px !important;
}
.page-about #partners .partners-intro {
  margin-bottom: 26px !important;
}
.page-about #partners .partner-logos-full {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
  gap: 18px 20px !important;
}
.page-about #partners .partner-logo-card {
  height: 116px !important;
  padding: 18px 22px !important;
}
.page-about #partners .partner-logo-card img {
  max-width: 92% !important;
  max-height: 72px !important;
}
@media (max-width: 900px) {
  .page-about #partners .partners-card {
    width: min(100% - 44px, 760px) !important;
    padding: 42px 34px 46px !important;
  }
  .page-about #partners .partner-logos-full {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}
@media (max-width: 560px) {
  .page-about #partners {
    padding-top: 62px !important;
    padding-bottom: 62px !important;
  }
  .page-about #partners .partners-card {
    width: calc(100% - 28px) !important;
    padding: 32px 22px 36px !important;
  }
  .page-about #partners .partner-logos-full {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .page-about #partners .partner-logo-card {
    height: 108px !important;
  }
}


/* ============================================================
   v37 mobile responsiveness pass
   - prevent card/table-like content from being clipped on phones
   - improve Chinese long-text wrapping and compact mobile spacing
   - keep desktop layout unchanged
   ============================================================ */
html,body{max-width:100%;overflow-x:clip;}
main,.site-header,.site-footer{max-width:100%;}
.container{min-width:0!important;}

@media(max-width:680px){
  .page-hero-inner,.page-hero-copy,.hero-copy,.section-heading,.section-header,.about-copy,.family-content,.subproduct-content,.app-content,.info-panel,.download-panel,.screening-box,.selection-box,.cta-card,.contact-panel,.contact-form{min-width:0!important;}
  h1,h2,h3,p,li,a,span,strong,small,label,button{overflow-wrap:anywhere;word-break:normal;}
  .btn,.nav-cta,.product-link,.app-cta{white-space:normal!important;text-align:center;}
  .hero-actions,.page-actions,.cta-actions,.form-actions{align-items:stretch!important;}
  .hero-actions .btn,.page-actions .btn,.cta-actions .btn{width:100%!important;justify-content:center!important;}

  /* Home/About metric blocks: avoid the third column being clipped on phones. */
  .stats-inner{grid-template-columns:1fr!important;display:grid!important;gap:0!important;}
  .stat-cell{min-width:0!important;width:100%!important;border-right:0!important;}
  .about-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;border-radius:16px!important;}
  .about-metrics article{padding:20px 16px!important;border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;min-width:0!important;}
  .about-metrics article:nth-child(2n){border-right:0!important;}
  .about-metrics article:nth-child(3n){border-right:1px solid var(--line)!important;}
  .about-metrics article:nth-child(n+5){border-bottom:0!important;}
  .about-metrics strong{font-size:1.16rem!important;line-height:1.22!important;}
  .about-metrics small{display:block!important;line-height:1.38!important;}

  /* General card padding and image heights for better mobile density. */
  .about-card,.quality-card,.info-panel,.download-panel,.selection-box,.cta-card,.screening-box,.contact-panel,.contact-form,.legal-content{padding:28px 22px!important;border-radius:18px!important;}
  .family-content,.subproduct-content,.app-content{padding:26px 22px!important;}
  .family-photo,.subproduct-photo{min-height:198px!important;height:198px!important;}
  .family-photo img,.subproduct-photo img{height:100%!important;}
  body.page-applications .app-photo{height:200px!important;}
  body.page-applications .app-photo img{height:100%!important;min-height:0!important;}
  .page-hero-media .page-hero-image img,.page-intro-image img{height:220px!important;max-height:240px!important;}

  /* Resource/document cards: stack text and CTA badge/button so the right side is never cut. */
  .download-layout,.evidence-layout,.selection-grid{grid-template-columns:1fr!important;}
  .download-item{display:grid!important;grid-template-columns:1fr!important;align-items:start!important;gap:12px!important;padding:16px!important;}
  .download-item .badge,.download-item .badge.request{justify-self:start!important;white-space:normal!important;}
  .cert-list li{display:grid!important;grid-template-columns:1fr!important;gap:3px!important;}
  .evidence-card{grid-template-columns:1fr!important;}
  .evidence-photo{border-right:0!important;border-bottom:1px solid var(--line)!important;min-height:210px!important;}

  /* Contact form and side panel: compact and single-column. */
  .contact-card,.contact-layout{grid-template-columns:1fr!important;}
  .contact-form .form-grid,.contact-form-wrap .form-grid{grid-template-columns:1fr!important;gap:0!important;}
  .contact-info-list .ci-text,.contact-info-list .ci-text a{overflow-wrap:anywhere!important;}

  /* Chips: keep short English chips intact but allow long Chinese/Russian/Korean/Japanese strings to wrap safely. */
  .mini-chip-row a,.badge-row span,.chip-grid span{white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important;line-height:1.28!important;}
}

@media(max-width:420px){
  .about-metrics{grid-template-columns:1fr!important;}
  .about-metrics article{border-right:0!important;}
  .about-metrics article:nth-child(n+5){border-bottom:1px solid var(--line)!important;}
  .about-metrics article:last-child{border-bottom:0!important;}
  .footer-grid{grid-template-columns:1fr!important;}
  .brand-mark{max-width:168px!important;width:168px!important;}
  .container{width:calc(100% - 28px)!important;}
}

/* ============================================================
   v39 mobile header clickability patch
   Fix: on mobile, sticky headers can become visually visible but not
   reliably tappable after browser chrome/viewport changes. Use a fixed,
   top-layer header and fixed dropdown menu for all language versions.
   ============================================================ */
@media(max-width:1260px){
  :root{--tj-mobile-header-h:72px;}
  html{scroll-padding-top:calc(var(--tj-mobile-header-h) + 16px)!important;}
  body{padding-top:var(--tj-mobile-header-h)!important;}
  .site-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:var(--tj-mobile-header-h)!important;
    min-height:var(--tj-mobile-header-h)!important;
    z-index:9990!important;
    pointer-events:auto!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    isolation:isolate!important;
    will-change:transform!important;
  }
  .nav-wrap{
    height:var(--tj-mobile-header-h)!important;
    min-height:var(--tj-mobile-header-h)!important;
    position:relative!important;
    z-index:9991!important;
    pointer-events:auto!important;
  }
  .brand,.mobile-menu{pointer-events:auto!important;}
  .mobile-menu{
    position:relative!important;
    z-index:10010!important;
    cursor:pointer!important;
    -webkit-user-select:none!important;
    user-select:none!important;
    -webkit-touch-callout:none!important;
  }
  .main-nav.open{
    position:fixed!important;
    left:16px!important;
    right:16px!important;
    top:calc(var(--tj-mobile-header-h) + 8px)!important;
    z-index:10000!important;
    max-height:calc(100dvh - var(--tj-mobile-header-h) - 24px)!important;
    pointer-events:auto!important;
    overscroll-behavior:contain!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
  }
  .main-nav.open a{pointer-events:auto!important;}
}
@media(max-width:720px){
  :root{--tj-mobile-header-h:66px;}
  .site-header,.nav-wrap{height:var(--tj-mobile-header-h)!important;min-height:var(--tj-mobile-header-h)!important;}
  .main-nav.open{
    left:12px!important;
    right:12px!important;
    top:calc(var(--tj-mobile-header-h) + 8px)!important;
    max-height:calc(100dvh - var(--tj-mobile-header-h) - 22px)!important;
  }
}
@media(max-width:380px){
  .mobile-menu{width:40px!important;height:36px!important;font-size:18px!important;}
}

/* ============================================================
   v40 certificate image containment patch
   Fix: certificate thumbnails in Resource Center could overflow the
   image frame on mobile because width:100% let tall portrait images
   exceed the fixed preview height. Keep all certificate images inside
   their cards across every language version.
   ============================================================ */
.cert-card,
.cert-image,
.cert-wrap,
.cert-panel,
.evidence-photo{
  min-width:0!important;
}
.cert-image{
  overflow:hidden!important;
  box-sizing:border-box!important;
  align-items:center!important;
  justify-items:center!important;
}
.cert-image img{
  width:auto!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:auto!important;
  display:block!important;
}
.cert-wrap,
.cert-panel{
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.cert-wrap img,
.cert-panel img{
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
}
.evidence-photo{
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.evidence-photo img{
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:230px!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:auto!important;
  display:block!important;
}
@media(max-width:680px){
  .cert-image{
    height:330px!important;
    padding:16px!important;
  }
  .cert-image img{
    height:100%!important;
    max-height:100%!important;
  }
  .cert-body{
    position:relative!important;
    z-index:1!important;
    background:#fff!important;
  }
  .evidence-photo img{
    max-height:210px!important;
  }
}
@media(max-width:420px){
  .cert-image{
    height:300px!important;
    padding:14px!important;
  }
}

/* v40.1: use flex containment for certificate previews to avoid grid intrinsic-size overflow. */
.cert-image{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.cert-image img{
  flex:0 1 auto!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}

/* v40.2: keep certificate preview large enough on common phone widths while contained. */
@media(max-width:680px){.cert-image{height:340px!important;}}
@media(max-width:360px){.cert-image{height:310px!important;}}

/* ============================================================
   v41 mobile border consistency patch
   Fix: home metric cards on narrow screens inherited desktop nth-child
   border rules, causing some card edges to disappear. Rebuild the
   mobile borders from zero so all language versions render cleanly.
   ============================================================ */
@media(max-width:680px){
  .page-home .about-metrics{
    overflow:hidden!important;
  }
  .page-home .about-metrics{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
    border:1px solid var(--platinum,var(--line,#dce8f4))!important;
    border-radius:18px!important;
    box-shadow:var(--s2,0 14px 36px rgba(20,45,70,.08))!important;
    background:#fff!important;
  }
  .page-home .about-metrics .metric-card{
    min-width:0!important;
    min-height:126px!important;
    padding:24px 18px!important;
    border:0!important;
    border-right:1px solid var(--platinum,var(--line,#dce8f4))!important;
    border-bottom:1px solid var(--platinum,var(--line,#dce8f4))!important;
    box-shadow:none!important;
  }
  .page-home .about-metrics .metric-card:nth-child(2n){
    border-right:0!important;
  }
  .page-home .about-metrics .metric-card:nth-last-child(-n+2){
    border-bottom:0!important;
  }
  .page-home .about-metrics .metric-num{
    font-size:1.55rem!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
  }
  .page-home .about-metrics .metric-label{
    font-size:.66rem!important;
    line-height:1.35!important;
    letter-spacing:.055em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  .page-about .about-metrics{
    overflow:hidden!important;
  }
  .page-about .about-metrics article{
    border-top:0!important;
    border-left:0!important;
    box-shadow:none!important;
  }
}

@media(max-width:340px){
  .page-home .about-metrics{
    grid-template-columns:1fr!important;
  }
  .page-home .about-metrics .metric-card{
    min-height:112px!important;
    border-right:0!important;
    border-bottom:1px solid var(--platinum,var(--line,#dce8f4))!important;
  }
  .page-home .about-metrics .metric-card:last-child{
    border-bottom:0!important;
  }
}


/* v42 multilingual text safety */
.lang-ru, .lang-ko, .lang-ja { overflow-wrap: anywhere; }
.lang-ru .main-nav a, .lang-ko .main-nav a, .lang-ja .main-nav a { white-space: normal; }
.lang-ja, .lang-ko, .lang-ru { word-break: normal; }
@media (max-width: 760px) {
  .lang-ru .product-family-card h3,
  .lang-ko .product-family-card h3,
  .lang-ja .product-family-card h3 { font-size: 1.25rem; }
}


/* v43: robust metric borders + content preview modules */
.stats-inner,
.stat-showcase,
.about-metrics{
  gap:1px!important;
  background:var(--line,#dce8f4)!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.stats-inner .stat-cell,
.stat-showcase .stat-tile,
.about-metrics article,
.page-home .about-metrics .metric-card{
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
  min-width:0!important;
}
.stats-inner .stat-cell:hover,
.stat-showcase .stat-tile:hover,
.about-metrics article:hover,
.page-home .about-metrics .metric-card:hover{
  background:#f6fafd!important;
}
.stat-showcase{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;}
.stat-showcase .stat-tile{padding:28px 22px!important;}
.stat-showcase .stat-tile strong{display:block;font-family:'Manrope',sans-serif;font-size:1.35rem;color:var(--text,#101820);line-height:1.15;margin-bottom:8px;}
.stat-showcase .stat-tile small{display:block;color:var(--muted,#6d7a88);font-weight:650;line-height:1.35;}

.content-preview-section{background:#fff;}
.content-preview-section.pale,.resources-faq-preview{background:#eef4f8;}
.content-preview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;}
.content-preview-heading h2{margin:8px 0 10px;}
.content-preview-heading p{max-width:760px;color:var(--muted,#6d7a88);line-height:1.72;margin:0;}
.content-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.preview-card{display:flex;flex-direction:column;min-height:100%;background:#fff;border:1px solid var(--line,#dce8f4);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-sm,0 8px 24px rgba(16,32,54,.06));transition:transform .22s var(--ease,ease),box-shadow .22s,border-color .22s;color:inherit;text-decoration:none;}
.preview-card:hover{transform:translateY(-3px);box-shadow:var(--shadow,0 18px 44px rgba(16,32,54,.10));border-color:#c7d9e8;}
.preview-thumb{height:150px;background:#eef4f8;overflow:hidden;}
.preview-thumb img{width:100%;height:100%;object-fit:cover;filter:saturate(.96) brightness(.98);}
.preview-card-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1;}
.preview-card-body h3{font-size:1.04rem;line-height:1.35;margin:0;color:var(--text,#101820);}
.preview-card-body p{font-size:.9rem;line-height:1.62;color:var(--muted,#6d7a88);margin:0;}
.preview-card-body strong{margin-top:auto;color:var(--blue,#005bac);font-size:.86rem;}
.faq-preview-shell{background:#fff;border:1px solid var(--line,#dce8f4);border-radius:22px;box-shadow:var(--shadow,0 18px 44px rgba(16,32,54,.10));padding:34px;}
.faq-preview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.preview-faq{background:#f8fbfd;border:1px solid var(--line,#dce8f4);border-radius:16px;padding:16px 18px;}
.preview-faq summary{cursor:pointer;font-weight:800;color:var(--text,#101820);line-height:1.42;}
.preview-faq p{margin:12px 0 0;color:var(--muted,#6d7a88);line-height:1.65;font-size:.9rem;}

@media(max-width:980px){
  .stat-showcase{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .content-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .stats-inner,.stat-showcase,.about-metrics{gap:1px!important;}
  .stat-showcase{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .stat-showcase .stat-tile{padding:22px 18px!important;}
  .stat-showcase .stat-tile strong{font-size:1.18rem;}
  .content-preview-heading{display:block;}
  .content-preview-heading .btn{margin-top:18px;}
  .content-preview-grid{grid-template-columns:1fr;}
  .preview-thumb{height:130px;}
  .faq-preview-shell{padding:24px 18px;}
  .faq-preview-list{grid-template-columns:1fr;}
}
@media(max-width:380px){
  .stat-showcase{grid-template-columns:1fr!important;}
}

/* ============================================================
   v45 knowledge/article readability polish
   - clearer separation between articles in Knowledge & Updates
   - stronger Read article / Read update calls-to-action
   - contained article hero image on desktop
   - localized smart back link + CSS-only loading indicator
   ============================================================ */
.insight-list,
.insight-grid{
  display:grid!important;
  gap:0!important;
  background:#fff!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:var(--shadow,0 18px 44px rgba(16,32,54,.10))!important;
}
.insight-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(170px,260px) minmax(0,1fr)!important;
  gap:0!important;
  padding:26px!important;
  color:inherit!important;
  text-decoration:none!important;
  background:linear-gradient(90deg,#fff 0%,#fff 72%,#f8fbfd 100%)!important;
  border:0!important;
  border-bottom:1px solid var(--line,#dce8f4)!important;
  box-shadow:none!important;
  transition:background .22s var(--ease,ease),transform .22s var(--ease,ease),box-shadow .22s var(--ease,ease)!important;
}
.insight-card:last-child{border-bottom:0!important;}
.insight-card::before{
  content:"";
  position:absolute;
  left:0;
  top:26px;
  bottom:26px;
  width:4px;
  border-radius:0 8px 8px 0;
  background:linear-gradient(180deg,var(--blue,#005bac),#35a6d9);
  opacity:.86;
}
.insight-card:hover{
  background:linear-gradient(90deg,#f9fcff 0%,#fff 65%,#eef7ff 100%)!important;
  transform:translateY(-1px)!important;
  box-shadow:inset 0 0 0 1px rgba(0,91,172,.08)!important;
}
.insight-thumb{
  width:100%!important;
  height:168px!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#eef4f8!important;
  border:1px solid var(--line,#dce8f4)!important;
}
.insight-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  filter:saturate(.96) brightness(.98)!important;
  transition:transform .32s var(--ease,ease)!important;
}
.insight-card:hover .insight-thumb img{transform:scale(1.035)!important;}
.insight-card-body{
  padding:2px 4px 2px 26px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  min-width:0!important;
}
.insight-card-body .content-meta,
.content-meta{
  color:#6f8397!important;
  font-size:.75rem!important;
  font-weight:750!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
.insight-card-body h3{
  margin:10px 0 10px!important;
  color:var(--text,#101820)!important;
  font-size:1.24rem!important;
  line-height:1.34!important;
  letter-spacing:-.02em!important;
}
.insight-card-body p{
  margin:0!important;
  color:var(--muted,#6d7a88)!important;
  line-height:1.68!important;
  font-size:.94rem!important;
}
.insight-card-body strong{
  margin-top:18px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:38px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--blue,#005bac),#0d7dcc)!important;
  box-shadow:0 10px 22px rgba(0,91,172,.18)!important;
  font-size:.85rem!important;
  font-weight:800!important;
  line-height:1!important;
}
.insight-card:hover .insight-card-body strong{
  background:linear-gradient(135deg,#004b93,#0094d8)!important;
  box-shadow:0 14px 28px rgba(0,91,172,.24)!important;
}
.faq-list{
  display:grid!important;
  gap:12px!important;
}
.faq-list details{
  background:#fff!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:18px!important;
  box-shadow:var(--shadow-sm,0 8px 24px rgba(16,32,54,.06))!important;
  padding:18px 22px!important;
}
.faq-list details + details{margin-top:0!important;}
.faq-list summary{
  cursor:pointer!important;
  font-weight:850!important;
  color:var(--text,#101820)!important;
  line-height:1.45!important;
}
.faq-list p{
  margin:12px 0 0!important;
  color:var(--muted,#6d7a88)!important;
  line-height:1.68!important;
}
.article-hero{padding-bottom:52px!important;}
.article-meta-row{
  margin-top:24px!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  flex-wrap:wrap!important;
}
.article-meta-row .content-meta-line{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:9px 14px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(201,218,232,.92)!important;
  color:#4e6478!important;
  font-size:.82rem!important;
  font-weight:800!important;
  letter-spacing:.035em!important;
}
.article-back-link{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:9px 15px!important;
  border-radius:999px!important;
  color:var(--blue,#005bac)!important;
  background:#fff!important;
  border:1px solid rgba(0,91,172,.18)!important;
  box-shadow:0 8px 20px rgba(16,32,54,.06)!important;
  text-decoration:none!important;
  font-size:.84rem!important;
  font-weight:850!important;
  transition:transform .2s var(--ease,ease),box-shadow .2s var(--ease,ease),background .2s!important;
}
.article-back-link:hover{
  transform:translateY(-1px)!important;
  background:#f4f9ff!important;
  box-shadow:0 12px 24px rgba(0,91,172,.12)!important;
}
.article-section{background:#f6f9fc!important;}
.article-layout{
  max-width:1120px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,320px)!important;
  gap:30px!important;
  align-items:start!important;
}
.article-cover{
  grid-column:1/-1!important;
  margin:0!important;
  border-radius:24px!important;
  overflow:hidden!important;
  border:1px solid var(--line,#dce8f4)!important;
  background:#eaf2f8!important;
  box-shadow:var(--shadow,0 18px 44px rgba(16,32,54,.10))!important;
  max-height:360px!important;
}
.article-cover img{
  width:100%!important;
  height:clamp(240px,27vw,360px)!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  filter:saturate(.96) brightness(.98)!important;
}
.article-body{
  background:#fff!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:24px!important;
  box-shadow:var(--shadow-sm,0 8px 24px rgba(16,32,54,.06))!important;
  padding:44px 48px!important;
  color:var(--text-2,#3f4c5a)!important;
  line-height:1.82!important;
  font-size:1rem!important;
  min-width:0!important;
}
.article-body p{
  margin:0 0 1.25em!important;
  color:var(--text-2,#3f4c5a)!important;
}
.article-body p:last-child{margin-bottom:0!important;}
.article-cta{
  position:sticky!important;
  top:110px!important;
  background:#fff!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:22px!important;
  box-shadow:var(--shadow-sm,0 8px 24px rgba(16,32,54,.06))!important;
  padding:28px!important;
}
.article-cta h3{margin:0 0 12px!important;color:var(--text,#101820)!important;line-height:1.3!important;}
.article-cta p{color:var(--muted,#6d7a88)!important;line-height:1.68!important;margin:0 0 18px!important;}
.content-loading-section{
  min-height:52vh!important;
  display:flex!important;
  align-items:center!important;
  background:linear-gradient(180deg,#f7fbff,#fff)!important;
}
.content-loading{
  display:grid!important;
  place-items:center!important;
  min-height:280px!important;
}
.loading-card{
  width:min(100%,420px)!important;
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
  padding:40px 34px!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:var(--shadow,0 18px 44px rgba(16,32,54,.10))!important;
  overflow:hidden!important;
  position:relative!important;
}
.loading-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 0%,rgba(0,91,172,.08) 42%,rgba(0,91,172,.16) 50%,rgba(0,91,172,.08) 58%,transparent 100%);
  transform:translateX(-120%);
  animation:tjneLoadingSweep 1.8s ease-in-out infinite;
}
.loading-ring{
  position:relative!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  border:3px solid rgba(0,91,172,.13)!important;
  border-top-color:var(--blue,#005bac)!important;
  animation:tjneLoadingSpin .9s linear infinite!important;
  margin-bottom:18px!important;
}
.loading-card strong{
  position:relative!important;
  display:block!important;
  font-family:'Manrope',sans-serif!important;
  font-size:1.06rem!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
  background:linear-gradient(90deg,var(--blue,#005bac),#0d8bd5,var(--blue,#005bac))!important;
  background-size:220% 100%!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  animation:tjneTextShimmer 2.2s ease-in-out infinite!important;
}
.loading-card p{
  position:relative!important;
  color:var(--muted,#6d7a88)!important;
  margin:10px 0 0!important;
  line-height:1.6!important;
}
@keyframes tjneLoadingSpin{to{transform:rotate(360deg);}}
@keyframes tjneTextShimmer{0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}
@keyframes tjneLoadingSweep{0%{transform:translateX(-120%);}55%,100%{transform:translateX(120%);}}

@media(max-width:900px){
  .insight-card{grid-template-columns:minmax(140px,220px) minmax(0,1fr)!important;padding:22px!important;}
  .insight-card-body{padding-left:22px!important;}
  .article-layout{grid-template-columns:1fr!important;}
  .article-cta{position:static!important;}
  .article-body{padding:38px 34px!important;}
}
@media(max-width:680px){
  .insight-list,.insight-grid{border-radius:20px!important;}
  .insight-card{grid-template-columns:1fr!important;padding:20px!important;background:#fff!important;}
  .insight-card::before{top:20px;bottom:20px;}
  .insight-thumb{height:150px!important;margin-left:10px!important;width:calc(100% - 10px)!important;}
  .insight-card-body{padding:18px 2px 0 10px!important;}
  .insight-card-body h3{font-size:1.12rem!important;}
  .insight-card-body strong{width:auto!important;min-height:36px!important;padding:10px 15px!important;}
  .article-hero{padding-bottom:42px!important;}
  .article-meta-row{margin-top:18px!important;gap:10px!important;}
  .article-meta-row .content-meta-line,
  .article-back-link{min-height:36px!important;font-size:.78rem!important;padding:8px 12px!important;}
  .article-cover{border-radius:20px!important;max-height:240px!important;}
  .article-cover img{height:220px!important;}
  .article-body{padding:28px 24px!important;border-radius:20px!important;font-size:.96rem!important;line-height:1.78!important;}
  .article-cta{padding:24px!important;border-radius:20px!important;}
  .loading-card{padding:34px 24px!important;border-radius:22px!important;}
}


/* v46 Knowledge / article UX improvements */
.insight-jump-nav{position:sticky!important;top:72px!important;z-index:20!important;background:rgba(255,255,255,.92)!important;border-top:1px solid var(--line,#dce8f4)!important;border-bottom:1px solid var(--line,#dce8f4)!important;backdrop-filter:blur(12px)!important;}
.insight-jump-inner{display:flex!important;justify-content:center!important;gap:10px!important;flex-wrap:wrap!important;padding:14px 20px!important;}
.insight-jump-inner a{display:inline-flex!important;align-items:center!important;min-height:38px!important;padding:9px 15px!important;border-radius:999px!important;border:1px solid rgba(0,91,172,.14)!important;background:#fff!important;color:var(--blue,#005bac)!important;font-weight:850!important;text-decoration:none!important;font-size:.86rem!important;box-shadow:0 8px 18px rgba(16,32,54,.05)!important;}
.insight-jump-inner a:hover{background:#eef7ff!important;transform:translateY(-1px)!important;}
.article-body h2{margin:1.55em 0 .65em!important;color:var(--text,#101820)!important;font-size:1.45rem!important;line-height:1.35!important;letter-spacing:-.02em!important;}
.article-body h3{margin:1.25em 0 .55em!important;color:var(--blue,#005bac)!important;font-size:1.12rem!important;line-height:1.42!important;}
.article-body ul{margin:.35em 0 1.4em!important;padding-left:1.35em!important;color:var(--text-2,#3f4c5a)!important;}
.article-body li{margin:.48em 0!important;line-height:1.78!important;}
.article-body a{color:var(--blue,#005bac)!important;font-weight:750!important;text-decoration:underline!important;text-underline-offset:4px!important;}
.faq-answer p{margin:10px 0 0!important;}
.faq-answer ul{margin:.6em 0 0!important;padding-left:1.25em!important;color:var(--muted,#6d7a88)!important;}
.article-not-found{max-width:920px!important;margin:0 auto!important;padding:42px!important;border-radius:26px!important;background:linear-gradient(135deg,#fff,#f6fbff)!important;border:1px solid var(--line,#dce8f4)!important;box-shadow:var(--shadow-sm,0 8px 24px rgba(16,32,54,.06))!important;}
.article-not-found h1{margin:0 0 12px!important;color:var(--text,#101820)!important;font-size:2rem!important;}
.article-not-found p{color:var(--muted,#6d7a88)!important;line-height:1.7!important;}
.article-notice-actions{display:flex!important;gap:12px!important;flex-wrap:wrap!important;margin:22px 0 8px!important;}
.notfound-suggestions{margin-top:28px!important;border-top:1px solid var(--line,#dce8f4)!important;padding-top:22px!important;display:grid!important;gap:10px!important;}
.notfound-suggestions h2{font-size:1.1rem!important;margin:0 0 4px!important;color:var(--blue,#005bac)!important;}
.notfound-suggestions a{display:grid!important;gap:4px!important;padding:14px 16px!important;border:1px solid var(--line,#dce8f4)!important;border-radius:16px!important;background:#fff!important;text-decoration:none!important;color:inherit!important;}
.notfound-suggestions a:hover{border-color:rgba(0,91,172,.28)!important;background:#f7fbff!important;}
.notfound-suggestions span{font-size:.78rem!important;color:#6f8397!important;font-weight:850!important;letter-spacing:.03em!important;}
.notfound-suggestions strong{color:var(--text,#101820)!important;line-height:1.4!important;}
@media(max-width:760px){.insight-jump-nav{top:82px!important}.insight-jump-inner{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding:12px 18px!important}.insight-jump-inner a{white-space:nowrap!important}.article-not-found{padding:28px 22px!important;border-radius:22px!important}}

/* ============================================================
   v47 visual experiment — Fashion-tech industrial direction
   Safe rollback: appended overrides only, no content/KV changes.
   Palette: Deep Navy + Industrial Blue + Electric Teal.
   ============================================================ */
:root{
  --navy:#0b1f3a!important;
  --navy-2:#0e2a40!important;
  --ink:#0b1f3a!important;
  --text:#0b1f3a!important;
  --blue:#0b5cab!important;
  --electric-teal:#00c9b1!important;
  --teal:#00c9b1!important;
  --brass:#00c9b1!important;
  --brass-2:#39e2cf!important;
  --copper:#00c9b1!important;
  --copper-2:#39e2cf!important;
  --accent:#00c9b1!important;
  --radius:20px;
  --radius-lg:28px;
}

body{
  font-weight:300!important;
  background:#f4f7fa!important;
}
p,li,small,.hero-lead,.section-heading p,.page-hero-inner p,.article-body,.article-body p,.preview-card-body p,.insight-card-body p{
  font-weight:300!important;
}
h1,.hero h1,.page-hero h1{
  font-family:'Manrope',system-ui,sans-serif!important;
  font-weight:800!important;
  letter-spacing:-.045em!important;
}
h2,h3{letter-spacing:-.028em!important;}

/* Header: high-end shrink + blur after scroll */
.site-header{
  transition:box-shadow .28s var(--ease,ease),background .28s var(--ease,ease),border-color .28s var(--ease,ease),backdrop-filter .28s var(--ease,ease)!important;
}
.nav-wrap,.brand-mark{
  transition:height .28s var(--ease,ease),width .28s var(--ease,ease),transform .28s var(--ease,ease)!important;
}
.site-header.scrolled{
  background:rgba(255,255,255,.84)!important;
  backdrop-filter:blur(32px) saturate(2)!important;
  -webkit-backdrop-filter:blur(32px) saturate(2)!important;
  box-shadow:0 16px 44px rgba(11,31,58,.10)!important;
  border-bottom-color:rgba(0,201,177,.22)!important;
}
.site-header.scrolled .nav-wrap{height:64px!important;}
.site-header.scrolled .brand-mark{width:250px!important;height:46px!important;}
.main-nav a:hover,.main-nav a.active{
  background:rgba(0,201,177,.10)!important;
  color:#064f8e!important;
}
.nav-cta,.btn-primary{
  background:linear-gradient(135deg,#0b1f3a 0%,#0b5cab 72%,#00c9b1 130%)!important;
  box-shadow:0 12px 26px rgba(11,31,58,.16)!important;
}
.nav-cta:hover,.btn-primary:hover{
  background:linear-gradient(135deg,#0b5cab 0%,#0789c8 55%,#00c9b1 100%)!important;
  box-shadow:0 16px 34px rgba(0,201,177,.22)!important;
}

/* Homepage hero: heavier, magazine-tech opening */
.page-home .hero{
  background:#0b1f3a!important;
  color:#fff!important;
  min-height:auto!important;
}
.page-home .hero::after{
  content:"";
  position:absolute;
  inset:auto -10% -34% 38%;
  height:62%;
  background:radial-gradient(circle at center,rgba(0,201,177,.24),rgba(11,92,171,.10) 42%,transparent 68%);
  pointer-events:none;
  z-index:-1;
}
.page-home .hero-grid-bg{
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px)!important;
  background-size:64px 64px!important;
  opacity:.9!important;
}
.page-home .hero h1,
.page-home .hero h1 em{
  color:#fff!important;
  text-shadow:0 18px 50px rgba(0,0,0,.20);
}
.page-home .hero h1 em{
  background:linear-gradient(90deg,#fff 0%,#c9fff8 38%,#00c9b1 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
}
.page-home .hero-label{
  color:#7ff3e5!important;
  border-color:rgba(0,201,177,.34)!important;
  background:rgba(0,201,177,.08)!important;
}
.page-home .hero-lead{color:rgba(255,255,255,.76)!important;}
.page-home .hero-tag{
  color:rgba(255,255,255,.78)!important;
  border-color:rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.06)!important;
}
.page-home .hero-img-wrap{
  background:#f6f8fb!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.30)!important;
  border-radius:28px!important;
}
.page-home .hero-badge{
  border-color:rgba(0,201,177,.36)!important;
  box-shadow:0 20px 54px rgba(0,0,0,.22)!important;
}
.page-home .hero-badge-dot{background:#00c9b1!important;box-shadow:0 0 0 6px rgba(0,201,177,.18)!important;}

/* Hero reveal animation — CSS only, initialized by script */
.hero-word{
  display:inline-block;
  clip-path:inset(0 100% 0 0);
  transform:translateY(8px);
  opacity:.001;
  animation:tjneHeroWord .76s cubic-bezier(.22,1,.36,1) forwards;
  animation-delay:calc(var(--word-index,0) * 70ms + 120ms);
}
@keyframes tjneHeroWord{
  to{clip-path:inset(0 0 0 0);transform:translateY(0);opacity:1;}
}

/* Cards: fewer borders, stronger rhythm */
.product-card,.family-card,.subproduct-card,.app-card,.res-card,.intro-card,.cert-card,.evidence-card,.partner-logo-card,.quality-card,.about-card,.contact-panel,.contact-form,.contact-aside,.legal-content{
  border-color:transparent!important;
  border-width:0!important;
  border-radius:24px!important;
  box-shadow:0 18px 48px rgba(11,31,58,.08)!important;
}
.product-card:hover,.family-card:hover,.subproduct-card:hover,.app-card:hover,.res-card:hover,.intro-card:hover,.cert-card:hover,.evidence-card:hover{
  transform:translateY(-5px)!important;
  box-shadow:0 28px 70px rgba(11,31,58,.14)!important;
}
.product-card,.family-card,.subproduct-card{background:#fff!important;}
.product-accent,.feature-badge,.anchor-chip{background:#00c9b1!important;color:#06312e!important;}

/* Knowledge: fashion contrast cards for technical content */
.insight-list,.insight-grid{
  background:rgba(0,201,177,.18)!important;
  border-color:rgba(0,201,177,.22)!important;
  box-shadow:0 24px 70px rgba(11,31,58,.12)!important;
}
.insight-card{
  background:#0b1f3a!important;
  color:#fff!important;
  border-bottom:1px solid rgba(0,201,177,.24)!important;
}
.insight-card::before{background:#00c9b1!important;box-shadow:0 0 24px rgba(0,201,177,.55)!important;}
.insight-card:hover{
  background:linear-gradient(135deg,#0b1f3a 0%,#0e2a40 58%,#0b5cab 130%)!important;
  box-shadow:inset 0 0 0 1px rgba(0,201,177,.22)!important;
}
.insight-card-body .content-meta,.content-meta{color:rgba(127,243,229,.82)!important;}
.insight-card-body h3{color:#fff!important;}
.insight-card-body p{color:rgba(255,255,255,.70)!important;}
.insight-card-body strong{
  color:#06131f!important;
  background:#00c9b1!important;
  box-shadow:0 14px 30px rgba(0,201,177,.24)!important;
}
.insight-card:hover .insight-card-body strong{
  background:linear-gradient(135deg,#00c9b1,#70f6e9)!important;
}
.insight-thumb{border-color:rgba(255,255,255,.12)!important;background:#06131f!important;}

/* Preview cards: company/news modules stay elegant but more modern */
.preview-card{
  border:0!important;
  border-radius:24px!important;
  box-shadow:0 18px 48px rgba(11,31,58,.08)!important;
}
.preview-card:hover{box-shadow:0 28px 70px rgba(11,31,58,.13)!important;}
.preview-card-body strong{
  align-self:flex-start!important;
  display:inline-flex!important;
  padding:9px 14px!important;
  border-radius:999px!important;
  color:#06131f!important;
  background:#00c9b1!important;
}
.preview-faq summary::marker,.faq-list summary::marker{color:#00c9b1!important;}
.faq-list summary{color:#0b1f3a!important;}
.faq-list details[open]{border-color:rgba(0,201,177,.28)!important;box-shadow:0 16px 36px rgba(0,201,177,.08)!important;}

/* Article detail: refine contrast without over-heavy images */
.article-cover{max-height:320px!important;border:0!important;border-radius:26px!important;}
.article-cover img{height:clamp(220px,24vw,320px)!important;}
.article-body{border:0!important;border-radius:26px!important;box-shadow:0 20px 56px rgba(11,31,58,.08)!important;}
.article-body h2{color:#0b1f3a!important;}
.article-body h3,.article-body a{color:#0b5cab!important;}
.article-body a:hover{color:#008f80!important;}
.article-back-link{border-color:rgba(0,201,177,.28)!important;color:#006e63!important;}
.article-back-link:hover{background:rgba(0,201,177,.10)!important;}
.loading-ring{border-top-color:#00c9b1!important;}
.loading-card strong{background:linear-gradient(90deg,#0b5cab,#00c9b1,#0b5cab)!important;background-size:220% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;}

/* Reveal: smoother sequence for cards */
.reveal{
  opacity:0;
  transform:translateY(20px);
  transition:opacity .62s cubic-bezier(.22,1,.36,1),transform .62s cubic-bezier(.22,1,.36,1)!important;
  transition-delay:var(--reveal-delay,0ms)!important;
}
.reveal.visible{opacity:1;transform:translateY(0);}
.product-card.reveal,.app-card.reveal,.res-card.reveal,.preview-card,.insight-card{
  will-change:transform,opacity;
}

/* Footer: magazine-style two-tone structure */
.site-footer{
  position:relative!important;
  background:#0e2a40!important;
  border-top:0!important;
}
.site-footer::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:1px;
  background:rgba(0,201,177,.30);
}
.footer-grid{background:#0e2a40!important;}
.footer-bottom{background:#06131f!important;border-top:1px solid rgba(0,201,177,.30)!important;}
.site-footer h3{color:#fff!important;}
.site-footer a:hover{color:#7ff3e5!important;}
.footer-social-btn:hover img,.socials a:hover img{filter:brightness(1.2) saturate(1.25)!important;}

@media(max-width:760px){
  .site-header.scrolled .nav-wrap{height:60px!important;}
  .site-header.scrolled .brand-mark{width:172px!important;height:42px!important;}
  .page-home .hero{padding-top:24px!important;}
  .page-home .hero h1{letter-spacing:-.038em!important;}
  .insight-card{background:#0b1f3a!important;}
  .article-cover{max-height:240px!important;}
  .article-cover img{height:220px!important;}
}

@media(prefers-reduced-motion:reduce){
  .hero-word,.reveal,.loading-card::before,.loading-ring,.loading-card strong{animation:none!important;transition:none!important;clip-path:none!important;opacity:1!important;transform:none!important;}
}

/* ============================================================
   v48 hotfix — keep gradient hero emphasis visible after word reveal
   Reason: v47 wraps hero words in span.hero-word; the <em> gradient text
   became transparent in some browsers because background-clip:text was
   applied to the parent <em>, not the generated child spans.
   ============================================================ */
.page-home .hero h1 em .hero-word{
  background:linear-gradient(90deg,#ffffff 0%,#c9fff8 38%,#00c9b1 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:transparent!important;
}
.page-home .hero h1,
.page-home .hero h1 em,
.page-home .hero h1 .hero-word{
  overflow:visible!important;
}
.page-home .hero-copy{
  min-width:0!important;
  max-width:min(680px,100%)!important;
}
@supports not (-webkit-background-clip:text){
  .page-home .hero h1 em,
  .page-home .hero h1 em .hero-word{
    background:none!important;
    color:#7ff3e5!important;
    -webkit-text-fill-color:#7ff3e5!important;
  }
}
@media(max-width:760px){
  .page-home .hero h1 em .hero-word{
    background:linear-gradient(90deg,#ffffff 0%,#bffff7 50%,#00c9b1 100%)!important;
    -webkit-background-clip:text!important;
    background-clip:text!important;
    -webkit-text-fill-color:transparent!important;
  }
}

/* ============================================================
   v49 hotfix — About page icon contrast and sizing
   Goal: make About metric / capability icons more visible on the
   darker v47 visual experiment background, while keeping the style
   consistent across all language versions.
   ============================================================ */
.page-about .about-metrics .metric-icon,
.about-card .about-metrics .metric-icon{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:14px!important;
  margin-bottom:15px!important;
  font-size:1.28rem!important;
  line-height:1!important;
  color:#062f35!important;
  background:linear-gradient(135deg,#7ff3e5 0%,#00c9b1 100%)!important;
  border:1px solid rgba(255,255,255,.34)!important;
  box-shadow:0 14px 30px rgba(0,201,177,.25), inset 0 1px 0 rgba(255,255,255,.40)!important;
  text-shadow:none!important;
}
.page-about .about-metrics article:hover .metric-icon,
.about-card .about-metrics article:hover .metric-icon{
  transform:translateY(-1px) scale(1.035)!important;
  box-shadow:0 18px 38px rgba(0,201,177,.34), inset 0 1px 0 rgba(255,255,255,.46)!important;
}

.quality-features span,
.quality-feat-icon{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:14px!important;
  margin-bottom:14px!important;
  font-size:1.25rem!important;
  color:#062f35!important;
  background:linear-gradient(135deg,#e8fffb 0%,#7ff3e5 55%,#00c9b1 100%)!important;
  border:1px solid rgba(0,201,177,.42)!important;
  box-shadow:0 12px 28px rgba(11,31,58,.10), 0 8px 22px rgba(0,201,177,.16)!important;
  text-shadow:none!important;
}
.quality-features article:hover span,
.quality-feat:hover .quality-feat-icon{
  transform:translateY(-1px) scale(1.04)!important;
  box-shadow:0 18px 36px rgba(11,31,58,.12), 0 12px 28px rgba(0,201,177,.22)!important;
}

/* Improve visibility for resource/about auxiliary icon blocks too, but keep them modest. */
.intro-icon,
.res-icon,
.resource-grid span{
  color:#062f35!important;
  background:linear-gradient(135deg,#e8fffb 0%,#9ff8ee 100%)!important;
  border:1px solid rgba(0,201,177,.34)!important;
  box-shadow:0 10px 24px rgba(0,201,177,.12)!important;
}

@media(max-width:760px){
  .page-about .about-metrics .metric-icon,
  .about-card .about-metrics .metric-icon{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    font-size:1.22rem!important;
  }
  .quality-features span,
  .quality-feat-icon{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    font-size:1.18rem!important;
  }
}


/* ============================================================
   v50 refinement — remove near-duplicate home metrics and rebuild
   stats/capability grid borders for desktop + mobile.
   - Home about panel now shows capabilities, not repeated numbers.
   - Grid lines use gap + background, not nth-child borders.
   ============================================================ */
.page-home .about-capabilities{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:1px!important;
  padding:1px!important;
  background:rgba(127,243,229,.34)!important;
  border:1px solid rgba(127,243,229,.40)!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 24px 70px rgba(6,19,31,.15)!important;
}
.page-home .about-capabilities .capability-card{
  min-width:0!important;
  min-height:158px!important;
  padding:26px 24px!important;
  background:#0e2a40!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  transition:background .22s ease, transform .22s ease!important;
}
.page-home .about-capabilities .capability-card:hover{
  background:linear-gradient(135deg,#0e2a40 0%,#0b1f3a 58%,#0b5cab 145%)!important;
  transform:translateY(-1px)!important;
}
.page-home .about-capabilities .capability-index{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  height:24px!important;
  border-radius:999px!important;
  background:rgba(0,201,177,.15)!important;
  color:#7ff3e5!important;
  border:1px solid rgba(127,243,229,.25)!important;
  font-family:'JetBrains Mono','Inter',monospace!important;
  font-size:.68rem!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
  margin-bottom:18px!important;
}
.page-home .about-capabilities h3{
  margin:0 0 9px!important;
  color:#fff!important;
  font-family:'Manrope',sans-serif!important;
  font-size:1rem!important;
  line-height:1.24!important;
  letter-spacing:-.018em!important;
}
.page-home .about-capabilities p{
  margin:0!important;
  color:rgba(255,255,255,.68)!important;
  font-size:.82rem!important;
  line-height:1.6!important;
  font-weight:350!important;
}

/* Rebuild generic metric grid borders in dark experiment mode. */
.page-home .stats-inner .stat-cell,
.page-home .about-capabilities .capability-card,
.page-home .stat-showcase .stat-tile,
.page-about .about-metrics article{
  background-clip:padding-box!important;
}

@media(max-width:1100px){
  .page-home .stats-inner .stat-cell:nth-child(4),
  .page-home .stats-inner .stat-cell:nth-child(5){grid-column:span 1!important;}
  .page-home .about-capabilities{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .page-home .stats-inner .stat-cell:nth-child(5){grid-column:1 / -1!important;}
  .page-home .about-layout{
    gap:34px!important;
  }
  .page-home .about-capabilities{
    grid-template-columns:1fr!important;
    border-radius:20px!important;
  }
  .page-home .about-capabilities .capability-card{
    min-height:auto!important;
    padding:22px 20px!important;
  }
  .page-home .about-capabilities .capability-index{margin-bottom:14px!important;}
}
@media(max-width:380px){
  .page-home .stats-inner .stat-cell:nth-child(5){grid-column:auto!important;}
}

/* ============================================================
   v51 color experiment — lighter industrial blue trial
   Goal: keep the v47/v50 fashionable structure, but reduce the
   heavy dark-navy feeling. Primary blue: #174E75.
   Safe rollback: appended overrides only.
   ============================================================ */
:root{
  --navy:#174E75!important;
  --navy-2:#103B5A!important;
  --ink:#102033!important;
  --text:#102033!important;
  --blue:#1769A6!important;
  --electric-teal:#00BFA6!important;
  --teal:#00BFA6!important;
  --brass:#00BFA6!important;
  --accent:#00BFA6!important;
  --line:#D8E5EE!important;
}

/* Main dark visual areas: lighter and cleaner than v49/v50. */
.page-home .hero{
  background:linear-gradient(135deg,#174E75 0%,#1A5D88 58%,#103B5A 100%)!important;
}
.page-home .hero::after{
  background:radial-gradient(circle at center,rgba(0,191,166,.20),rgba(38,123,164,.13) 42%,transparent 70%)!important;
}
.page-home .hero-grid-bg{
  background-image:
    linear-gradient(rgba(255,255,255,.072) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.072) 1px,transparent 1px)!important;
  opacity:.78!important;
}
.page-home .hero-label{
  color:#B9FFF6!important;
  background:rgba(0,191,166,.12)!important;
  border-color:rgba(185,255,246,.36)!important;
}
.page-home .hero h1,
.page-home .hero h1 em{
  text-shadow:0 16px 42px rgba(4,28,45,.20)!important;
}
.page-home .hero h1 em,
.page-home .hero h1 em .hero-word{
  background:linear-gradient(90deg,#ffffff 0%,#d9fffa 38%,#59ead9 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}
.page-home .hero-lead{color:rgba(255,255,255,.82)!important;}
.page-home .hero-tag{
  color:rgba(255,255,255,.82)!important;
  border-color:rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.075)!important;
}
.page-home .hero-img-wrap{
  box-shadow:0 30px 76px rgba(5,33,52,.25)!important;
}

/* Metric and capability grids: use the current blue industrial base. */
.about-metrics,
.page-home .about-capabilities{
  background:rgba(0,191,166,.34)!important;
  border-color:rgba(0,191,166,.38)!important;
  box-shadow:0 20px 54px rgba(16,59,90,.15)!important;
}
.about-metrics article,
.page-home .about-capabilities .capability-card,
.page-home .about-metrics .metric-card{
  background:#174E75!important;
  color:#fff!important;
}
.about-metrics article:hover,
.page-home .about-capabilities .capability-card:hover,
.page-home .about-metrics .metric-card:hover{
  background:linear-gradient(135deg,#1D638E 0%,#174E75 72%,#00BFA6 150%)!important;
}
.about-metrics article strong,
.page-home .metric-num,
.about-metrics article small,
.page-home .metric-label,
.page-home .about-capabilities p{
  color:rgba(255,255,255,.76)!important;
}
.page-home .about-capabilities .capability-index{
  background:rgba(185,255,246,.15)!important;
  color:#B9FFF6!important;
  border-color:rgba(185,255,246,.35)!important;
}

/* Articles / knowledge cards: still modern, less heavy. */
.insight-card{
  background:#174E75!important;
  box-shadow:0 18px 44px rgba(16,59,90,.14)!important;
}
.insight-card:hover{
  background:linear-gradient(135deg,#1D638E 0%,#174E75 78%,#00BFA6 140%)!important;
}
.insight-card::before{
  background:linear-gradient(180deg,#B9FFF6,#00BFA6)!important;
}
.insight-action,
.read-article-link,
.insight-card .read-article{
  background:#00BFA6!important;
  color:#062F35!important;
  box-shadow:0 12px 24px rgba(0,191,166,.22)!important;
}
.insight-action:hover,
.read-article-link:hover,
.insight-card .read-article:hover{
  background:#59EAD9!important;
  color:#062F35!important;
}
.insight-thumb{
  background:#103B5A!important;
}

/* Buttons and accents: softer teal/blue gradient. */
.nav-cta,
.btn-primary{
  background:linear-gradient(135deg,#174E75 0%,#1769A6 66%,#00BFA6 125%)!important;
  box-shadow:0 12px 28px rgba(23,78,117,.18)!important;
}
.nav-cta:hover,
.btn-primary:hover{
  background:linear-gradient(135deg,#1D638E 0%,#1988BD 56%,#00BFA6 100%)!important;
  box-shadow:0 16px 34px rgba(0,191,166,.22)!important;
}
.metric-accent{background:#00BFA6!important;}
.stat-icon-wrap svg,
.product-icon svg,
.res-icon svg{
  stroke:#00BFA6!important;
}
.metric-icon{
  color:#00BFA6!important;
  border-color:rgba(0,191,166,.32)!important;
  background:rgba(0,191,166,.13)!important;
}

/* About / quality icon contrast stays visible on the lighter blue. */
.page-about .about-metrics .metric-icon,
.about-card .about-metrics .metric-icon{
  background:linear-gradient(135deg,#DFFFFA 0%,#59EAD9 60%,#00BFA6 100%)!important;
  color:#062F35!important;
  box-shadow:0 14px 28px rgba(0,191,166,.20), inset 0 1px 0 rgba(255,255,255,.42)!important;
}
.quality-features span,
.quality-feat-icon,
.intro-icon,
.res-icon,
.resource-grid span{
  background:linear-gradient(135deg,#F0FFFC 0%,#B9FFF6 58%,#59EAD9 100%)!important;
  border-color:rgba(0,191,166,.32)!important;
  color:#062F35!important;
}

/* Footer: layered but not too dark. */
.site-footer{
  background:#174E75!important;
}
.footer-grid{
  background:#174E75!important;
}
.footer-bottom{
  background:#103B5A!important;
  border-top:1px solid rgba(0,191,166,.32)!important;
}
.site-footer::before{
  background:rgba(0,191,166,.32)!important;
}
.site-footer a:hover{color:#B9FFF6!important;}

/* Article detail / loading accents. */
.article-body h2{color:#102033!important;}
.article-body h3,
.article-body a{color:#1769A6!important;}
.article-body a:hover{color:#008F80!important;}
.article-back-link{
  border-color:rgba(0,191,166,.30)!important;
  color:#006E63!important;
}
.article-back-link:hover{background:rgba(0,191,166,.10)!important;}
.loading-ring{border-top-color:#00BFA6!important;}
.loading-card strong{
  background:linear-gradient(90deg,#1769A6,#00BFA6,#1769A6)!important;
  background-size:220% 100%!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}

@media(max-width:760px){
  .page-home .hero{
    background:linear-gradient(150deg,#174E75 0%,#1A5D88 62%,#103B5A 100%)!important;
  }
  .insight-card{background:#174E75!important;}
}

/* ============================================================
   v52 emerald accent cleanup — less teal, no large green panels
   Goal: keep the lighter industrial-blue trial, but replace the
   teal signal color with a more TJNE-like emerald green and avoid
   large green fill areas in stats/capability grids.
   ============================================================ */
:root{
  --electric-teal:#38B24A!important;
  --teal:#38B24A!important;
  --brass:#38B24A!important;
  --accent:#38B24A!important;
  --tj-emerald:#38B24A!important;
  --tj-emerald-dark:#188A3A!important;
  --tj-emerald-soft:#EAF8EE!important;
  --tj-emerald-light:#BFECC9!important;
}

/* Keep green as a signal color only. Large grid gaps / empty cells use blue. */
.stats-inner,
.stat-showcase,
.about-metrics,
.page-home .stats-inner,
.page-home .about-capabilities{
  background:#103B5A!important;
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:0 20px 54px rgba(16,59,90,.18)!important;
}
.page-home .stats-inner::before,
.page-home .stats-inner::after,
.stats-inner::before,
.stats-inner::after{
  background:#103B5A!important;
}
.about-metrics article,
.page-home .about-capabilities .capability-card,
.page-home .about-metrics .metric-card{
  background:#174E75!important;
  border-color:rgba(255,255,255,.18)!important;
}
.about-metrics article:hover,
.page-home .about-capabilities .capability-card:hover,
.page-home .about-metrics .metric-card:hover{
  background:linear-gradient(135deg,#1D638E 0%,#174E75 78%,#103B5A 118%)!important;
}

/* Emerald accents: visible, company-like, but not large-area fill. */
.page-home .hero::after{
  background:radial-gradient(circle at center,rgba(56,178,74,.16),rgba(38,123,164,.14) 44%,transparent 72%)!important;
}
.page-home .hero-label{
  color:#DFF7E4!important;
  background:rgba(56,178,74,.10)!important;
  border-color:rgba(191,236,201,.36)!important;
}
.page-home .hero h1 em,
.page-home .hero h1 em .hero-word{
  background:linear-gradient(90deg,#ffffff 0%,#E9F8ED 44%,#86D996 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}
.page-home .hero-badge-dot{
  background:#38B24A!important;
  box-shadow:0 0 0 6px rgba(56,178,74,.16)!important;
}
.page-home .hero-kicker::before,
.page-home .section-kicker::before,
.metric-accent{
  background:#38B24A!important;
}

.nav-cta,
.btn-primary{
  background:linear-gradient(135deg,#174E75 0%,#1769A6 72%,#38B24A 135%)!important;
  box-shadow:0 12px 28px rgba(23,78,117,.18)!important;
}
.nav-cta:hover,
.btn-primary:hover{
  background:linear-gradient(135deg,#1D638E 0%,#1769A6 62%,#38B24A 112%)!important;
  box-shadow:0 16px 34px rgba(56,178,74,.20)!important;
}

.stat-icon-wrap svg,
.product-icon svg,
.res-icon svg,
.metric-icon,
.quality-features svg,
.quality-feat-icon svg,
.intro-icon svg{
  stroke:#38B24A!important;
}
.metric-icon{
  color:#188A3A!important;
  border-color:rgba(56,178,74,.30)!important;
  background:rgba(56,178,74,.10)!important;
}
.page-about .about-metrics .metric-icon,
.about-card .about-metrics .metric-icon,
.quality-features span,
.quality-feat-icon,
.intro-icon,
.res-icon,
.resource-grid span{
  background:linear-gradient(135deg,#F6FFF8 0%,#DDF6E3 58%,#BFECC9 100%)!important;
  border-color:rgba(56,178,74,.28)!important;
  color:#165D31!important;
}

/* Knowledge / article accents: emerald line and buttons, not mint panels. */
.insight-card::before{
  background:linear-gradient(180deg,#BFECC9,#38B24A)!important;
  box-shadow:0 0 22px rgba(56,178,74,.38)!important;
}
.insight-card:hover{
  background:linear-gradient(135deg,#1D638E 0%,#174E75 80%,#103B5A 125%)!important;
}
.insight-action,
.read-article-link,
.insight-card .read-article{
  background:#38B24A!important;
  color:#062414!important;
  box-shadow:0 12px 24px rgba(56,178,74,.20)!important;
}
.insight-action:hover,
.read-article-link:hover,
.insight-card .read-article:hover{
  background:#57C866!important;
  color:#062414!important;
}
.article-body a:hover,
.article-back-link{
  color:#188A3A!important;
}
.article-back-link{
  border-color:rgba(56,178,74,.30)!important;
}
.article-back-link:hover{
  background:rgba(56,178,74,.09)!important;
}
.preview-faq summary::marker,
.faq-list summary::marker{
  color:#38B24A!important;
}
.loading-ring{border-top-color:#38B24A!important;}
.loading-card strong{
  background:linear-gradient(90deg,#1769A6,#38B24A,#1769A6)!important;
  background-size:220% 100%!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}

.site-footer::before,
.footer-bottom{
  border-top-color:rgba(56,178,74,.28)!important;
}
.site-footer::before{
  background:rgba(56,178,74,.28)!important;
}
.site-footer a:hover{color:#BFECC9!important;}

/* Mobile: keep the empty stats cell blue as well. */
@media(max-width:760px){
  .stats-inner,
  .page-home .stats-inner,
  .page-home .about-capabilities{
    background:#103B5A!important;
  }
  .page-home .stats-inner .stat-cell,
  .page-home .about-capabilities .capability-card{
    background:#174E75!important;
  }
}

/* ============================================================
   v53 color refinement — restore light stats cards and
   use a more TJNE-like emerald green for small accents only.
   ============================================================ */
:root{
  --tj-emerald:#44B649!important;
  --tj-emerald-dark:#2D9738!important;
  --tj-emerald-soft:#EAF7EC!important;
  --tj-emerald-light:#CFEED4!important;
  --electric-teal:#44B649!important;
  --teal:#44B649!important;
  --accent:#44B649!important;
  --brass:#44B649!important;
}

/* Keep capability and article number badges in a cleaner emerald tone. */
.page-home .about-capabilities .capability-index,
.family-no.accent-green,
.feature-badge,
.anchor-chip,
.badge.public,
.product-accent,
.insight-action,
.read-article-link,
.insight-card .read-article{
  background:var(--tj-emerald-soft)!important;
  color:var(--tj-emerald-dark)!important;
  border-color:rgba(68,182,73,.26)!important;
}
.product-accent,
.feature-badge,
.anchor-chip{
  box-shadow:none!important;
}
.page-home .about-capabilities .capability-index{
  background:rgba(68,182,73,.12)!important;
  color:var(--tj-emerald-dark)!important;
  border:1px solid rgba(68,182,73,.24)!important;
}
.hero-badge-dot,
.page-home .hero-badge-dot,
.metric-accent,
.insight-card::before,
.loading-ring{
  background:var(--tj-emerald)!important;
  border-top-color:var(--tj-emerald)!important;
}
.insight-card::before{
  box-shadow:0 0 18px rgba(68,182,73,.30)!important;
}
.loading-card strong{
  background:linear-gradient(90deg,#1769A6,var(--tj-emerald),#1769A6)!important;
  background-size:220% 100%!important;
}

/* Soft green icon panels / helper chips should look more logo-like, not cyan. */
.metric-icon,
.page-about .about-metrics .metric-icon,
.about-card .about-metrics .metric-icon,
.quality-features span,
.quality-feat-icon,
.intro-icon,
.res-icon,
.resource-grid span,
.app-content .battery,
.badge.public{
  background:linear-gradient(135deg,#F8FFF9 0%,#EAF7EC 60%,#D7F0DB 100%)!important;
  border-color:rgba(68,182,73,.24)!important;
  color:var(--tj-emerald-dark)!important;
}
.metric-icon svg,
.quality-feat-icon svg,
.intro-icon svg,
.res-icon svg,
.resource-grid span svg,
.app-content .battery svg{
  stroke:var(--tj-emerald)!important;
}

/* Emerald hover / links. */
.article-body a:hover,
.article-back-link,
.preview-faq summary::marker,
.faq-list summary::marker,
.site-footer a:hover{
  color:var(--tj-emerald)!important;
}
.article-back-link:hover{
  background:rgba(68,182,73,.08)!important;
}

/* Buttons: keep blue base, greener accent tail. */
.nav-cta,
.btn-primary{
  background:linear-gradient(135deg,#174E75 0%,#1769A6 76%,#44B649 132%)!important;
}
.nav-cta:hover,
.btn-primary:hover{
  background:linear-gradient(135deg,#1D638E 0%,#1769A6 66%,#44B649 110%)!important;
}

@media (max-width:760px){
  .stats-inner,
  .stats-inner .stat-cell,
  }


/* ============================================================
   v54 usability + visual refinement
   - add Insights as first-class nav item
   - no-image article cards collapse to a clean single-column layout
   - stronger hero typography and smoother hero-to-stats transition
   - more refined capability ghost numbers, partner/logo hovers,
     unified product accents and clearer footer readability
   ============================================================ */
.main-nav a[href$="insights.html"]{
  white-space:nowrap!important;
}
@media(max-width:1180px){
  .main-nav{gap:16px!important;}
  .nav-cta{padding:10px 14px!important;}
}

/* Hero: stronger, more editorial title. */
.page-home .hero{
  position:relative!important;
  overflow:visible!important;
}
.page-home .hero::before{
  content:''!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:-42px!important;
  height:46px!important;
  background:linear-gradient(180deg,rgba(23,78,117,.98) 0%,rgba(23,78,117,.56) 36%,#F4F8FB 100%)!important;
  pointer-events:none!important;
  z-index:0!important;
}
.page-home .hero .container,
.page-home .hero-grid-bg,
.page-home .hero-glow{
  position:relative!important;
  z-index:1!important;
}
.page-home .hero h1,
.page-home .hero h1 em{
  font-size:clamp(2.55rem,5.6vw,4.5rem)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
  font-weight:800!important;
}

/* Capability cards: convert small labels into subtle ghost numbers. */
.page-home .about-capabilities .capability-card{
  position:relative!important;
  overflow:hidden!important;
  padding-top:34px!important;
}
.page-home .about-capabilities .capability-index{
  position:absolute!important;
  right:22px!important;
  top:12px!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:rgba(255,255,255,.14)!important;
  font-family:'Manrope',system-ui,sans-serif!important;
  font-size:2.45rem!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:-.06em!important;
  pointer-events:none!important;
}
.page-home .about-capabilities .capability-card h3,
.page-home .about-capabilities .capability-card p{
  position:relative!important;
  z-index:1!important;
}

/* Article cards without images should not reserve a phantom image column. */
.insight-card.no-thumb,
.preview-card.no-thumb,
.admin-card-preview.no-thumb{
  grid-template-columns:1fr!important;
}
.insight-card.no-thumb .insight-card-body,
.preview-card.no-thumb .preview-card-body,
.admin-card-preview.no-thumb .preview-card-body{
  padding-left:0!important;
}
.insight-card.no-thumb::after{
  content:'TJNE'!important;
  position:absolute!important;
  right:24px!important;
  bottom:18px!important;
  font-family:'Manrope',system-ui,sans-serif!important;
  font-size:2.2rem!important;
  font-weight:800!important;
  letter-spacing:-.06em!important;
  color:rgba(255,255,255,.07)!important;
  pointer-events:none!important;
}

/* Homepage content preview sections: tighter rhythm when articles + updates appear together. */
.content-preview-articles-section + .content-preview-updates-section{
  padding-top:16px!important;
}
.content-preview-articles-section{
  background:#fff!important;
}
.content-preview-updates-section{
  background:#F4F8FB!important;
}

/* Partner logos: smoother hover instead of a visual switch. */
.partner-logo-card{
  transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease,background .26s ease!important;
}
.partner-logo-card img{
  transition:filter .32s ease,transform .32s ease,opacity .32s ease!important;
}
.partner-logo-card:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 12px 28px rgba(11,31,58,.10)!important;
}
.partner-logo-card:hover img{
  transform:scale(1.04)!important;
}

/* Product accents: unify under the current blue/emerald system. */
.product-accent,
.product-card.b .product-accent,
.product-card.g .product-accent,
.product-card.o .product-accent,
.product-card.p .product-accent{
  background:linear-gradient(90deg,#0B5CAB 0%,#1769A6 62%,#44B649 100%)!important;
}
.family-no,
.feature-badge,
.anchor-chip{
  border:1px solid rgba(68,182,73,.22)!important;
}

/* Footer: readable business footer, less code-console feeling. */
.footer-bottom,
.footer-bottom .container,
.footer-bottom a{
  font-family:'Inter',system-ui,sans-serif!important;
  font-size:.76rem!important;
  letter-spacing:.015em!important;
}
.footer-bottom .container{
  color:rgba(255,255,255,.48)!important;
}
.footer-bottom a{
  color:rgba(255,255,255,.50)!important;
}

@media(max-width:760px){
  .page-home .hero::before{bottom:-34px;height:38px!important;}
  .page-home .hero h1,
  .page-home .hero h1 em{
    font-size:clamp(2.25rem,12vw,3.35rem)!important;
    line-height:1.02!important;
  }
  .page-home .about-capabilities .capability-card{padding-top:30px!important;}
  .page-home .about-capabilities .capability-index{font-size:2.1rem!important;right:18px!important;top:10px!important;}
}

/* ============================================================
   v55 article CTA color cleanup — use the same blue direction
   as View Certificates / application CTAs instead of green.
   ============================================================ */
.insight-action,
.read-article-link,
.insight-card .read-article,
.content-preview-updates-section .insight-card .read-article,
.content-preview-articles-section .insight-card .read-article,
.insight-list .read-article-link,
.insight-list .insight-action{
  background:linear-gradient(135deg,#0B5CAB 0%,#1769A6 100%)!important;
  color:#FFFFFF!important;
  border:1px solid rgba(11,92,171,.10)!important;
  box-shadow:0 10px 24px rgba(11,92,171,.22)!important;
}
.insight-action:hover,
.read-article-link:hover,
.insight-card .read-article:hover,
.content-preview-updates-section .insight-card .read-article:hover,
.content-preview-articles-section .insight-card .read-article:hover,
.insight-list .read-article-link:hover,
.insight-list .insight-action:hover{
  background:linear-gradient(135deg,#1769A6 0%,#1F7BC7 100%)!important;
  color:#FFFFFF!important;
  box-shadow:0 14px 28px rgba(11,92,171,.28)!important;
  transform:translateY(-1px)!important;
}

/* ============================================================
   v56 green overuse cleanup — remove green buttons / glow panels
   and return CTAs + icons to the TJNE blue system.
   Green is kept only as a very small, muted accent where needed.
   ============================================================ */
:root{
  --tj-accent-blue:#0B5CAB!important;
  --tj-accent-blue-2:#1769A6!important;
  --tj-soft-blue:#F2F7FC!important;
  --tj-soft-blue-2:#E7F1FA!important;
  --tj-border-blue:#D6E6F3!important;
  --tj-muted-emerald:#2F9B49!important;
}

/* 1) Article buttons: white cards use blue buttons; dark cards use light buttons. */
.content-preview-articles-section .insight-card .insight-card-body strong,
.content-preview-updates-section .insight-card .insight-card-body strong,
.content-preview-articles-section .insight-card-body strong,
.content-preview-updates-section .insight-card-body strong,
.preview-card .insight-card-body strong{
  background:linear-gradient(135deg,var(--tj-accent-blue) 0%,var(--tj-accent-blue-2) 100%)!important;
  color:#FFFFFF!important;
  border:1px solid rgba(11,92,171,.10)!important;
  box-shadow:0 10px 24px rgba(11,92,171,.22)!important;
}
.content-preview-articles-section .insight-card:hover .insight-card-body strong,
.content-preview-updates-section .insight-card:hover .insight-card-body strong,
.preview-card:hover .insight-card-body strong{
  background:linear-gradient(135deg,#1769A6 0%,#1F7BC7 100%)!important;
  color:#FFFFFF!important;
}

/* Dark Knowledge & Updates cards: no green CTA on blue background. */
#dynamicArticles .insight-card .insight-card-body strong,
#dynamicUpdates .insight-card .insight-card-body strong,
.insight-list .insight-card .insight-card-body strong{
  background:#F7FBFF!important;
  color:var(--tj-accent-blue)!important;
  border:1px solid rgba(255,255,255,.36)!important;
  box-shadow:0 10px 24px rgba(6,19,31,.18)!important;
}
#dynamicArticles .insight-card:hover .insight-card-body strong,
#dynamicUpdates .insight-card:hover .insight-card-body strong,
.insight-list .insight-card:hover .insight-card-body strong{
  background:#FFFFFF!important;
  color:#084D94!important;
  box-shadow:0 14px 30px rgba(6,19,31,.24)!important;
}

/* Article section meta and left rails: blue/blue-gray, not green glow. */
.insight-card::before,
#dynamicArticles .insight-card::before,
#dynamicUpdates .insight-card::before,
.insight-list .insight-card::before{
  background:linear-gradient(180deg,#8FBDE0,#0B5CAB)!important;
  box-shadow:none!important;
}
.content-preview-articles-section .insight-card::before,
.content-preview-updates-section .insight-card::before{
  background:linear-gradient(180deg,#B8D7EF,#0B5CAB)!important;
  box-shadow:none!important;
}
.insight-card-body .content-meta,
.content-meta{
  color:#7E97AC!important;
}
#dynamicArticles .insight-card-body .content-meta,
#dynamicUpdates .insight-card-body .content-meta,
.insight-list .insight-card-body .content-meta{
  color:#BFD7EA!important;
}
.content-preview-articles-section .insight-card-body .content-meta,
.content-preview-updates-section .insight-card-body .content-meta{
  color:#0B5CAB!important;
}

/* 2) About / resource icons: remove green-glow panels. Use clean blue icon tiles. */
.stat-icon-wrap,
.metric-icon,
.page-about .about-metrics .metric-icon,
.about-card .about-metrics .metric-icon,
.quality-features span,
.quality-feat-icon,
.intro-icon,
.res-icon,
.resource-grid span,
.app-icon,
.app-icon-wrap,
.product-icon,
.info-icon,
.cert-icon{
  background:linear-gradient(135deg,#FFFFFF 0%,#F5F9FD 62%,#EAF3FB 100%)!important;
  border:1px solid var(--tj-border-blue)!important;
  color:var(--tj-accent-blue)!important;
  box-shadow:0 8px 18px rgba(11,92,171,.08)!important;
}
.stat-icon-wrap svg,
.metric-icon svg,
.page-about .about-metrics .metric-icon svg,
.about-card .about-metrics .metric-icon svg,
.quality-features span svg,
.quality-feat-icon svg,
.intro-icon svg,
.res-icon svg,
.resource-grid span svg,
.app-icon svg,
.app-icon-wrap svg,
.product-icon svg,
.info-icon svg,
.cert-icon svg{
  stroke:var(--tj-accent-blue)!important;
}
.quality-features article:hover span,
.quality-feat:hover .quality-feat-icon,
.res-card:hover .res-icon,
.resource-grid article:hover span,
.page-about .about-metrics article:hover .metric-icon,
.about-card .about-metrics article:hover .metric-icon{
  background:linear-gradient(135deg,#FFFFFF 0%,#EAF3FB 100%)!important;
  border-color:#BFD7EA!important;
  box-shadow:0 12px 24px rgba(11,92,171,.12)!important;
}

/* 3) Product / detail chips and small badges: blue-gray, not green pills. */
.family-no,
.feature-badge,
.anchor-chip,
.product-accent,
.badge.public,
.badge.iso,
.badge.request,
.mini-chip-row a,
.badge-row span,
.chip-grid span{
  background:var(--tj-soft-blue)!important;
  color:var(--tj-accent-blue)!important;
  border-color:var(--tj-border-blue)!important;
  box-shadow:none!important;
}
.product-accent,
.product-card.b .product-accent,
.product-card.g .product-accent,
.product-card.o .product-accent,
.product-card.p .product-accent,
.metric-accent{
  background:linear-gradient(90deg,#0B5CAB 0%,#1769A6 100%)!important;
}
.anchor-chip:hover,
.family-no:hover,
.feature-badge:hover,
.mini-chip-row a:hover,
.badge-row span:hover,
.chip-grid span:hover{
  background:#E7F1FA!important;
  color:#084D94!important;
  border-color:#BFD7EA!important;
}

/* 4) Keep full-size CTAs blue/white. No pure green CTA buttons. */
.btn-primary,
.nav-cta,
.app-cta,
.read-article-link,
.insight-action{
  background:linear-gradient(135deg,#0B5CAB 0%,#1769A6 100%)!important;
  color:#FFFFFF!important;
  border-color:rgba(11,92,171,.18)!important;
  box-shadow:0 10px 24px rgba(11,92,171,.22)!important;
}
.btn-primary:hover,
.nav-cta:hover,
.app-cta:hover,
.read-article-link:hover,
.insight-action:hover{
  background:linear-gradient(135deg,#1769A6 0%,#1F7BC7 100%)!important;
  color:#FFFFFF!important;
}
.btn-secondary,
.btn-outline{
  background:#FFFFFF!important;
  color:#0B5CAB!important;
  border-color:#C9DDEB!important;
}
.btn-secondary:hover,
.btn-outline:hover{
  background:#F2F7FC!important;
  color:#084D94!important;
  border-color:#AFCDE4!important;
}

/* 5) Loading / links / FAQ markers: use blue or very muted emerald only. */
.loading-ring{border-top-color:var(--tj-accent-blue)!important;}
.loading-card strong{
  background:linear-gradient(90deg,#0B5CAB,#1769A6,#0B5CAB)!important;
  background-size:220% 100%!important;
}
.article-body a:hover,
.article-back-link,
.preview-faq summary::marker,
.faq-list summary::marker{
  color:#0B5CAB!important;
}
.site-footer a:hover{color:#BFD7EA!important;}
.site-footer::before,
.footer-bottom{border-top-color:rgba(191,215,234,.30)!important;}
.site-footer::before{background:rgba(191,215,234,.30)!important;}

/* 6) Small remaining emerald accents only: subdued, not glowing. */
.page-home .hero-badge-dot,
.hero-badge-dot{
  background:var(--tj-muted-emerald)!important;
  box-shadow:0 0 0 5px rgba(47,155,73,.10)!important;
}
.page-home .hero-label{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.18)!important;
  color:#D9E9F5!important;
}

@media(max-width:760px){
  .content-preview-articles-section .insight-card .insight-card-body strong,
  .content-preview-updates-section .insight-card .insight-card-body strong,
  #dynamicArticles .insight-card .insight-card-body strong,
  #dynamicUpdates .insight-card .insight-card-body strong{
    min-height:auto!important;
    padding:10px 15px!important;
  }
}


/* ============================================================
   v57 final cleanup — remove Insights from top nav, eliminate
   remaining green CTAs from KV-loaded previews, and replace
   About icons with a cleaner blue industrial line style.
   ============================================================ */
:root{
  --tj-blue:#0B5CAB!important;
  --tj-blue-2:#1769A6!important;
  --tj-blue-3:#1F7BC7!important;
  --tj-soft-blue:#F2F7FC!important;
  --tj-soft-blue-2:#E7F1FA!important;
  --tj-line-blue:#C9DDEB!important;
}

/* Hide any leftover Insights nav item injected by old cached markup. */
.main-nav > a[href$="insights.html"]{
  display:none!important;
}

/* Home/About/Resources content preview cards rendered from KV use .preview-card, not .insight-card. */
.preview-card .preview-card-body strong,
[data-content-preview] .preview-card .preview-card-body strong,
.content-preview-articles-section .preview-card .preview-card-body strong,
.content-preview-updates-section .preview-card .preview-card-body strong,
.page-home .preview-card .preview-card-body strong,
.page-about .preview-card .preview-card-body strong,
.page-resources .preview-card .preview-card-body strong,
.resource-grid .preview-card .preview-card-body strong,
.preview-card strong{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  min-height:38px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--tj-blue) 0%,var(--tj-blue-2) 100%)!important;
  color:#fff!important;
  border:1px solid rgba(11,92,171,.14)!important;
  box-shadow:0 10px 24px rgba(11,92,171,.22)!important;
  font-weight:800!important;
  font-size:.84rem!important;
  line-height:1!important;
}
.preview-card:hover .preview-card-body strong,
[data-content-preview] .preview-card:hover .preview-card-body strong,
.content-preview-articles-section .preview-card:hover .preview-card-body strong,
.content-preview-updates-section .preview-card:hover .preview-card-body strong,
.page-home .preview-card:hover .preview-card-body strong,
.page-about .preview-card:hover .preview-card-body strong,
.page-resources .preview-card:hover .preview-card-body strong,
.preview-card:hover strong{
  background:linear-gradient(135deg,var(--tj-blue-2) 0%,var(--tj-blue-3) 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 28px rgba(11,92,171,.28)!important;
  transform:translateY(-1px)!important;
}

/* Meta labels in preview cards: blue-gray instead of mint green. */
.preview-card .content-meta,
.preview-card-body .content-meta,
[data-content-preview] .content-meta,
.content-preview-articles-section .content-meta,
.content-preview-updates-section .content-meta{
  color:#6F8FA9!important;
  letter-spacing:.065em!important;
}

/* Knowledge & Updates page: dark blue cards should use light blue/white buttons, never green. */
#dynamicArticles .insight-card .insight-card-body strong,
#dynamicUpdates .insight-card .insight-card-body strong,
.insight-list .insight-card .insight-card-body strong,
.insight-card .insight-card-body strong{
  background:#F7FBFF!important;
  color:var(--tj-blue)!important;
  border:1px solid rgba(255,255,255,.40)!important;
  box-shadow:0 10px 24px rgba(6,19,31,.18)!important;
}
#dynamicArticles .insight-card:hover .insight-card-body strong,
#dynamicUpdates .insight-card:hover .insight-card-body strong,
.insight-list .insight-card:hover .insight-card-body strong,
.insight-card:hover .insight-card-body strong{
  background:#fff!important;
  color:#084D94!important;
  box-shadow:0 14px 30px rgba(6,19,31,.24)!important;
}
#dynamicArticles .insight-card-body .content-meta,
#dynamicUpdates .insight-card-body .content-meta,
.insight-list .insight-card-body .content-meta,
.insight-card-body .content-meta{
  color:#BFD7EA!important;
}

/* Keep large CTAs blue or white/blue, not green. */
.btn-primary,
.nav-cta,
.app-cta,
.read-article-link,
.insight-action,
.article-back-link:hover{
  background:linear-gradient(135deg,var(--tj-blue) 0%,var(--tj-blue-2) 100%)!important;
  color:#FFFFFF!important;
  border-color:rgba(11,92,171,.18)!important;
  box-shadow:0 10px 24px rgba(11,92,171,.22)!important;
}
.btn-primary:hover,
.nav-cta:hover,
.app-cta:hover,
.read-article-link:hover,
.insight-action:hover{
  background:linear-gradient(135deg,var(--tj-blue-2) 0%,var(--tj-blue-3) 100%)!important;
  color:#FFFFFF!important;
}
.btn-secondary,
.btn-outline{
  background:#FFFFFF!important;
  color:var(--tj-blue)!important;
  border-color:var(--tj-line-blue)!important;
}
.btn-secondary:hover,
.btn-outline:hover{
  background:var(--tj-soft-blue)!important;
  color:#084D94!important;
  border-color:#AFCDE4!important;
}

/* About / resources / quality icons: clean blue line icon tiles, no green glow. */
.stat-icon-wrap,
.metric-icon,
.about-metrics .metric-icon,
.page-about .about-metrics .metric-icon,
.about-card .about-metrics .metric-icon,
.quality-features span,
.quality-features .quality-svg-icon,
.quality-feat-icon,
.intro-icon,
.res-icon,
.resource-grid span,
.app-icon,
.app-icon-wrap,
.product-icon,
.info-icon,
.cert-icon{
  width:52px!important;
  height:52px!important;
  display:inline-grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#FFFFFF 0%,#F5F9FD 64%,#EAF3FB 100%)!important;
  border:1px solid var(--tj-line-blue)!important;
  color:var(--tj-blue)!important;
  box-shadow:0 8px 18px rgba(11,92,171,.08)!important;
}
.quality-features .quality-svg-icon svg,
.quality-features span svg,
.stat-icon-wrap svg,
.metric-icon svg,
.about-metrics .metric-icon svg,
.page-about .about-metrics .metric-icon svg,
.quality-feat-icon svg,
.intro-icon svg,
.res-icon svg,
.resource-grid span svg,
.app-icon svg,
.app-icon-wrap svg,
.product-icon svg,
.info-icon svg,
.cert-icon svg{
  width:24px!important;
  height:24px!important;
  stroke:var(--tj-blue)!important;
  stroke-width:1.75!important;
  fill:none!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.quality-features article:hover span,
.quality-features article:hover .quality-svg-icon,
.quality-feat:hover .quality-feat-icon,
.res-card:hover .res-icon,
.resource-grid article:hover span,
.page-about .about-metrics article:hover .metric-icon,
.about-card .about-metrics article:hover .metric-icon{
  background:linear-gradient(135deg,#FFFFFF 0%,#EAF3FB 100%)!important;
  border-color:#BFD7EA!important;
  box-shadow:0 12px 24px rgba(11,92,171,.12)!important;
}

/* Replace green rails/markers with the blue system. */
.insight-card::before,
#dynamicArticles .insight-card::before,
#dynamicUpdates .insight-card::before,
.insight-list .insight-card::before,
.content-preview-articles-section .preview-card::before,
.content-preview-updates-section .preview-card::before{
  background:linear-gradient(180deg,#B8D7EF,#0B5CAB)!important;
  box-shadow:none!important;
}
.loading-ring{border-top-color:var(--tj-blue)!important;}
.loading-card strong{
  background:linear-gradient(90deg,#0B5CAB,#1769A6,#0B5CAB)!important;
  background-size:220% 100%!important;
}
.article-body a:hover,
.article-back-link,
.preview-faq summary::marker,
.faq-list summary::marker,
.site-footer a:hover{
  color:var(--tj-blue)!important;
}

/* Product/detail chips: blue-gray, not green. */
.family-no,
.feature-badge,
.anchor-chip,
.badge.public,
.badge.iso,
.badge.request,
.mini-chip-row a,
.badge-row span,
.chip-grid span{
  background:var(--tj-soft-blue)!important;
  color:var(--tj-blue)!important;
  border-color:var(--tj-line-blue)!important;
  box-shadow:none!important;
}
.anchor-chip:hover,
.family-no:hover,
.feature-badge:hover,
.mini-chip-row a:hover,
.badge-row span:hover,
.chip-grid span:hover{
  background:var(--tj-soft-blue-2)!important;
  color:#084D94!important;
  border-color:#BFD7EA!important;
}

@media(max-width:760px){
  .stat-icon-wrap,
  .metric-icon,
  .about-metrics .metric-icon,
  .quality-features span,
  .quality-features .quality-svg-icon,
  .res-icon,
  .resource-grid span{
    width:48px!important;
    height:48px!important;
  }
}

/* ============================================================
   v63 hero line-break fix — preserve intended three-line title
   after the word-reveal script wraps words in .hero-word spans.
   ============================================================ */
.page-home .hero,
.page-home .hero-copy,
.page-home .hero h1{
  overflow:visible!important;
}
.page-home .hero h1{
  font-size:clamp(2.42rem,4.7vw,4.08rem)!important;
  line-height:1.08!important;
  letter-spacing:-0.042em!important;
  max-width:850px!important;
  margin-bottom:28px!important;
  padding-bottom:.12em!important;
}
.page-home .hero h1 > span,
.page-home .hero h1 > em{
  display:block!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.page-home .hero h1 .hero-word{
  display:inline-block!important;
  white-space:normal!important;
}
.page-home .hero h1 > em{
  font-style:normal!important;
  color:transparent!important;
  background:linear-gradient(90deg,#D7EAFF 0%,#8FC7FF 46%,#4B93D2 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
}
.page-home .hero h1 > em .hero-word{
  color:transparent!important;
  background:linear-gradient(90deg,#D7EAFF 0%,#8FC7FF 46%,#4B93D2 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
}
.page-home .hero-label::before{
  background:linear-gradient(90deg,#58C37D 0%,#8BE0A8 100%)!important;
  opacity:1!important;
}
@media(max-width:980px){
  .page-home .hero h1{
    font-size:clamp(2.25rem,7.0vw,3.65rem)!important;
    line-height:1.09!important;
    max-width:760px!important;
  }
}
@media(max-width:760px){
  .page-home .hero h1{
    font-size:clamp(2.05rem,8.1vw,3.05rem)!important;
    line-height:1.10!important;
    max-width:100%!important;
    letter-spacing:-0.036em!important;
  }
}
@media(max-width:430px){
  .page-home .hero h1{
    font-size:clamp(1.88rem,7.6vw,2.42rem)!important;
  }
}


/* ============================================================
   v66 multilingual visual sync
   - line-level hero animation for Chinese / Russian / Korean / Japanese
   - shared hero badge, card hover and section polish for localized home pages
   ============================================================ */
.page-home .hero h1.hero-line-title{
  overflow:visible!important;
  max-width:900px!important;
  padding-bottom:.12em!important;
}
.page-home .hero h1.hero-line-title > span,
.page-home .hero h1.hero-line-title > em{
  display:block!important;
  overflow:visible!important;
  white-space:normal!important;
  opacity:.001;
  transform:translateY(14px);
  animation:tjneHeroLine .76s cubic-bezier(.22,1,.36,1) forwards;
  animation-delay:calc(var(--line-index,0) * 150ms + 120ms);
}
.page-home .hero h1.hero-line-title > em{
  font-style:normal!important;
  color:transparent!important;
  background:linear-gradient(90deg,#D7EAFF 0%,#8FC7FF 46%,#4B93D2 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}
@keyframes tjneHeroLine{
  to{opacity:1;transform:translateY(0);}
}
.lang-zh-cn .hero h1.hero-line-title,
.lang-ko .hero h1.hero-line-title,
.lang-ja .hero h1.hero-line-title{
  letter-spacing:-0.055em!important;
  line-height:1.14!important;
  font-size:clamp(2.35rem,4.65vw,4.05rem)!important;
}
.lang-ru .hero h1.hero-line-title{
  letter-spacing:-0.04em!important;
  line-height:1.1!important;
  font-size:clamp(2.1rem,4.35vw,3.65rem)!important;
  max-width:880px!important;
}
.lang-ru .hero-lead{max-width:590px!important;}
.lang-ko .hero-lead,.lang-ja .hero-lead,.lang-zh-cn .hero-lead{max-width:560px!important;}

/* Localized home-page section rhythm */
.page-home .page-section{
  padding:86px 0!important;
  position:relative;
}
.page-home .page-section.pale{
  background:linear-gradient(180deg,#f5f9fc 0%,#eef4f8 100%)!important;
}
.page-home .page-section .section-head{
  text-align:center;
  max-width:920px;
  margin:0 auto 42px!important;
}
.page-home .page-section .section-head h2{
  font-family:'Manrope',sans-serif;
  font-size:clamp(2rem,3.4vw,3rem);
  line-height:1.12;
  letter-spacing:-.035em;
  margin:8px 0 14px;
  color:var(--text,#101820);
}
.page-home .page-section .section-head p:not(.section-kicker){
  color:var(--muted,#6d7a88);
  line-height:1.72;
  font-size:1rem;
  margin:0 auto;
  max-width:780px;
}
.page-home .section-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--blue,#005bac)!important;
  margin:0 0 8px;
}
.page-home .section-kicker::before{
  content:'';
  width:22px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#58C37D,#4B93D2);
}

/* Localized product family cards: same premium hover language as English cards */
.product-family-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px!important;
}
.product-family-card{
  position:relative;
  display:flex!important;
  flex-direction:column;
  min-height:100%;
  color:inherit!important;
  text-decoration:none!important;
  background:#fff;
  border:1px solid rgba(206,222,235,.95);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 12px 34px rgba(16,32,54,.07);
  transform:translateY(0);
  transition:transform .24s cubic-bezier(.22,1,.36,1), box-shadow .24s ease, border-color .24s ease;
}
.product-family-card::before{
  content:'';
  position:absolute;
  left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg,#4B93D2,#8FC7FF);
  transform:scaleX(.28);
  transform-origin:left;
  opacity:.92;
  transition:transform .28s cubic-bezier(.22,1,.36,1);
  z-index:2;
}
.product-family-card:hover{
  transform:translateY(-6px);
  border-color:rgba(75,147,210,.46);
  box-shadow:0 24px 58px rgba(16,32,54,.14);
}
.product-family-card:hover::before{transform:scaleX(1);}
.family-photo{
  position:relative;
  height:190px;
  background:#eef4f8;
  overflow:hidden;
}
.family-photo img{
  width:100%;height:100%;object-fit:cover;
  filter:saturate(.94) brightness(.96) contrast(1.02);
  transition:transform .55s cubic-bezier(.22,1,.36,1), filter .28s ease;
}
.product-family-card:hover .family-photo img{
  transform:scale(1.055);
  filter:saturate(1.02) brightness(.98) contrast(1.03);
}
.family-photo::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(11,31,58,0) 38%,rgba(11,31,58,.20) 100%);
  opacity:.65;
  pointer-events:none;
}
.family-copy{
  padding:24px 22px 22px;
  display:flex;
  flex-direction:column;
  gap:12px;
  flex:1;
}
.family-copy h3{
  font-family:'Manrope',sans-serif;
  font-size:1.12rem;
  line-height:1.32;
  letter-spacing:-.015em;
  margin:0;
  color:var(--text,#101820);
}
.family-copy p{
  color:var(--muted,#6d7a88);
  font-size:.92rem;
  line-height:1.62;
  margin:0;
}
.family-copy > span{
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  color:var(--blue,#005bac);
  font-weight:800;
  font-size:.88rem;
  padding-top:6px;
  transition:gap .18s ease, transform .18s ease;
}
.product-family-card:hover .family-copy > span{
  transform:translateX(2px);
}

/* Localized application cards: clearer click/hover affordance */
.lang-ru .application-grid .app-card,
.lang-ko .application-grid .app-card,
.lang-ja .application-grid .app-card{
  position:relative;
  border-radius:22px!important;
  overflow:hidden!important;
  cursor:default;
}
.lang-ru .application-grid .app-card::after,
.lang-ko .application-grid .app-card::after,
.lang-ja .application-grid .app-card::after{
  content:'';
  position:absolute;left:22px;right:22px;bottom:0;height:3px;
  background:linear-gradient(90deg,#4B93D2,#8FC7FF);
  transform:scaleX(.22);transform-origin:left;
  opacity:.78;transition:transform .24s ease;
}
.lang-ru .application-grid .app-card:hover::after,
.lang-ko .application-grid .app-card:hover::after,
.lang-ja .application-grid .app-card:hover::after{transform:scaleX(1);}

/* Localized final CTA block */
.page-home .dark-cta{
  background:#0b1f3a!important;
  color:#fff!important;
  padding:84px 0!important;
  overflow:hidden;
}
.page-home .dark-cta::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 80% at 80% 20%,rgba(75,147,210,.22),transparent 62%),
             linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
             linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:auto,60px 60px,60px 60px;
  pointer-events:none;
}
.page-home .dark-cta .section-head{position:relative;z-index:1;margin-bottom:0!important;}
.page-home .dark-cta h2{color:#fff!important;}
.page-home .dark-cta p{color:rgba(255,255,255,.76)!important;}
.page-home .dark-cta .section-kicker{color:#8FC7FF!important;}
.page-home .dark-cta .btn{margin-top:28px;}

@media(max-width:1080px){
  .product-family-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .page-home .page-section{padding:64px 0!important;}
  .product-family-grid{grid-template-columns:1fr;gap:16px!important;}
  .family-photo{height:210px;}
  .lang-zh-cn .hero h1.hero-line-title,
  .lang-ko .hero h1.hero-line-title,
  .lang-ja .hero h1.hero-line-title{
    font-size:clamp(2.0rem,8vw,3.0rem)!important;
    line-height:1.16!important;
    letter-spacing:-0.045em!important;
  }
  .lang-ru .hero h1.hero-line-title{
    font-size:clamp(1.86rem,7.4vw,2.72rem)!important;
    line-height:1.12!important;
  }
}
@media(max-width:430px){
  .family-photo{height:188px;}
  .page-home .hero h1.hero-line-title > span,
  .page-home .hero h1.hero-line-title > em{white-space:normal!important;}
}

/* ============================================================
   v67 localized image layout fix
   - v66 product-card hover styles were too broad for localized pages
   - restore product listing image proportions
   - keep localized home product images compact and consistent
   ============================================================ */

/* Localized home product cards: compact image panels, no inherited tall min-height. */
.page-home.lang-ru .product-family-grid,
.page-home.lang-ko .product-family-grid,
.page-home.lang-ja .product-family-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:22px!important;
}
.page-home.lang-ru .product-family-card .family-photo,
.page-home.lang-ko .product-family-card .family-photo,
.page-home.lang-ja .product-family-card .family-photo{
  height:200px!important;
  min-height:200px!important;
  max-height:200px!important;
  background:#eef4f8!important;
  overflow:hidden!important;
}
.page-home.lang-ru .product-family-card .family-photo img,
.page-home.lang-ko .product-family-card .family-photo img,
.page-home.lang-ja .product-family-card .family-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}

/* English / Chinese product listing pages use .family-card. Restore the original two-column media layout. */
body.page-products .product-family-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
}
body.page-products .family-card{
  display:grid!important;
  grid-template-columns:240px minmax(0,1fr)!important;
  min-height:360px!important;
}
body.page-products .family-photo{
  height:100%!important;
  min-height:320px!important;
  max-height:none!important;
}
body.page-products .family-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}

/* RU / KO / JA product listing pages use .product-family-card. Give them a listing layout instead of the home-card crop. */
body.page-standard.lang-ru .product-family-grid,
body.page-standard.lang-ko .product-family-grid,
body.page-standard.lang-ja .product-family-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
}
body.page-standard.lang-ru .product-family-card,
body.page-standard.lang-ko .product-family-card,
body.page-standard.lang-ja .product-family-card{
  display:grid!important;
  grid-template-columns:240px minmax(0,1fr)!important;
  min-height:320px!important;
  background:#fff!important;
  border:1px solid var(--line,#dfe7ee)!important;
  border-radius:22px!important;
  overflow:hidden!important;
  box-shadow:var(--shadow,0 16px 40px rgba(16,32,54,.08))!important;
  color:inherit!important;
  text-decoration:none!important;
  transform:none;
}
body.page-standard.lang-ru .product-family-card::before,
body.page-standard.lang-ko .product-family-card::before,
body.page-standard.lang-ja .product-family-card::before{
  display:none!important;
}
body.page-standard.lang-ru .product-family-card .family-photo,
body.page-standard.lang-ko .product-family-card .family-photo,
body.page-standard.lang-ja .product-family-card .family-photo{
  height:100%!important;
  min-height:320px!important;
  max-height:none!important;
  background:#eef4f8!important;
}
body.page-standard.lang-ru .product-family-card .family-photo img,
body.page-standard.lang-ko .product-family-card .family-photo img,
body.page-standard.lang-ja .product-family-card .family-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
body.page-standard.lang-ru .product-family-card .family-copy,
body.page-standard.lang-ko .product-family-card .family-copy,
body.page-standard.lang-ja .product-family-card .family-copy{
  padding:30px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
body.page-standard.lang-ru .product-family-card .family-copy h3,
body.page-standard.lang-ko .product-family-card .family-copy h3,
body.page-standard.lang-ja .product-family-card .family-copy h3{
  font-family:'Manrope',sans-serif!important;
  font-size:1.28rem!important;
  line-height:1.32!important;
  margin:0 0 2px!important;
}
body.page-standard.lang-ru .product-family-card .family-copy p,
body.page-standard.lang-ko .product-family-card .family-copy p,
body.page-standard.lang-ja .product-family-card .family-copy p{
  font-size:.9rem!important;
  line-height:1.68!important;
  color:var(--muted,#6d7a88)!important;
}
body.page-standard.lang-ru .product-family-card .family-copy span,
body.page-standard.lang-ko .product-family-card .family-copy span,
body.page-standard.lang-ja .product-family-card .family-copy span{
  margin-top:auto!important;
  color:var(--blue,#005bac)!important;
  font-weight:800!important;
}

@media(max-width:1100px){
  .page-home.lang-ru .product-family-grid,
  .page-home.lang-ko .product-family-grid,
  .page-home.lang-ja .product-family-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.page-products .product-family-grid,
  body.page-standard.lang-ru .product-family-grid,
  body.page-standard.lang-ko .product-family-grid,
  body.page-standard.lang-ja .product-family-grid{
    grid-template-columns:1fr!important;
  }
  body.page-products .family-card,
  body.page-standard.lang-ru .product-family-card,
  body.page-standard.lang-ko .product-family-card,
  body.page-standard.lang-ja .product-family-card{
    grid-template-columns:minmax(220px,34%) minmax(0,1fr)!important;
  }
}
@media(max-width:680px){
  .page-home.lang-ru .product-family-grid,
  .page-home.lang-ko .product-family-grid,
  .page-home.lang-ja .product-family-grid{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .page-home.lang-ru .product-family-card .family-photo,
  .page-home.lang-ko .product-family-card .family-photo,
  .page-home.lang-ja .product-family-card .family-photo{
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
  }
  body.page-products .family-card,
  body.page-standard.lang-ru .product-family-card,
  body.page-standard.lang-ko .product-family-card,
  body.page-standard.lang-ja .product-family-card{
    grid-template-columns:1fr!important;
    min-height:auto!important;
  }
  body.page-products .family-photo,
  body.page-standard.lang-ru .product-family-card .family-photo,
  body.page-standard.lang-ko .product-family-card .family-photo,
  body.page-standard.lang-ja .product-family-card .family-photo{
    height:220px!important;
    min-height:220px!important;
    max-height:240px!important;
  }
}


/* ============================================================
   v68 localized inner-page repair
   - RU / KO / JA inner pages now use styles.css like English/Chinese
   - restore compact page hero rhythm and image-card layout
   - prevent localized product/application cards from inheriting home-only spacing
   ============================================================ */
body.page-standard:not(.page-home) .page-hero{
  position:relative!important;
  min-height:auto!important;
  padding:76px 0 66px!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#f2f7fc 0%,#f8fbfd 56%,#fff 100%)!important;
  border-bottom:1px solid var(--line,#dce8f4)!important;
}
body.page-standard:not(.page-home) .page-hero .hero-bg-lines,
body.page-standard:not(.page-home) .page-hero::before{
  content:'';
  position:absolute;inset:0;
  background-image:linear-gradient(rgba(15,23,32,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,32,.030) 1px,transparent 1px)!important;
  background-size:56px 56px!important;
  opacity:.56!important;
  pointer-events:none!important;
  mask-image:radial-gradient(ellipse at 22% 50%,#000 0%,transparent 68%)!important;
}
body.page-standard:not(.page-home) .page-hero-inner{position:relative!important;z-index:1!important;}
body.page-standard:not(.page-home) .page-hero h1{
  font-size:clamp(2.05rem,4.3vw,3.25rem)!important;
  line-height:1.12!important;
  margin:8px 0 12px!important;
  max-width:980px!important;
}
body.page-standard:not(.page-home) .page-hero p:not(.eyebrow):not(.section-kicker){
  max-width:900px!important;
  color:var(--text-2,#3f4c5a)!important;
  line-height:1.72!important;
  font-size:1.02rem!important;
}
body.page-standard:not(.page-home) .page-section{
  padding:68px 0!important;
}
body.page-standard:not(.page-home) main > .page-section:first-of-type{
  padding-top:58px!important;
}
body.page-standard .eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  color:var(--blue,#0b5cab)!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-size:.72rem!important;
  margin:0 0 12px!important;
}
body.page-standard .eyebrow::before{
  content:''!important;
  width:22px!important;height:2px!important;border-radius:999px!important;
  background:linear-gradient(90deg,#58C37D,#4B93D2)!important;
  display:block!important;flex:0 0 auto!important;
}

/* Localized product listing pages: stable image cards. */
body.page-standard.lang-ru.page-products .product-family-grid,
body.page-standard.lang-ko.page-products .product-family-grid,
body.page-standard.lang-ja.page-products .product-family-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
}
body.page-standard.lang-ru.page-products .product-family-card,
body.page-standard.lang-ko.page-products .product-family-card,
body.page-standard.lang-ja.page-products .product-family-card{
  display:grid!important;
  grid-template-columns:240px minmax(0,1fr)!important;
  min-height:320px!important;
  background:#fff!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:22px!important;
  overflow:hidden!important;
  box-shadow:0 16px 42px rgba(16,32,54,.08)!important;
  color:inherit!important;
  text-decoration:none!important;
  transform:none!important;
}
body.page-standard.lang-ru.page-products .product-family-card::before,
body.page-standard.lang-ko.page-products .product-family-card::before,
body.page-standard.lang-ja.page-products .product-family-card::before{display:none!important;}
body.page-standard.lang-ru.page-products .family-photo,
body.page-standard.lang-ko.page-products .family-photo,
body.page-standard.lang-ja.page-products .family-photo{
  height:100%!important;min-height:320px!important;max-height:none!important;background:#eef4f8!important;overflow:hidden!important;
}
body.page-standard.lang-ru.page-products .family-photo img,
body.page-standard.lang-ko.page-products .family-photo img,
body.page-standard.lang-ja.page-products .family-photo img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;opacity:1!important;filter:saturate(.95) brightness(.98)!important;
}
body.page-standard.lang-ru.page-products .family-copy,
body.page-standard.lang-ko.page-products .family-copy,
body.page-standard.lang-ja.page-products .family-copy{
  padding:30px!important;display:flex!important;flex-direction:column!important;gap:12px!important;
}
body.page-standard.lang-ru.page-products .family-copy h3,
body.page-standard.lang-ko.page-products .family-copy h3,
body.page-standard.lang-ja.page-products .family-copy h3{font-size:1.28rem!important;line-height:1.32!important;margin:0!important;}
body.page-standard.lang-ru.page-products .family-copy p,
body.page-standard.lang-ko.page-products .family-copy p,
body.page-standard.lang-ja.page-products .family-copy p{font-size:.92rem!important;line-height:1.68!important;color:var(--muted,#6d7a88)!important;}

/* Localized applications pages: same image-card affordance as English/Chinese. */
body.page-standard.page-applications .app-detail-grid,
body.page-standard.page-applications .application-detail-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
}
body.page-standard.page-applications .application-link-card,
body.page-standard.page-applications .application-detail-card{
  display:grid!important;
  grid-template-columns:230px minmax(0,1fr)!important;
  min-height:300px!important;
  background:#fff!important;
  border:1px solid var(--line,#dce8f4)!important;
  border-radius:22px!important;
  overflow:hidden!important;
  box-shadow:0 16px 42px rgba(16,32,54,.08)!important;
  color:inherit!important;
  text-decoration:none!important;
  cursor:pointer!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
body.page-standard.page-applications .application-link-card:hover,
body.page-standard.page-applications .application-detail-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(75,147,210,.42)!important;
  box-shadow:0 24px 58px rgba(16,32,54,.13)!important;
}
body.page-standard.page-applications .app-photo{height:100%!important;min-height:300px!important;background:#eef4f8!important;overflow:hidden!important;}
body.page-standard.page-applications .app-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;filter:saturate(.96) brightness(.98)!important;}
body.page-standard.page-applications .app-content{padding:28px!important;display:flex!important;flex-direction:column!important;gap:12px!important;}
body.page-standard.page-applications .app-content h3,
body.page-standard.page-applications .app-content h2{font-size:1.22rem!important;line-height:1.32!important;margin:0!important;}
body.page-standard.page-applications .app-content p{font-size:.93rem!important;line-height:1.68!important;color:var(--text-2,#3f4c5a)!important;margin:0!important;}
body.page-standard.page-applications .app-cta,
body.page-standard.page-applications .btn.small{
  margin-top:auto!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  width:max-content!important;max-width:100%!important;
  padding:10px 16px!important;border-radius:999px!important;
  border:1px solid rgba(11,92,171,.20)!important;background:#fff!important;color:var(--blue,#0b5cab)!important;
  font-weight:800!important;text-decoration:none!important;
}
body.page-standard.page-applications .application-link-card:hover .app-cta{background:linear-gradient(135deg,#0b5cab,#1f78d1)!important;color:#fff!important;}

/* Avoid hidden reveal elements looking like broken images on localized inner pages. */
body.page-standard.lang-ru:not(.page-home) .reveal,
body.page-standard.lang-ko:not(.page-home) .reveal,
body.page-standard.lang-ja:not(.page-home) .reveal{opacity:1!important;transform:none!important;}

@media(max-width:980px){
  body.page-standard.lang-ru.page-products .product-family-grid,
  body.page-standard.lang-ko.page-products .product-family-grid,
  body.page-standard.lang-ja.page-products .product-family-grid,
  body.page-standard.page-applications .app-detail-grid,
  body.page-standard.page-applications .application-detail-grid{grid-template-columns:1fr!important;}
}
@media(max-width:680px){
  body.page-standard:not(.page-home) .page-hero{padding:54px 0 46px!important;}
  body.page-standard:not(.page-home) .page-section{padding:52px 0!important;}
  body.page-standard.lang-ru.page-products .product-family-card,
  body.page-standard.lang-ko.page-products .product-family-card,
  body.page-standard.lang-ja.page-products .product-family-card,
  body.page-standard.page-applications .application-link-card,
  body.page-standard.page-applications .application-detail-card{grid-template-columns:1fr!important;min-height:auto!important;}
  body.page-standard.lang-ru.page-products .family-photo,
  body.page-standard.lang-ko.page-products .family-photo,
  body.page-standard.lang-ja.page-products .family-photo,
  body.page-standard.page-applications .app-photo{height:220px!important;min-height:220px!important;max-height:240px!important;}
}


/* ============================================================
   v69 rebuild: RU / KO / JA pages rebuilt from English templates
   - no page-standard class on localized inner pages
   - keep English/Chinese layout system while using localized text
   ============================================================ */
body.lang-ru:not(.page-home) .page-hero,
body.lang-ko:not(.page-home) .page-hero,
body.lang-ja:not(.page-home) .page-hero{min-height:auto!important;}
body.lang-ru.page-contact .page-hero,
body.lang-ko.page-contact .page-hero,
body.lang-ja.page-contact .page-hero,
body.lang-ru.page-about .page-hero,
body.lang-ko.page-about .page-hero,
body.lang-ja.page-about .page-hero{background:var(--navy)!important;color:#fff!important;}
body.lang-ru.page-contact .page-hero h1,
body.lang-ko.page-contact .page-hero h1,
body.lang-ja.page-contact .page-hero h1,
body.lang-ru.page-about .page-hero h1,
body.lang-ko.page-about .page-hero h1,
body.lang-ja.page-about .page-hero h1{color:#fff!important;}
body.lang-ru.page-home .hero h1,
body.lang-ko.page-home .hero h1,
body.lang-ja.page-home .hero h1{font-size:clamp(2.75rem,5.6vw,5.45rem)!important;line-height:1.08!important;}
body.lang-ru.page-home .hero h1 span,
body.lang-ko.page-home .hero h1 span,
body.lang-ja.page-home .hero h1 span,
body.lang-ru.page-home .hero h1 em,
body.lang-ko.page-home .hero h1 em,
body.lang-ja.page-home .hero h1 em{display:block!important;overflow:visible!important;padding-bottom:.04em;}
body.lang-ru .main-nav a,body.lang-ko .main-nav a,body.lang-ja .main-nav a{white-space:nowrap;}


/* ============================================================
   v70 trial refinements — selective A-class improvements
   Safe to remove if the visual experiment is not adopted.
   ============================================================ */

/* Cross-platform mobile menu icon instead of the raw ☰ character. */
.mobile-menu .menu-icon{width:24px;height:18px;display:inline-flex;flex-direction:column;justify-content:space-between;align-items:stretch;}
.mobile-menu .menu-icon span{display:block;height:2px;border-radius:999px;background:currentColor;}

/* More product-led hero image treatment. */
.page-home .hero-img-wrap img{filter:saturate(1.02) contrast(1.02);}
.page-home .hero-badge{backdrop-filter:blur(14px);}

/* Impact stats strip. */
.stats-impact{background:linear-gradient(135deg,#0d263d 0%,#113b60 56%,#0b5cab 100%);padding:50px 0;position:relative;overflow:hidden;}
.stats-impact::before{content:'';position:absolute;inset:-120px -10% auto auto;width:380px;height:380px;background:radial-gradient(circle,rgba(75,147,210,.30),transparent 65%);pointer-events:none;}
.stats-impact-inner{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;position:relative;z-index:1;border:1px solid rgba(255,255,255,.10);border-radius:22px;overflow:hidden;background:rgba(255,255,255,.035);box-shadow:0 24px 70px rgba(2,12,24,.20);}
.stat-impact-cell{text-align:center;padding:30px 18px;border-right:1px solid rgba(255,255,255,.10);}
.stat-impact-cell:last-child{border-right:none;}
.stat-num,.stat-code{font-family:'Manrope',system-ui,sans-serif;font-size:clamp(2.15rem,4.6vw,3.7rem);font-weight:800;line-height:1;letter-spacing:-.035em;color:#fff;}
.stat-num{background:linear-gradient(135deg,#fff 42%,#9ed2ff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.stat-code{font-size:clamp(1.65rem,2.9vw,2.7rem);letter-spacing:-.02em;color:#fff;}
.stat-label{margin-top:12px;color:rgba(255,255,255,.72);font-size:.78rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase;line-height:1.35;}
@media(max-width:980px){.stats-impact-inner{grid-template-columns:repeat(2,minmax(0,1fr));}.stat-impact-cell{border-right:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.10);}.stat-impact-cell:nth-child(2n){border-right:none;}.stat-impact-cell:last-child{grid-column:1/-1;border-right:none;border-bottom:none;}}
@media(max-width:520px){.stats-impact{padding:34px 0;}.stat-impact-cell{padding:24px 14px;}.stat-label{font-size:.68rem;}}

/* Finer hover treatment for product and family cards. */
.product-card,.product-family-card,.family-card,.subproduct-card,.application-link-card,.application-detail-card{position:relative;overflow:hidden;transition:transform .24s var(--ease),box-shadow .24s var(--ease),border-color .24s var(--ease),background .24s var(--ease);}
.product-card:hover,.product-family-card:hover,.family-card:hover,.subproduct-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(15,38,62,.13)!important;border-color:rgba(75,147,210,.38)!important;}
.product-card .product-image,.product-family-card .family-photo,.family-card .family-photo,.subproduct-card .subproduct-photo{overflow:hidden;}
.product-card .product-image img,.product-family-card .family-photo img,.family-card .family-photo img,.subproduct-card .subproduct-photo img{transition:transform .42s var(--ease),filter .42s var(--ease);}
.product-card:hover .product-image img,.product-family-card:hover .family-photo img,.family-card:hover .family-photo img,.subproduct-card:hover .subproduct-photo img{transform:scale(1.045);filter:saturate(1.05) contrast(1.02);}
.product-card::after,.product-family-card::after,.family-card::after,.subproduct-card::after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#0b5cab,#4b93d2);transform:scaleX(0);transform-origin:left;transition:transform .24s var(--ease);}
.product-card:hover::after,.product-family-card:hover::after,.family-card:hover::after,.subproduct-card:hover::after{transform:scaleX(1);}

/* Contact page response guidance. */
.contact-response-note{margin:18px 0 0;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,rgba(11,92,171,.08),rgba(75,147,210,.10));border:1px solid rgba(11,92,171,.16);color:var(--text-2);font-size:.9rem;line-height:1.55;}
.form-note.form-ok{display:block;margin-top:10px;padding:12px 14px;border-radius:12px;background:#e7f3ee;color:#155c42;border:1px solid rgba(31,118,85,.22);font-weight:700;}
.form-note.form-error{display:block;margin-top:10px;padding:12px 14px;border-radius:12px;background:#fff2f0;color:#9b2c23;border:1px solid rgba(184,94,31,.22);font-weight:700;}
.contact-form textarea{min-height:156px;}

/* About international cooperation section. */
.international-section{padding-top:0!important;}
.international-card{position:relative;overflow:hidden;border-radius:24px;padding:42px;background:linear-gradient(135deg,#0f2d49,#164d78 62%,#0b5cab);box-shadow:0 26px 70px rgba(13,38,61,.18);color:#fff;}
.international-card::after{content:'';position:absolute;right:-120px;top:-140px;width:340px;height:340px;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 70%);}
.international-card h2{color:#fff;max-width:820px;margin:0 0 16px;}
.international-card p{color:rgba(255,255,255,.78);max-width:900px;}
.international-card .section-kicker{color:#9ed2ff;}
.international-badges span{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:#fff;}
@media(max-width:680px){.international-card{padding:30px 24px;border-radius:18px;}}

/* Sticky contact CTA. */
.sticky-cta{position:fixed;right:24px;bottom:26px;z-index:900;display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.sticky-cta-toggle{display:flex;align-items:center;gap:8px;border:0;border-radius:999px;background:linear-gradient(135deg,#0b5cab,#1778d5);color:#fff;padding:13px 18px 13px 15px;font:700 14px/1 'Inter',system-ui,sans-serif;box-shadow:0 14px 34px rgba(11,92,171,.35);cursor:pointer;transition:transform .18s var(--ease),box-shadow .18s var(--ease);}
.sticky-cta-toggle:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(11,92,171,.42);}
.sticky-cta-close{display:none;font-size:18px;line-height:1;}
.sticky-cta.open .sticky-cta-label{display:none;}
.sticky-cta.open .sticky-cta-close{display:inline;}
.sticky-cta.open .sticky-cta-toggle{width:48px;height:48px;border-radius:50%;justify-content:center;padding:0;}
.sticky-cta-menu{display:flex;flex-direction:column;gap:7px;opacity:0;pointer-events:none;transform:translateY(10px) scale(.97);transform-origin:bottom right;transition:opacity .22s var(--ease),transform .22s var(--ease);}
.sticky-cta.open .sticky-cta-menu{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);}
.sticky-cta-item{display:flex;align-items:center;gap:12px;min-width:246px;padding:12px 15px;border-radius:16px;background:#fff;color:var(--text);border:1px solid rgba(216,227,236,.95);box-shadow:0 16px 42px rgba(14,34,55,.16);text-decoration:none;transition:transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease);}
.sticky-cta-item:hover{transform:translateX(-3px);box-shadow:0 20px 48px rgba(14,34,55,.20);border-color:rgba(75,147,210,.42);}
.sci-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:11px;background:var(--sky);color:var(--blue);flex:0 0 auto;}
.sci-text{display:flex;flex-direction:column;gap:2px;min-width:0;}
.sci-text strong{font-size:.86rem;line-height:1.2;}
.sci-text small{font-size:.72rem;line-height:1.25;color:var(--muted);}
.page-contact .sticky-cta{display:none;}
@media(max-width:560px){.sticky-cta{right:14px;bottom:16px;}.sticky-cta-item{min-width:218px;}.sticky-cta-toggle{padding:12px 16px 12px 14px;}.sticky-cta-label{display:none;}}

/* ─────────────────────────────────────────────────────────────
   v70 round-2 trial refinements — Cloudflare Pages free friendly
   No paid services, no external runtime dependencies.
   ───────────────────────────────────────────────────────────── */

/* Hero product frame: make the existing photo feel like a displayed industrial object. */
.hero-visual-col{position:relative;}
.hero-img-wrap.hero-showcase-frame{position:relative;isolation:isolate;box-shadow:0 28px 90px rgba(2,12,24,.28)!important;}
.hero-img-wrap.hero-showcase-frame::before,
.hero-img-wrap.hero-showcase-frame::after{content:"";position:absolute;z-index:2;pointer-events:none;border-radius:inherit;}
.hero-img-wrap.hero-showcase-frame::before{inset:-12px -12px auto auto;width:48%;height:42%;border-top:1px solid rgba(255,255,255,.34);border-right:1px solid rgba(255,255,255,.28);filter:drop-shadow(0 0 10px rgba(86,171,224,.22));}
.hero-img-wrap.hero-showcase-frame::after{inset:auto auto -12px -12px;width:42%;height:36%;border-left:1px solid rgba(86,171,224,.30);border-bottom:1px solid rgba(86,171,224,.28);filter:drop-shadow(0 0 10px rgba(86,171,224,.16));}
.hero-iso-badge{position:absolute;top:22px;right:18px;z-index:5;display:flex;flex-direction:column;gap:2px;padding:10px 14px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(7,25,42,.58);backdrop-filter:blur(12px);box-shadow:0 14px 34px rgba(2,12,24,.26);color:#fff;line-height:1.15;}
.hero-iso-badge strong{font-size:.78rem;font-weight:800;letter-spacing:.02em;white-space:nowrap;}
.hero-iso-badge span{font-size:.64rem;color:rgba(232,244,252,.82);white-space:nowrap;}
@media(max-width:860px){.hero-iso-badge{top:14px;right:12px;padding:8px 11px;}.hero-iso-badge strong{font-size:.7rem}.hero-iso-badge span{font-size:.58rem}}
@media(max-width:768px){.hero-tags{display:none!important;}.hero-img-wrap.hero-showcase-frame::before,.hero-img-wrap.hero-showcase-frame::after{display:none;}}

/* Subtle industrial material texture for dark sections; very low opacity to avoid template feel. */
.stats-impact::after,.site-footer::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(135deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(45deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px,64px 64px;opacity:.24;mix-blend-mode:screen;}
.site-footer{position:relative;overflow:hidden;}
.site-footer>.container,.site-footer .footer-bottom{position:relative;z-index:1;}

/* Capability cards: make 01–06 feel like industrial scale markings. */
.capability-card{position:relative;overflow:hidden;}
.capability-card .capability-index{position:absolute!important;right:16px!important;top:6px!important;font-family:'JetBrains Mono','SFMono-Regular',Consolas,monospace!important;font-size:clamp(3.4rem,7vw,6.6rem)!important;line-height:.86!important;font-weight:700!important;letter-spacing:-.08em!important;color:rgba(47,154,214,.13)!important;z-index:0!important;pointer-events:none;}
.capability-card h3,.capability-card p{position:relative;z-index:1;}
.capability-card::after{content:"";position:absolute;right:18px;bottom:16px;width:54px;height:1px;background:linear-gradient(90deg,transparent,rgba(47,154,214,.45));}

/* About / Applications page-level jump navigation. */
.page-jump-nav{position:sticky;top:72px;z-index:60;background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(18,44,67,.08);box-shadow:0 8px 20px rgba(2,12,24,.045);}
.page-jump-nav .container{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;padding-top:10px;padding-bottom:10px;}
.page-jump-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 14px;border-radius:999px;border:1px solid rgba(11,92,171,.13);background:#fff;color:#174e75;font-size:.78rem;font-weight:700;text-decoration:none;transition:background .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease);}
.page-jump-nav a:hover{background:#0b5cab;color:#fff;border-color:#0b5cab;transform:translateY(-1px);}
@media(max-width:760px){.page-jump-nav{position:relative;top:auto;}.page-jump-nav .container{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-left:18px;padding-right:18px;}.page-jump-nav a{white-space:nowrap;}}

/* Partner references: separate global and China references so overseas readers see familiar names first. */
.partner-logos-full{display:block!important;}
.partner-group{margin-top:24px;}
.partner-group-title{display:flex;align-items:center;gap:12px;margin:0 0 14px;font-size:.86rem!important;text-transform:uppercase;letter-spacing:.08em;color:#174e75;}
.partner-group-title::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(11,92,171,.25),transparent);}
.partner-group-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.partner-group-china .partner-group-logos{grid-template-columns:repeat(5,minmax(0,1fr));}
.partner-group-global .partner-logo-card{min-height:104px;border-color:rgba(11,92,171,.16);background:linear-gradient(180deg,#fff,#f7fbff);}
@media(max-width:980px){.partner-group-logos,.partner-group-china .partner-group-logos{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:600px){.partner-group-logos,.partner-group-china .partner-group-logos{grid-template-columns:repeat(2,minmax(0,1fr));}.partner-group-title{font-size:.75rem!important;}}

/* Applications: direct links from application scenario to relevant product families. */
.app-product-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid rgba(18,44,67,.08);}
.app-product-links-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#718096;margin-right:2px;}
.app-product-links a{display:inline-flex;align-items:center;min-height:30px;padding:6px 11px;border-radius:999px;background:#eaf4fb!important;color:#0b5cab!important;font-size:.76rem;font-weight:750;text-decoration:none!important;border:1px solid rgba(11,92,171,.14);transition:background .18s var(--ease),color .18s var(--ease),transform .18s var(--ease),border-color .18s var(--ease);}
.app-product-links a::after{content:"→";margin-left:6px;font-weight:900;}
.app-product-links a:hover{background:#0b5cab!important;color:#fff!important;border-color:#0b5cab;transform:translateY(-1px);}

/* Contact response expectation: place and style as a confidence cue near submission. */
.contact-response-note{display:flex;align-items:flex-start;gap:8px;margin:14px 0 0!important;padding:11px 14px;border-radius:14px;background:#f0f8f3;border:1px solid rgba(37,128,70,.14);color:#2b5a3c!important;font-size:.82rem;line-height:1.55;}
.contact-response-note::before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px;margin-top:1px;border-radius:50%;background:#2d8a55;color:#fff;font-size:.72rem;font-weight:900;}

/* Footer brand statement: keep it compact and readable. */
.footer-brand p{max-width:560px!important;line-height:1.55!important;}

/* ============================================================
   Round 2.1 hotfix — remove empty dark patch inside homepage hero image
   The decorative ::after frame inherited an old gradient overlay from home.css.
   Keep only the fine border line; remove the transparent dark block.
   ============================================================ */
.page-home .hero-img-wrap.hero-showcase-frame::before,
.page-home .hero-img-wrap.hero-showcase-frame::after{
  background:transparent!important;
}


/* ============================================================
   v70 round-3 cleanup
   - homepage stats now use .stats-impact consistently across languages
   - script.js contains one unified counter animation controller
   ============================================================ */
.stat-num[data-target],
.metric-num,
.about-metrics strong,
.stat-text strong{
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1, "lnum" 1;
}
.stat-num.is-counting,
.metric-num.is-counting,
.about-metrics strong.is-counting,
.stat-text strong.is-counting{
  will-change: contents;
}
.stats-impact .stat-num[data-target]{min-width:2.4ch;display:inline-block;}

/* ─────────────────────────────────────────────────────────────
   v70 round-4 visual QA cleanup
   Scope: all languages, Cloudflare Pages free friendly, no paid tools.
   Fixes milestone overlap, standardizes Knowledge / FAQ / article blocks,
   and removes reliance on older experimental timeline selectors.
   ───────────────────────────────────────────────────────────── */

/* Robust About milestones: cleaner industrial vertical timeline. */
.page-about .timeline{
  position:relative!important;
  max-width:980px!important;
  padding:42px 48px 46px!important;
  overflow:hidden!important;
}
.page-about .timeline h2{
  margin:0 0 26px!important;
  padding-bottom:18px!important;
  border-bottom:1px solid rgba(11,92,171,.14)!important;
}
.page-about .timeline .timeline-item{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(118px,150px) minmax(0,1fr)!important;
  gap:24px!important;
  align-items:center!important;
  margin:0!important;
  padding:18px 0 18px 36px!important;
  border-top:0!important;
  min-width:0!important;
}
.page-about .timeline .timeline-item::before{
  content:""!important;
  position:absolute!important;
  left:9px!important;
  top:0!important;
  bottom:0!important;
  width:2px!important;
  background:linear-gradient(180deg,rgba(11,92,171,.12),rgba(11,92,171,.78),rgba(11,92,171,.10))!important;
}
.page-about .timeline .timeline-item::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:20px!important;
  height:20px!important;
  border-radius:50%!important;
  background:#fff!important;
  border:5px solid #0b5cab!important;
  box-shadow:0 0 0 7px rgba(11,92,171,.10)!important;
  transition:transform .2s var(--ease,ease), box-shadow .2s var(--ease,ease)!important;
}
.page-about .timeline .timeline-item:hover::after{
  transform:translateY(-50%) scale(1.08)!important;
  box-shadow:0 0 0 10px rgba(11,92,171,.13)!important;
}
.page-about .timeline .timeline-item:first-of-type::before{
  top:50%!important;
}
.page-about .timeline .timeline-item:last-of-type::before{
  bottom:50%!important;
}
.page-about .timeline .timeline-year,
.page-about .timeline span.timeline-year{
  position:relative!important;
  z-index:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:10px 18px!important;
  margin:0!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#f8fbff,#eef4fa)!important;
  box-shadow:inset 0 0 0 1px rgba(11,92,171,.16), 0 8px 20px rgba(2,12,24,.04)!important;
  color:#0b5cab!important;
  font-family:'Manrope',sans-serif!important;
  font-size:1.45rem!important;
  font-weight:850!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
}
.page-about .timeline .timeline-copy,
.page-about .timeline p.timeline-copy{
  position:relative!important;
  z-index:1!important;
  margin:0!important;
  padding:18px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#34485a!important;
  line-height:1.72!important;
}
@media(max-width:760px){
  .page-about .timeline{padding:30px 20px 34px!important;border-radius:18px!important;}
  .page-about .timeline h2{font-size:1.45rem!important;margin-bottom:18px!important;}
  .page-about .timeline .timeline-item{
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
    padding:18px 0 20px 34px!important;
  }
  .page-about .timeline .timeline-item::before{left:8px!important;}
  .page-about .timeline .timeline-item::after{left:0!important;top:24px!important;transform:none!important;width:18px!important;height:18px!important;border-width:4px!important;}
  .page-about .timeline .timeline-item:hover::after{transform:scale(1.05)!important;}
  .page-about .timeline .timeline-item:first-of-type::before{top:24px!important;}
  .page-about .timeline .timeline-item:last-of-type::before{bottom:auto!important;height:24px!important;}
  .page-about .timeline .timeline-year,
  .page-about .timeline span.timeline-year{font-size:1.08rem!important;white-space:normal!important;min-height:44px!important;padding:9px 16px!important;justify-self:start!important;}
  .page-about .timeline .timeline-copy,
  .page-about .timeline p.timeline-copy{padding:6px 0 0!important;font-size:.92rem!important;line-height:1.72!important;}
}

/* Knowledge & Updates: keep dynamic article cards visually consistent after Cloudflare KV loads. */
.page-insights .insight-list{
  display:grid!important;
  gap:18px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.page-insights .insight-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(190px,250px) minmax(0,1fr)!important;
  gap:0!important;
  padding:22px!important;
  border:1px solid rgba(18,44,67,.10)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#fff,#f8fbfd)!important;
  color:var(--text,#101820)!important;
  text-decoration:none!important;
  box-shadow:0 14px 34px rgba(2,12,24,.06)!important;
  overflow:hidden!important;
  transition:transform .2s var(--ease,ease), box-shadow .2s var(--ease,ease), border-color .2s var(--ease,ease)!important;
}
.page-insights .insight-card:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(11,92,171,.24)!important;
  box-shadow:0 24px 52px rgba(2,12,24,.10)!important;
}
.page-insights .insight-card::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:4px!important;
  border-radius:22px 0 0 22px!important;
  background:linear-gradient(180deg,#8fc3e8,#0b5cab)!important;
  box-shadow:none!important;
  opacity:1!important;
}
.page-insights .insight-thumb{
  width:100%!important;
  height:164px!important;
  border-radius:16px!important;
  border:1px solid rgba(18,44,67,.10)!important;
  overflow:hidden!important;
  background:#eef4f8!important;
}
.page-insights .insight-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.page-insights .insight-card.no-thumb{grid-template-columns:1fr!important;}
.page-insights .insight-card.no-thumb .insight-card-body{padding-left:14px!important;}
.page-insights .insight-card-body{padding:4px 4px 4px 26px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;}
.page-insights .insight-card-body .content-meta,
.page-insights .content-meta{color:#6f8397!important;text-transform:uppercase!important;letter-spacing:.055em!important;font-size:.74rem!important;font-weight:800!important;}
.page-insights .insight-card-body h3{margin:10px 0 10px!important;color:#102033!important;font-size:1.22rem!important;line-height:1.34!important;}
.page-insights .insight-card-body p{margin:0!important;color:#506375!important;line-height:1.68!important;font-size:.94rem!important;}
.page-insights .insight-card-body strong{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-top:18px!important;
  min-height:38px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#0b5cab,#1769a6)!important;
  color:#fff!important;
  border:1px solid rgba(11,92,171,.14)!important;
  box-shadow:0 10px 24px rgba(11,92,171,.20)!important;
  font-size:.84rem!important;
  font-weight:850!important;
  line-height:1!important;
}
.page-insights .insight-card:hover .insight-card-body strong{background:linear-gradient(135deg,#1769a6,#1f7bc7)!important;color:#fff!important;}

/* Dynamic FAQ cards: style the injected details elements, not only the static wrapper. */
.page-insights #dynamicFaqs{display:grid!important;gap:14px!important;width:100%!important;}
.page-insights #dynamicFaqs details,
[data-content-preview="faqs"] .preview-faq,
.preview-faq{
  position:relative!important;
  border:1px solid rgba(18,44,67,.10)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 26px rgba(2,12,24,.05)!important;
  padding:18px 22px!important;
  overflow:hidden!important;
}
.page-insights #dynamicFaqs details[open],
.preview-faq[open]{border-color:rgba(11,92,171,.22)!important;box-shadow:0 16px 36px rgba(11,92,171,.08)!important;}
.page-insights #dynamicFaqs summary,
.preview-faq summary{
  cursor:pointer!important;
  color:#102033!important;
  font-weight:850!important;
  line-height:1.48!important;
  padding-right:22px!important;
}
.page-insights #dynamicFaqs summary::marker,
.preview-faq summary::marker{color:#0b5cab!important;}
.page-insights #dynamicFaqs .faq-answer,
.preview-faq .faq-answer{margin-top:12px!important;color:#52687b!important;line-height:1.72!important;font-size:.94rem!important;}
.page-insights #dynamicFaqs .faq-answer p,
.preview-faq .faq-answer p{margin:0 0 10px!important;}
.page-insights #dynamicFaqs .faq-answer p:last-child,
.preview-faq .faq-answer p:last-child{margin-bottom:0!important;}

/* Article detail pages: consistent readable cards whether content comes from KV or fallback JSON. */
.page-article .article-layout{max-width:1120px!important;display:grid!important;grid-template-columns:minmax(0,760px) 300px!important;gap:26px!important;align-items:start!important;}
.page-article .article-cover{grid-column:1 / -1!important;margin:0!important;border-radius:24px!important;overflow:hidden!important;border:1px solid rgba(18,44,67,.10)!important;box-shadow:0 20px 52px rgba(2,12,24,.08)!important;}
.page-article .article-cover img{display:block!important;width:100%!important;max-height:440px!important;object-fit:cover!important;}
.page-article .article-body{
  margin:0!important;
  padding:40px 42px!important;
  border:1px solid rgba(18,44,67,.10)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(2,12,24,.06)!important;
  color:#34485a!important;
  line-height:1.82!important;
}
.page-article .article-cta{position:sticky!important;top:104px!important;border:1px solid rgba(11,92,171,.14)!important;border-radius:22px!important;background:linear-gradient(180deg,#fff,#f3f8fd)!important;box-shadow:0 16px 38px rgba(2,12,24,.07)!important;}
.page-article .article-not-found{border-radius:24px!important;background:#fff!important;box-shadow:0 18px 44px rgba(2,12,24,.08)!important;}
.loading-card{background:#fff!important;border:1px solid rgba(18,44,67,.10)!important;box-shadow:0 16px 38px rgba(2,12,24,.08)!important;}
@media(max-width:860px){
  .page-insights .insight-card{grid-template-columns:1fr!important;padding:20px!important;}
  .page-insights .insight-card-body{padding:18px 4px 2px 12px!important;}
  .page-insights .insight-thumb{height:190px!important;}
  .page-article .article-layout{grid-template-columns:1fr!important;}
  .page-article .article-cta{position:relative!important;top:auto!important;}
  .page-article .article-body{padding:28px 24px!important;border-radius:20px!important;}
}
@media(max-width:520px){
  .page-insights .insight-thumb{height:150px!important;}
  .page-insights .insight-card-body h3{font-size:1.08rem!important;}
  .page-insights #dynamicFaqs details,
  .preview-faq{padding:16px 17px!important;border-radius:16px!important;}
}

/* ─────────────────────────────────────────────────────────────
   v70 round-5 premium polish + consistency pass
   Cloudflare Pages free friendly. No external JS, no paid tools.
   ───────────────────────────────────────────────────────────── */

/* Homepage: transparent header at hero top, frosted white after scroll. */
.page-home .site-header:not(.scrolled){
  background:transparent!important;
  border-bottom-color:rgba(255,255,255,.10)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.page-home .site-header:not(.scrolled) .main-nav a,
.page-home .site-header:not(.scrolled) .lang-current,
.page-home .site-header:not(.scrolled) .nav-cta{
  color:rgba(255,255,255,.92)!important;
}
.page-home .site-header:not(.scrolled) .main-nav a.active,
.page-home .site-header:not(.scrolled) .main-nav a:hover{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
}
.page-home .site-header:not(.scrolled) .lang-current{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.22)!important;
}
.page-home .site-header:not(.scrolled) .mobile-menu{color:#fff!important;background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.18)!important;}
.page-home .site-header:not(.scrolled) .nav-cta{
  border-color:rgba(255,255,255,.35)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.18)!important;
}
.site-header,.nav-wrap,.brand-mark,.main-nav a,.lang-current,.nav-cta{
  transition:background .30s var(--ease,ease),border-color .30s var(--ease,ease),box-shadow .30s var(--ease,ease),color .24s var(--ease,ease),backdrop-filter .30s var(--ease,ease),height .30s var(--ease,ease),width .30s var(--ease,ease),transform .24s var(--ease,ease)!important;
}

/* Hero headline: polished titanium-light gradient on the emphasized line. */
.page-home .hero h1 em,
.page-home .hero h1 em .hero-word{
  background:linear-gradient(105deg,#ffffff 0%,#9ed2ff 45%,#d7f2ff 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:transparent!important;
  font-style:italic!important;
}

/* Mid-page deep section: breaks the white/grey rhythm and reinforces buyer trust. */
.differentiator-section{
  position:relative;
  overflow:hidden;
  padding:74px 0 78px;
  background:radial-gradient(circle at 82% 20%,rgba(75,147,210,.20),transparent 34%),linear-gradient(135deg,#0b1f3a 0%,#182332 58%,#102033 100%);
  color:#fff;
}
.differentiator-section::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.85),rgba(0,0,0,.55));
  pointer-events:none;
}
.differentiator-section::after{
  content:"";
  position:absolute;
  left:8%;right:8%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(143,195,232,.45),rgba(255,255,255,.20),transparent);
}
.diff-header{position:relative;z-index:1;text-align:center;max-width:760px;margin:0 auto 44px;}
.diff-label{color:#a8ddff!important;border-color:rgba(168,221,255,.24)!important;background:rgba(168,221,255,.08)!important;}
.diff-title{margin:12px auto 0;color:#fff!important;font-size:clamp(1.65rem,3vw,2.18rem)!important;font-weight:850!important;line-height:1.22!important;letter-spacing:-.04em!important;}
.diff-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.diff-card{position:relative;overflow:hidden;padding:30px 28px;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.035));box-shadow:0 24px 64px rgba(0,0,0,.18);transition:transform .22s var(--ease,ease),border-color .22s var(--ease,ease),background .22s var(--ease,ease),box-shadow .22s var(--ease,ease);}
.diff-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#8fc3e8,#0b5cab,#00c9b1);opacity:.82;}
.diff-card:hover{transform:translateY(-4px);border-color:rgba(143,195,232,.36);background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));box-shadow:0 30px 76px rgba(0,0,0,.24);}
.diff-icon{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:#a8ddff;background:rgba(143,195,232,.12);border:1px solid rgba(143,195,232,.18);}
.diff-card h3{margin:0 0 12px;color:#fff!important;font-size:1.02rem!important;font-weight:850!important;line-height:1.34!important;letter-spacing:-.025em!important;}
.diff-card p{margin:0;color:rgba(219,235,247,.78)!important;font-size:.92rem!important;line-height:1.72!important;}
@media(max-width:900px){.diff-grid{grid-template-columns:1fr;gap:16px}.differentiator-section{padding:54px 0}.diff-card{padding:26px 24px}}

/* Product cards: final top-accent system and editorial photo hover. */
.product-card{position:relative!important;overflow:hidden!important;}
.product-card .product-accent,
.product-accent,
.product-card.b .product-accent,
.product-card.g .product-accent,
.product-card.o .product-accent,
.product-card.p .product-accent{
  position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:auto!important;width:100%!important;height:4px!important;border-radius:20px 20px 0 0!important;background:linear-gradient(90deg,#0b5cab,#8fc3e8,#00c9b1)!important;opacity:.96!important;z-index:2!important;
}
.product-photo{position:relative!important;overflow:hidden!important;}
.product-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,92,171,0) 48%,rgba(11,92,171,.16) 100%);opacity:0;transition:opacity .28s var(--ease,ease);pointer-events:none;}
.product-card:hover .product-photo::after{opacity:1;}

/* Buttons and links: small movements, not noisy animation. */
.btn-primary,.nav-cta{position:relative;overflow:hidden;isolation:isolate;}
.btn-primary::after,.nav-cta::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.16) 50%,transparent 100%);transform:translateX(-112%);transition:transform .48s var(--ease,ease);z-index:-1;}
.btn-primary:hover::after,.nav-cta:hover::after{transform:translateX(112%);}
.btn-primary,.btn-secondary,.btn-outline,.product-link,.mini-chip,.anchor-chip{transition:transform .20s var(--ease,ease),box-shadow .20s var(--ease,ease),background .20s var(--ease,ease),border-color .20s var(--ease,ease),color .20s var(--ease,ease)!important;}
.btn-primary:hover,.btn-secondary:hover,.btn-outline:hover{transform:translateY(-1px);}
.btn-primary:hover .product-link-arrow,.product-link:hover .product-link-arrow{transform:translateX(4px);}
.product-link-arrow{display:inline-block;transition:transform .20s var(--ease,ease);}

/* Footer: refined separator and SVG icon buttons. */
.site-footer{position:relative!important;}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(75,147,210,.52) 20%,rgba(255,255,255,.34) 50%,rgba(75,147,210,.52) 80%,transparent 100%);}
.footer-social-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;border-radius:999px!important;background:rgba(255,255,255,.08)!important;color:#dcecff!important;border:1px solid rgba(255,255,255,.14)!important;transition:transform .2s var(--ease,ease),background .2s var(--ease,ease),border-color .2s var(--ease,ease)!important;}
.footer-social-btn:hover{transform:translateY(-2px);background:rgba(143,195,232,.16)!important;border-color:rgba(143,195,232,.36)!important;color:#fff!important;}
.footer-social-btn svg{display:block;width:18px;height:18px;}

/* Contact response note: directly below submit, with a subtle live dot. */
.form-actions{align-items:flex-start!important;}
.form-response-note{order:2;flex:1 1 280px;display:flex!important;align-items:flex-start;gap:8px;margin:10px 0 0!important;color:#5e7898!important;font-size:12.5px!important;line-height:1.55!important;max-width:760px!important;}
.form-note{order:3;flex-basis:100%;}
.response-dot{width:7px;height:7px;margin-top:.48em;border-radius:50%;background:#22a46e;box-shadow:0 0 0 0 rgba(34,164,110,.42);flex-shrink:0;animation:tjnePulseDot 2.4s ease infinite;}
@keyframes tjnePulseDot{0%{box-shadow:0 0 0 0 rgba(34,164,110,.42)}70%{box-shadow:0 0 0 8px rgba(34,164,110,0)}100%{box-shadow:0 0 0 0 rgba(34,164,110,0)}}

/* Insights filter: works with Cloudflare KV-loaded content and fallback JSON. */
.insight-filter-bar{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 18px!important;align-items:center;}
.insight-filter{appearance:none;border:1px solid rgba(18,44,67,.12);background:#fff;color:#41566a;border-radius:999px;padding:9px 14px;font-size:.82rem;font-weight:800;letter-spacing:.01em;cursor:pointer;box-shadow:0 8px 18px rgba(2,12,24,.04);transition:background .2s var(--ease,ease),color .2s var(--ease,ease),border-color .2s var(--ease,ease),transform .2s var(--ease,ease),box-shadow .2s var(--ease,ease);}
.insight-filter:hover{transform:translateY(-1px);border-color:rgba(11,92,171,.28);box-shadow:0 12px 26px rgba(2,12,24,.07);}
.insight-filter.active{background:linear-gradient(135deg,#0b5cab,#1769a6);border-color:rgba(11,92,171,.18);color:#fff;box-shadow:0 12px 28px rgba(11,92,171,.18);}

/* Reusable future photo frame: drop real product photos here later without reworking layout. */
.photo-hero-frame{position:relative;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#0d2a40 0%,#1a4a6e 100%);border:1px solid rgba(143,195,232,.18);box-shadow:0 22px 60px rgba(2,12,24,.16);}
.photo-hero-frame::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.026) 0 1px,transparent 1px 12px);pointer-events:none;}
.photo-hero-frame img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .8s var(--ease,ease);}
.photo-hero-frame:hover img{transform:scale(1.025);}

@media(max-width:760px){
  .page-home .site-header:not(.scrolled){background:rgba(11,31,58,.84)!important;backdrop-filter:blur(16px) saturate(1.4)!important;-webkit-backdrop-filter:blur(16px) saturate(1.4)!important;}
  .form-response-note{flex-basis:100%;}
}
@media(prefers-reduced-motion:reduce){.response-dot{animation:none}.btn-primary::after,.nav-cta::after{display:none}}


/* ============================================================
   Round 6 — restrained motion / lively details
   Purpose: make the site feel more alive without becoming noisy.
   Cloudflare Pages free compatible: CSS + vanilla JS only.
   ============================================================ */
:root{
  --tjne-motion-blue:#8fc3e8;
  --tjne-motion-teal:#00c9b1;
}

/* A very light progress line gives long pages a sense of motion and orientation. */
.tjne-scroll-progress{
  position:fixed;
  top:0;
  left:0;
  height:2px;
  width:0;
  z-index:1200;
  background:linear-gradient(90deg,var(--tjne-motion-teal),var(--tjne-motion-blue),#fff);
  box-shadow:0 0 18px rgba(143,195,232,.34);
  transform-origin:left center;
  pointer-events:none;
}

/* Home hero: subtle ambient movement, not decorative particles. */
.page-home .hero-glow{
  animation:tjneAmbientDrift 16s ease-in-out infinite alternate;
}
.page-home .hero-img-wrap{
  isolation:isolate;
}
.page-home .hero-img-wrap::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:2;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.0) 38%,rgba(255,255,255,.18) 50%,rgba(255,255,255,0) 62%,transparent 100%);
  transform:translateX(-120%);
  opacity:.0;
}
.page-home .hero-img-wrap:hover::before{
  animation:tjneHeroSheen 1.15s var(--ease,ease) 1;
  opacity:1;
}
@keyframes tjneAmbientDrift{
  0%{transform:translate3d(-1.5%,0,0) scale(1);opacity:.82;}
  100%{transform:translate3d(2.2%,-1.4%,0) scale(1.035);opacity:1;}
}
@keyframes tjneHeroSheen{
  from{transform:translateX(-120%);}
  to{transform:translateX(120%);}
}

/* Lively but restrained hover spotlight for cards across all pages. */
.tjne-card-dynamic{
  position:relative!important;
  overflow:hidden!important;
  transform-style:preserve-3d;
}
.tjne-hover-glow{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(143,195,232,.18),rgba(0,201,177,.075) 18%,transparent 42%);
  transition:opacity .22s var(--ease,ease);
}
.tjne-card-dynamic:hover .tjne-hover-glow{opacity:1;}
.tjne-card-dynamic > :not(.tjne-hover-glow){position:relative;z-index:1;}
.tjne-card-dynamic:hover{
  border-color:rgba(11,92,171,.22)!important;
}

/* Add a subtle underline motion to text links and content cards. */
.product-link,
.preview-card strong,
.insight-card strong,
.footer-links a,
.article-body a,
.breadcrumb a{
  background-image:linear-gradient(currentColor,currentColor);
  background-position:0 100%;
  background-repeat:no-repeat;
  background-size:0 1px;
  transition:background-size .22s var(--ease,ease),color .2s var(--ease,ease),transform .2s var(--ease,ease)!important;
}
.product-link:hover,
.preview-card:hover strong,
.insight-card:hover strong,
.footer-links a:hover,
.article-body a:hover,
.breadcrumb a:hover{
  background-size:100% 1px;
}

/* FAQ / details blocks: give opening content a softer feel. */
.preview-faq summary,
.page-insights #dynamicFaqs summary{
  list-style:none;
}
.preview-faq summary::-webkit-details-marker,
.page-insights #dynamicFaqs summary::-webkit-details-marker{display:none;}
.preview-faq summary::after,
.page-insights #dynamicFaqs summary::after{
  content:"+";
  position:absolute;
  right:18px;
  top:18px;
  width:22px;
  height:22px;
  border-radius:999px;
  display:grid;
  place-items:center;
  font-weight:900;
  font-size:14px;
  color:var(--blue,#0b5cab);
  background:rgba(11,92,171,.07);
  transition:transform .22s var(--ease,ease),background .22s var(--ease,ease);
}
.preview-faq[open] summary::after,
.page-insights #dynamicFaqs details[open] summary::after{
  content:"–";
  transform:rotate(180deg);
  background:rgba(11,92,171,.12);
}
.preview-faq .faq-answer,
.page-insights #dynamicFaqs .faq-answer{
  animation:tjneFaqIn .22s var(--ease,ease) both;
}
@keyframes tjneFaqIn{
  from{opacity:0;transform:translateY(-4px);}
  to{opacity:1;transform:translateY(0);}
}

/* Small chip/buttons: make them feel clickable without making them loud. */
.mini-chip,
.anchor-chip,
.app-product-chip,
.mini-chip-row a,
.badge-row span,
.chip-grid span,
.insight-filter{
  position:relative;
  overflow:hidden;
}
.mini-chip::before,
.anchor-chip::before,
.app-product-chip::before,
.mini-chip-row a::before,
.badge-row span::before,
.chip-grid span::before,
.insight-filter::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent,rgba(143,195,232,.18),transparent);
  transform:translateX(-110%);
  transition:transform .42s var(--ease,ease);
  pointer-events:none;
}
.mini-chip:hover::before,
.anchor-chip:hover::before,
.app-product-chip:hover::before,
.mini-chip-row a:hover::before,
.badge-row span:hover::before,
.chip-grid span:hover::before,
.insight-filter:hover::before{transform:translateX(110%);}

/* Page heroes on inner pages get a soft moving light field, replacing static flatness. */
body:not(.page-home) .page-hero .hero-bg-lines{
  animation:tjneGridFloat 18s linear infinite;
}
@keyframes tjneGridFloat{
  from{background-position:0 0,0 0;}
  to{background-position:56px 56px,56px 56px;}
}

/* Keep everything restrained for users who prefer reduced motion. */
@media(prefers-reduced-motion:reduce){
  .tjne-scroll-progress{display:none!important;}
  .page-home .hero-glow,
  .page-home .hero-img-wrap:hover::before,
  body:not(.page-home) .page-hero .hero-bg-lines,
  .preview-faq .faq-answer,
  .page-insights #dynamicFaqs .faq-answer{
    animation:none!important;
  }
  .tjne-hover-glow{display:none!important;}
}

/* ─────────────────────────────────────────────────────────────
   v70 round-6.1 header readability fix
   The transparent homepage header looked like white text on a white band
   because the header occupies its own flow area above the hero. Keep the
   premium frosted look, but restore dark readable navigation text.
   Applies to every language version through the shared stylesheet.
   ───────────────────────────────────────────────────────────── */
.page-home .site-header:not(.scrolled){
  background:rgba(255,255,255,.94)!important;
  border-bottom-color:rgba(15,42,72,.08)!important;
  box-shadow:0 10px 28px rgba(11,31,58,.06)!important;
  backdrop-filter:blur(16px) saturate(1.25)!important;
  -webkit-backdrop-filter:blur(16px) saturate(1.25)!important;
}
.page-home .site-header:not(.scrolled) .main-nav > a,
.page-home .site-header:not(.scrolled) .lang-current{
  color:var(--text-2,#2c4560)!important;
}
.page-home .site-header:not(.scrolled) .main-nav > a.active{
  color:var(--blue,#0b5cab)!important;
  background:var(--blue-pale,#e8f3ff)!important;
}
.page-home .site-header:not(.scrolled) .main-nav > a:hover,
.page-home .site-header:not(.scrolled) .lang-current:hover{
  color:var(--ink,#102033)!important;
  background:var(--frost,#eef4f8)!important;
}
.page-home .site-header:not(.scrolled) .lang-current{
  background:#fff!important;
  border-color:var(--line,#dce8f4)!important;
}
.page-home .site-header:not(.scrolled) .nav-cta{
  color:#fff!important;
  background:var(--blue,#0b5cab)!important;
  border-color:transparent!important;
  box-shadow:0 14px 30px rgba(11,92,171,.22)!important;
}
.page-home .site-header:not(.scrolled) .nav-cta:hover{
  color:#fff!important;
  background:var(--blue-2,#0a4f96)!important;
}
.page-home .site-header:not(.scrolled) .mobile-menu{
  color:var(--text,#102033)!important;
  background:#fff!important;
  border-color:var(--line,#dce8f4)!important;
}

/* Mobile dropdown must always be dark text on white, including the home top state. */
@media(max-width:1100px){
  .page-home .site-header:not(.scrolled) .main-nav.open,
  .site-header .main-nav.open{
    background:#fff!important;
    color:var(--text,#102033)!important;
    border:1px solid var(--line,#dce8f4)!important;
    box-shadow:0 18px 46px rgba(11,31,58,.16)!important;
  }
  .page-home .site-header:not(.scrolled) .main-nav.open > a,
  .site-header .main-nav.open > a{
    color:var(--text-2,#2c4560)!important;
    background:transparent!important;
  }
  .page-home .site-header:not(.scrolled) .main-nav.open > a.active,
  .site-header .main-nav.open > a.active{
    color:var(--blue,#0b5cab)!important;
    background:var(--blue-pale,#e8f3ff)!important;
    font-weight:700!important;
  }
  .page-home .site-header:not(.scrolled) .main-nav.open > a:hover,
  .site-header .main-nav.open > a:hover{
    color:var(--ink,#102033)!important;
    background:var(--frost,#eef4f8)!important;
  }
  .page-home .site-header:not(.scrolled) .mobile-language-row > span,
  .site-header .main-nav.open .mobile-language-row > span{
    color:var(--muted,#5e7898)!important;
  }
  .page-home .site-header:not(.scrolled) .mobile-language-row a,
  .site-header .main-nav.open .mobile-language-row a{
    color:var(--text-2,#2c4560)!important;
    background:#fff!important;
    border-color:var(--line,#dce8f4)!important;
  }
  .page-home .site-header:not(.scrolled) .mobile-language-row a.active,
  .site-header .main-nav.open .mobile-language-row a.active{
    color:var(--blue,#0b5cab)!important;
    background:var(--blue-pale,#e8f3ff)!important;
    border-color:var(--blue-bg,#c8daed)!important;
  }
}


/* ── Round 7 trust-content upgrade ── */
.metric-svg,
.page-about .about-metrics .metric-svg,
.about-card .about-metrics .metric-svg{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:38px!important;height:38px!important;border-radius:12px!important;
  background:linear-gradient(135deg, rgba(11,92,171,.10), rgba(75,147,210,.07))!important;
  color:var(--blue)!important;margin-bottom:12px!important;font-size:0!important;
  box-shadow:inset 0 0 0 1px rgba(11,92,171,.08)!important;
}
.metric-svg svg{width:20px!important;height:20px!important;display:block!important;stroke:currentColor!important;}

.spec-range-section{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);position:relative;overflow:hidden;}
.spec-range-section::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(11,92,171,.025) 1px, transparent 1px),linear-gradient(90deg, rgba(11,92,171,.025) 1px, transparent 1px);background-size:52px 52px;pointer-events:none;}
.spec-range-section .container{position:relative;z-index:1;}
.spec-range-heading{max-width:820px;margin-left:auto;margin-right:auto;}
.spec-range-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px;}
.spec-range-card{position:relative;overflow:hidden;background:rgba(255,255,255,.92);border:1px solid rgba(190,210,230,.9);border-radius:18px;padding:22px 20px;box-shadow:0 10px 30px rgba(11,92,171,.06);transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease);}
.spec-range-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--blue),#7bc7ff);opacity:.9;}
.spec-range-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(11,92,171,.11);border-color:rgba(75,147,210,.5);}
.spec-range-label{font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.075em;color:var(--blue);margin-bottom:9px;}
.spec-range-value{font-family:'JetBrains Mono','SFMono-Regular',Consolas,monospace;font-size:1.02rem;font-weight:600;color:var(--ink);line-height:1.35;margin-bottom:6px;}
.spec-range-note{font-size:.79rem;color:var(--slate);line-height:1.55;}
.spec-range-disclaimer{display:flex;align-items:center;justify-content:center;gap:8px;margin:20px 0 0;color:var(--slate);font-size:.82rem;}
.spec-range-disclaimer span{width:8px;height:8px;border-radius:999px;background:#22a46e;box-shadow:0 0 0 4px rgba(34,164,110,.12);}

.project-briefs-section{background:#fff;}
.project-brief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px;}
.project-brief-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 24px;box-shadow:0 10px 34px rgba(17,36,58,.06);overflow:hidden;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease);}
.project-brief-card::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--blue),#7bc7ff);}
.project-brief-card:hover{transform:translateY(-3px);box-shadow:0 16px 44px rgba(11,92,171,.11);border-color:rgba(75,147,210,.42);}
.brief-meta{display:inline-flex;margin-bottom:12px;padding:5px 9px;border-radius:999px;background:rgba(11,92,171,.07);color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.03em;}
.project-brief-card h3{font-size:1.02rem;margin-bottom:10px;color:var(--ink);}
.project-brief-card p{color:var(--text-2);font-size:.9rem;line-height:1.72;margin:0;}

.badge.download{background:rgba(34,164,110,.10)!important;color:#17734d!important;border-color:rgba(34,164,110,.22)!important;}
.download-item.instant-download{border-color:rgba(34,164,110,.24)!important;background:linear-gradient(135deg,#fff 0%,#f4fbf8 100%)!important;}
.download-item.instant-download:hover{box-shadow:0 12px 32px rgba(34,164,110,.12)!important;}

.thank-you-hero .page-hero-inner{max-width:820px;text-align:center;}
.thank-check{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:rgba(34,164,110,.13);color:#1b8d60;box-shadow:0 0 0 10px rgba(34,164,110,.06);}
.thank-next-card{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:34px;text-align:center;}
.thank-next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0;}
.thank-next-grid a{display:flex;align-items:center;justify-content:center;min-height:72px;border:1px solid var(--line);border-radius:16px;background:var(--frost);color:var(--ink);font-weight:700;text-decoration:none;transition:transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease);}
.thank-next-grid a:hover{transform:translateY(-2px);border-color:rgba(75,147,210,.5);box-shadow:0 12px 28px rgba(11,92,171,.09);}
.page-thank-you .sticky-cta{display:none!important;}

@media(max-width:900px){.spec-range-grid,.project-brief-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.thank-next-grid{grid-template-columns:1fr;}}
@media(max-width:560px){.spec-range-grid,.project-brief-grid{grid-template-columns:1fr;}.spec-range-card,.project-brief-card{padding:20px 18px;}}

/* Round 10: brand-entity visibility and multilingual SEO support */
.footer-brand .company-legal-note{margin-top:10px!important;font-size:.74rem!important;line-height:1.65!important;color:rgba(255,255,255,.48)!important;max-width:560px!important}
.company-identity-section{padding-top:28px!important;padding-bottom:28px!important;background:linear-gradient(180deg,rgba(238,246,252,.72),rgba(255,255,255,.92))!important}
.company-identity-card{border:1px solid rgba(24,64,94,.12);border-radius:24px;background:rgba(255,255,255,.86);box-shadow:0 20px 45px rgba(24,64,94,.08);padding:26px}
.company-identity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:12px}
.company-identity-grid div{padding:14px 16px;border-radius:16px;background:rgba(248,252,255,.92);border:1px solid rgba(24,64,94,.08)}
.company-identity-grid span{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#6a7a89);margin-bottom:6px}
.company-identity-grid strong{display:block;font-size:.94rem;line-height:1.45;color:var(--navy,#0b2038);font-weight:800}
@media(max-width:900px){.company-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.company-identity-card{padding:20px}.company-identity-grid{grid-template-columns:1fr}.footer-brand .company-legal-note{max-width:100%!important}}


/* Round 13: make About-page company identity less like a keyword block and more like a corporate note */
.company-identity-section.identity-strip-section{padding-top:16px!important;padding-bottom:14px!important;background:linear-gradient(180deg,rgba(239,247,252,.62),rgba(255,255,255,.9))!important}
.identity-strip{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 22px;border:1px solid rgba(24,64,94,.11);border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 14px 34px rgba(24,64,94,.065)}
.identity-strip-copy{min-width:0;max-width:760px}
.identity-strip-copy .section-kicker{margin:0 0 6px!important;font-size:.72rem!important;letter-spacing:.12em!important;color:#2f74b9!important}
.identity-strip-copy p:last-child{margin:0;color:#36506a;font-size:.94rem;line-height:1.65}
.identity-strip-copy strong{color:#123e66;font-weight:800}
.identity-strip-copy span{color:#4e6478}
.identity-strip-badges{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;flex:0 0 auto}
.identity-strip-badges span{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid rgba(18,101,168,.16);background:linear-gradient(180deg,rgba(243,249,255,.96),rgba(232,243,252,.9));color:#164c79;font-size:.78rem;font-weight:800;white-space:nowrap}
@media(max-width:760px){.identity-strip{align-items:flex-start;flex-direction:column;padding:16px 18px}.identity-strip-badges{justify-content:flex-start}.identity-strip-copy p:last-child{font-size:.9rem}}

/* ============================================================
   v70 Round15 VISUAL TRIAL — Premium Industrial Tech layer
   Purpose: temporary fashion / international style test.
   Rollback: remove this block only.
   ============================================================ */
:root{
  --tj15-ink:#071a2f!important;
  --tj15-navy:#092745!important;
  --tj15-blue:#0B5CAB!important;
  --tj15-blue-2:#1979C7!important;
  --tj15-cyan:#2BC7FF!important;
  --tj15-ice:#F4F9FD!important;
  --tj15-card:#FFFFFF!important;
  --tj15-line:rgba(11,92,171,.16)!important;
  --tj15-shadow:0 24px 70px rgba(7,26,47,.12)!important;
}
body{
  background:
    radial-gradient(circle at 8% 0%,rgba(43,199,255,.10),transparent 32%),
    linear-gradient(180deg,#F6FAFE 0%,#FFFFFF 44%,#F7FAFD 100%)!important;
  color:var(--tj15-ink)!important;
}
body::selection{background:rgba(43,199,255,.25);color:#061729;}

/* Header: lighter, premium glass, less flat corporate bar. */
.site-header{
  background:rgba(255,255,255,.82)!important;
  border-bottom:1px solid rgba(215,228,239,.72)!important;
  backdrop-filter:blur(22px) saturate(1.45)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.45)!important;
  box-shadow:0 12px 34px rgba(7,26,47,.055)!important;
}
.nav-wrap{height:76px!important;}
.brand-mark{filter:drop-shadow(0 6px 12px rgba(7,26,47,.06))!important;}
.main-nav a{
  border-radius:999px!important;
  color:#4B6075!important;
  font-weight:650!important;
  transition:background .22s ease,color .22s ease,transform .22s ease!important;
}
.main-nav a:hover{
  background:rgba(11,92,171,.075)!important;
  color:var(--tj15-blue)!important;
  transform:translateY(-1px)!important;
}
.main-nav a.active{
  background:linear-gradient(135deg,rgba(11,92,171,.11),rgba(43,199,255,.13))!important;
  color:#084D94!important;
  box-shadow:inset 0 0 0 1px rgba(11,92,171,.10)!important;
}
.nav-cta{
  border-radius:999px!important;
  background:linear-gradient(135deg,#0B5CAB 0%,#1979C7 70%,#2BC7FF 135%)!important;
  box-shadow:0 14px 30px rgba(11,92,171,.22)!important;
  border:1px solid rgba(255,255,255,.22)!important;
}
.nav-cta:hover{transform:translateY(-2px)!important;box-shadow:0 18px 38px rgba(11,92,171,.28)!important;}
.language-switcher .lang-current{
  border-radius:999px!important;
  border-color:rgba(11,92,171,.18)!important;
  background:rgba(255,255,255,.66)!important;
}

/* Homepage hero: more editorial, higher contrast, more 2026 tech feeling. */
.page-home .hero{
  min-height:760px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 78% 24%,rgba(43,199,255,.28),transparent 28%),
    radial-gradient(circle at 12% 28%,rgba(96,165,250,.18),transparent 25%),
    linear-gradient(135deg,#06172A 0%,#092745 48%,#0B3F6E 100%)!important;
}
.page-home .hero::before{
  bottom:-1px!important;
  height:150px!important;
  z-index:0!important;
  background:linear-gradient(180deg,rgba(6,23,42,0) 0%,rgba(246,250,254,.18) 52%,#F6FAFE 100%)!important;
}
.page-home .hero::after{
  content:''!important;
  position:absolute!important;
  inset:auto -18% -34% -18%!important;
  height:58%!important;
  background:radial-gradient(ellipse at center,rgba(43,199,255,.18),transparent 66%)!important;
  filter:blur(12px)!important;
  opacity:.88!important;
  pointer-events:none!important;
  z-index:0!important;
}
.page-home .hero-grid-bg{
  background-image:
    linear-gradient(rgba(255,255,255,.060) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.060) 1px,transparent 1px)!important;
  background-size:74px 74px!important;
  mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.88) 52%,transparent 100%)!important;
  opacity:.72!important;
}
.page-home .hero-glow{
  background:
    linear-gradient(110deg,rgba(6,23,42,.98) 0%,rgba(6,23,42,.74) 42%,rgba(6,23,42,.18) 100%),
    radial-gradient(circle at 78% 50%,rgba(43,199,255,.24),transparent 35%)!important;
}
.page-home .hero-inner{
  min-height:760px!important;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr)!important;
  gap:54px!important;
  align-items:center!important;
}
.page-home .hero-copy{
  padding:104px 0 114px!important;
  max-width:820px!important;
}
.page-home .hero-label{
  width:max-content!important;
  max-width:100%!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  color:#DDF5FF!important;
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(171,222,255,.24)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.12)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
.page-home .hero-label::before{
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:#2BC7FF!important;
  box-shadow:0 0 0 6px rgba(43,199,255,.14),0 0 18px rgba(43,199,255,.66)!important;
}
.page-home .hero h1{
  font-size:clamp(2.9rem,5.8vw,5.35rem)!important;
  line-height:.98!important;
  letter-spacing:-.057em!important;
  margin-bottom:30px!important;
  color:#FFFFFF!important;
  text-wrap:balance!important;
}
.page-home .hero h1 > span,
.page-home .hero h1 > em{white-space:normal!important;}
.page-home .hero h1 em,
.page-home .hero h1 em .hero-word{
  background:linear-gradient(90deg,#FFFFFF 0%,#BFE8FF 48%,#2BC7FF 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  filter:drop-shadow(0 18px 38px rgba(43,199,255,.14))!important;
}
.page-home .hero-lead{
  max-width:620px!important;
  color:rgba(236,248,255,.80)!important;
  font-size:clamp(1.03rem,1.22vw,1.18rem)!important;
  line-height:1.78!important;
  margin-bottom:38px!important;
}
.page-home .hero-actions{gap:14px!important;margin-bottom:42px!important;}
.btn,
.btn-primary,
.btn-secondary,
.btn-outline,
.app-cta,
.product-link,
.read-article-link,
.insight-action{
  border-radius:999px!important;
}
.page-home .hero-actions .btn,
.btn-primary,
.nav-cta{
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease!important;
}
.page-home .hero-actions .btn-primary,
.btn-primary{
  background:linear-gradient(135deg,#0B5CAB 0%,#1979C7 64%,#2BC7FF 132%)!important;
  color:#fff!important;
  box-shadow:0 18px 40px rgba(11,92,171,.26)!important;
  border:1px solid rgba(255,255,255,.16)!important;
}
.page-home .hero-actions .btn-primary:hover,
.btn-primary:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 24px 52px rgba(43,199,255,.26)!important;
}
.page-home .hero-actions .btn-outline{
  background:rgba(255,255,255,.07)!important;
  color:#ECF8FF!important;
  border:1px solid rgba(224,242,254,.28)!important;
  backdrop-filter:blur(10px)!important;
}
.page-home .hero-actions .btn-outline:hover{
  background:rgba(255,255,255,.13)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.42)!important;
}
.page-home .hero-tag{
  border-radius:999px!important;
  padding:8px 13px!important;
  color:rgba(236,248,255,.74)!important;
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(224,242,254,.15)!important;
  backdrop-filter:blur(8px)!important;
}
.page-home .hero-tag::before{background:#2BC7FF!important;box-shadow:0 0 12px rgba(43,199,255,.66)!important;}

/* Hero visual: premium product window instead of plain image column. */
.page-home .hero-visual-col{
  min-height:560px!important;
  border-radius:34px!important;
  overflow:visible!important;
  transform:translateZ(0)!important;
}
.page-home .hero-visual-col::before{
  left:-1px!important;
  width:1px!important;
  background:linear-gradient(180deg,transparent,rgba(191,232,255,.32),transparent)!important;
}
.page-home .hero-img-wrap,
.page-home .hero-showcase-frame{
  inset:0!important;
  border-radius:34px!important;
  overflow:hidden!important;
  border:1px solid rgba(224,242,254,.18)!important;
  box-shadow:0 38px 90px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.06) inset!important;
  background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.025))!important;
}
.page-home .hero-img-wrap::before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  background:
    linear-gradient(120deg,rgba(255,255,255,.18),transparent 24%,transparent 72%,rgba(43,199,255,.13)),
    radial-gradient(circle at 18% 18%,rgba(255,255,255,.20),transparent 26%)!important;
  pointer-events:none!important;
}
.page-home .hero-img-wrap::after{
  background:
    linear-gradient(90deg,rgba(6,23,42,.18),transparent 38%),
    linear-gradient(0deg,rgba(6,23,42,.32),transparent 46%)!important;
}
.page-home .hero-img-wrap img{
  filter:brightness(.98) saturate(1.08) contrast(1.04)!important;
  transform:scale(1.01)!important;
}
.page-home .hero-visual-col:hover .hero-img-wrap img{transform:scale(1.055)!important;}
.page-home .hero-iso-badge,
.page-home .hero-badge{
  border-radius:18px!important;
  background:rgba(7,26,47,.70)!important;
  border:1px solid rgba(224,242,254,.18)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(16px) saturate(1.35)!important;
  -webkit-backdrop-filter:blur(16px) saturate(1.35)!important;
}
.page-home .hero-badge-dot{background:#2BC7FF!important;box-shadow:0 0 0 6px rgba(43,199,255,.14),0 0 18px rgba(43,199,255,.58)!important;}

/* Section rhythm: more whitespace, more premium editorial layout. */
section{scroll-margin-top:92px;}
.section-header.center,
.section-heading,
.content-preview-heading{
  max-width:920px!important;
}
.section-title,
.page-hero h1,
.product-family h2,
.cta-card h2{
  letter-spacing:-.038em!important;
  text-wrap:balance!important;
}
.section-desc,
.section-header p,
.section-heading p{
  color:#62768B!important;
  line-height:1.78!important;
}
.label{
  color:#0B5CAB!important;
  font-weight:800!important;
}
.label::before{background:linear-gradient(90deg,#0B5CAB,#2BC7FF)!important;}

/* Cards: larger radius, softer shadows, clearer clickability. */
.product-card,
.app-card,
.res-card,
.preview-card,
.insight-card,
.capability-card,
.about-card,
.quality-features article,
.resource-grid article,
.contact-panel,
.contact-form,
.download-panel,
.screening-box,
.selection-box,
.info-panel{
  border-radius:24px!important;
  border:1px solid rgba(11,92,171,.13)!important;
  box-shadow:0 16px 44px rgba(7,26,47,.075)!important;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease,background .28s ease!important;
}
.product-card:hover,
.app-card:hover,
.res-card:hover,
.preview-card:hover,
.insight-card:hover,
.capability-card:hover,
.about-card:hover,
.quality-features article:hover,
.resource-grid article:hover{
  transform:translateY(-8px)!important;
  border-color:rgba(43,199,255,.42)!important;
  box-shadow:0 28px 70px rgba(7,26,47,.13)!important;
}
.product-card img,
.app-card img,
.preview-thumb img,
.insight-thumb img{
  transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .65s ease!important;
}
.product-card:hover img,
.app-card:hover img,
.preview-card:hover .preview-thumb img,
.insight-card:hover .insight-thumb img{
  transform:scale(1.055)!important;
  filter:saturate(1.08) contrast(1.03)!important;
}
.product-link,
.app-cta,
.preview-card-body strong,
.insight-action,
.read-article-link{
  background:linear-gradient(135deg,rgba(11,92,171,.10),rgba(43,199,255,.14))!important;
  color:#084D94!important;
  border:1px solid rgba(11,92,171,.15)!important;
  box-shadow:none!important;
}
.product-card:hover .product-link,
.app-card:hover .app-cta,
.preview-card:hover .preview-card-body strong,
.insight-card:hover .insight-action,
.read-article-link:hover{
  background:linear-gradient(135deg,#0B5CAB,#1979C7)!important;
  color:#fff!important;
  border-color:rgba(11,92,171,.08)!important;
}

/* Stats / trust bar: more refined premium metrics. */
.stats-impact{
  position:relative!important;
  margin-top:-34px!important;
  z-index:4!important;
  background:transparent!important;
}
.stats-impact-inner{
  border-radius:26px!important;
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(11,92,171,.12)!important;
  box-shadow:0 24px 70px rgba(7,26,47,.11)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
.stat-impact-cell:not(:last-child){border-color:rgba(11,92,171,.10)!important;}
.stat-num,.stat-code{color:#0B5CAB!important;}
.stat-label{color:#607489!important;}

/* Page heroes: modern tech slab without overpromising. */
.page-hero{
  background:
    radial-gradient(circle at 78% 18%,rgba(43,199,255,.20),transparent 26%),
    linear-gradient(135deg,#071A2F 0%,#0A2A4A 58%,#0B4D86 100%)!important;
  overflow:hidden!important;
}
.page-hero::before{
  background-image:
    linear-gradient(rgba(255,255,255,.052) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.052) 1px,transparent 1px)!important;
  background-size:72px 72px!important;
  opacity:.58!important;
}
.page-hero h1{color:#fff!important;}
.page-hero p{color:rgba(236,248,255,.78)!important;}
.page-hero .label,.page-hero-label{color:#BFE8FF!important;}

/* Avoid the old neon-green feeling in common accents. */
.preview-faq summary::marker,
.faq-list summary::marker{color:#0B5CAB!important;}
.faq-list details[open]{border-color:rgba(43,199,255,.26)!important;box-shadow:0 18px 42px rgba(11,92,171,.08)!important;}
.hero-label::before,
.page-home .hero-label::before{background:#2BC7FF!important;}

@media(max-width:1180px){
  .page-home .hero-inner{grid-template-columns:1fr!important;gap:28px!important;min-height:auto!important;padding-top:40px!important;padding-bottom:54px!important;}
  .page-home .hero-copy{padding:86px 0 20px!important;}
  .page-home .hero-visual-col{min-height:430px!important;}
}
@media(max-width:760px){
  .nav-wrap{height:66px!important;}
  .site-header{background:rgba(255,255,255,.94)!important;}
  .page-home .hero{min-height:auto!important;}
  .page-home .hero-copy{padding:72px 0 14px!important;}
  .page-home .hero h1{font-size:clamp(2.24rem,10.2vw,3.35rem)!important;line-height:1.04!important;letter-spacing:-.045em!important;}
  .page-home .hero-lead{font-size:1rem!important;line-height:1.72!important;}
  .page-home .hero-actions{align-items:stretch!important;}
  .page-home .hero-actions .btn{width:100%!important;justify-content:center!important;}
  .page-home .hero-visual-col{min-height:320px!important;border-radius:24px!important;}
  .page-home .hero-img-wrap,.page-home .hero-showcase-frame{border-radius:24px!important;}
  .stats-impact{margin-top:0!important;}
  .stats-impact-inner{border-radius:20px!important;}
  .product-card,.app-card,.res-card,.preview-card,.insight-card,.capability-card{border-radius:20px!important;}
}

/* ============================================================
   v70 Round15.1 VISUAL TRIAL — Stats gradient contrast tweak
   Purpose: keep the soft gradient style, but make the metric colors
   clearer and easier to read on light backgrounds.
   Rollback: remove this block only.
   ============================================================ */
.stats-impact-inner{
  background:linear-gradient(135deg,rgba(255,255,255,.97) 0%,rgba(243,249,255,.94) 52%,rgba(235,247,255,.92) 100%)!important;
  border-color:rgba(11,92,171,.20)!important;
  box-shadow:0 24px 70px rgba(7,26,47,.14)!important;
}
.stats-impact-inner::before{
  opacity:.22!important;
}
.stats-impact .stat-impact-cell:not(:last-child){
  border-color:rgba(11,92,171,.18)!important;
}
.stats-impact .stat-num,
.stats-impact .stat-code,
.stats-impact .stat-num[data-target]{
  color:#084D94!important;
  background:linear-gradient(135deg,#073F83 0%,#0B5CAB 48%,#147AC7 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  text-shadow:0 10px 24px rgba(11,92,171,.08)!important;
}
.stats-impact .stat-label{
  color:#354C64!important;
  opacity:1!important;
}
@media(max-width:760px){
  .stats-impact .stat-num,
  .stats-impact .stat-code,
  .stats-impact .stat-num[data-target]{
    background:linear-gradient(135deg,#073B7C 0%,#0B5CAB 54%,#126FB8 100%)!important;
    -webkit-background-clip:text!important;
    background-clip:text!important;
    -webkit-text-fill-color:transparent!important;
  }
}

/* ============================================================
   v70 Round15.2 VISUAL TRIAL — Capability grid radius rollback
   Purpose:
   - Keep the Round15 visual trial overall.
   - Revert the homepage capability grid to the cleaner Round14 logic:
     outer container rounded, inner dividing lines square.
   - This avoids every small tile becoming separately rounded.
   ============================================================ */

.page-home .about-capabilities{
  border-radius:24px !important;
  overflow:hidden !important;
  gap:1px !important;
  padding:1px !important;
  background:#103B5A !important;
  border:1px solid rgba(255,255,255,.22) !important;
}

/* Inner cards should be square so the middle grid lines look clean. */
.page-home .about-capabilities .capability-card{
  border-radius:0 !important;
  box-shadow:none !important;
  border:0 !important;
  background:#174E75 !important;
}

/* Keep hover restrained and square, consistent with the grid. */
.page-home .about-capabilities .capability-card:hover{
  border-radius:0 !important;
  transform:none !important;
  background:linear-gradient(135deg,#1D638E 0%,#174E75 78%,#103B5A 118%) !important;
  box-shadow:none !important;
}

/* Prevent global card polish from re-rounding this specific homepage grid. */
.page-home .about-capabilities > .capability-card,
.page-home .about-capabilities > .capability-card:hover,
.page-home .about-capabilities > article,
.page-home .about-capabilities > article:hover{
  border-radius:0 !important;
}

/* Mobile/tablet: still keep the outer container rounded, not each item. */
@media (max-width:760px){
  .page-home .about-capabilities{
    border-radius:20px !important;
    overflow:hidden !important;
  }

  .page-home .about-capabilities .capability-card,
  .page-home .about-capabilities .capability-card:hover{
    border-radius:0 !important;
  }
}

/* ============================================================
   v70 Round15.3 VISUAL TRIAL — Refined cards, timeline, apps
   Source direction: refined premium industrial v2 test.
   Notes:
   - This is intentionally a CSS-first test layer.
   - It avoids replacing homepage hero HTML or rewriting multilingual text.
   - It keeps Round15.2 capability grid rollback intact.
   ============================================================ */

:root{
  --tjne-premium-navy:#0A2540;
  --tjne-premium-deep:#051C33;
  --tjne-premium-accent:#1A8FD8;
  --tjne-premium-accent-2:#2BC7FF;
  --tjne-premium-silver:#E5E9F0;
  --tjne-premium-light:#F8FAFD;
  --tjne-premium-text:#0F172A;
  --tjne-premium-muted:#64748B;
  --tjne-premium-shadow:0 10px 30px rgba(10,37,64,.09);
}

/* Product / application / insight card refinement.
   Keep the modern style, but avoid excessive bounce. */
.product-card,
.app-card,
.application-card,
.industrial-card,
.preview-card,
.insight-card,
.res-card{
  background:#fff !important;
  border-radius:22px !important;
  overflow:hidden !important;
  border:1px solid #E6ECF5 !important;
  box-shadow:var(--tjne-premium-shadow) !important;
  transition:
    transform .38s cubic-bezier(.22,.8,.22,1),
    box-shadow .38s cubic-bezier(.22,.8,.22,1),
    border-color .38s ease,
    background .38s ease !important;
}

.product-card:hover,
.app-card:hover,
.application-card:hover,
.industrial-card:hover,
.preview-card:hover,
.insight-card:hover,
.res-card:hover{
  transform:translateY(-10px) !important;
  box-shadow:0 30px 66px rgba(10,37,64,.155) !important;
  border-color:rgba(43,199,255,.46) !important;
}

.product-card img,
.app-card img,
.application-card img,
.preview-thumb img,
.insight-thumb img,
.insight-card img{
  transition:transform .72s cubic-bezier(.22,.8,.22,1), filter .72s ease !important;
}

.product-card:hover img,
.app-card:hover img,
.application-card:hover img,
.preview-card:hover .preview-thumb img,
.insight-card:hover img,
.insight-card:hover .insight-thumb img{
  transform:scale(1.07) !important;
  filter:saturate(1.06) contrast(1.03) !important;
}

/* Product detail cards / spec blocks. */
.spec-card,
.spec-grid article,
.product-spec-card,
.feature-card{
  background:#F8FAFD !important;
  border:1px solid #E2E8F0 !important;
  border-radius:16px !important;
  padding:22px !important;
  box-shadow:0 8px 22px rgba(10,37,64,.045) !important;
  transition:transform .28s ease, border-color .28s ease, background .28s ease, box-shadow .28s ease !important;
}

.spec-card:hover,
.spec-grid article:hover,
.product-spec-card:hover,
.feature-card:hover{
  background:#fff !important;
  border-color:rgba(43,199,255,.42) !important;
  transform:translateY(-4px) !important;
  box-shadow:0 16px 36px rgba(10,37,64,.085) !important;
}

/* CTA refinement: keep blue, premium, not neon green. */
.btn-primary,
.button-primary,
.product-card .product-link,
.app-card .app-cta,
.application-card .app-cta{
  border-radius:999px !important;
  font-weight:800 !important;
}

.btn-primary,
.button-primary{
  background:linear-gradient(135deg,#0B5CAB 0%,#1979C7 56%,#2BC7FF 140%) !important;
  color:#fff !important;
  border-color:rgba(11,92,171,.16) !important;
  box-shadow:0 14px 30px rgba(11,92,171,.18) !important;
}

.btn-primary:hover,
.button-primary:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 22px 45px rgba(11,92,171,.26) !important;
}

/* Homepage capability grid exception:
   keep the outer rounded + inner square layout requested in Round15.2. */
.page-home .about-capabilities,
.page-home .about-capabilities:hover{
  border-radius:24px !important;
  overflow:hidden !important;
  gap:1px !important;
  padding:1px !important;
}

.page-home .about-capabilities .capability-card,
.page-home .about-capabilities .capability-card:hover{
  border-radius:0 !important;
  box-shadow:none !important;
}

/* About timeline polish: works with existing timeline classes if present.
   Does not require HTML replacement. */
.timeline,
.milestone-timeline,
.about-timeline{
  max-width:920px !important;
  margin:56px auto 0 !important;
  position:relative !important;
}

.timeline-item,
.milestone-item,
.about-timeline-item{
  position:relative !important;
  padding-left:54px !important;
  margin-bottom:42px !important;
}

.timeline-item::before,
.milestone-item::before,
.about-timeline-item::before{
  content:"" !important;
  position:absolute !important;
  left:18px !important;
  top:14px !important;
  bottom:-38px !important;
  width:3px !important;
  background:linear-gradient(to bottom,#2BC7FF,#CBD5E1) !important;
  border-radius:99px !important;
  z-index:1 !important;
}

.timeline-item:last-child::before,
.milestone-item:last-child::before,
.about-timeline-item:last-child::before{
  display:none !important;
}

.timeline-year,
.milestone-year,
.about-timeline-year{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  min-width:38px !important;
  height:38px !important;
  padding:0 8px !important;
  background:#fff !important;
  border:3px solid #2BC7FF !important;
  color:#0A2540 !important;
  font-weight:900 !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:.84rem !important;
  line-height:1 !important;
  box-shadow:0 6px 16px rgba(43,199,255,.22) !important;
  z-index:2 !important;
  white-space:nowrap !important;
}

.timeline-content,
.milestone-content,
.about-timeline-content{
  background:#fff !important;
  padding:24px 28px !important;
  border-radius:18px !important;
  border:1px solid #EEF3F8 !important;
  box-shadow:0 10px 28px rgba(10,37,64,.065) !important;
}

.timeline-content h3,
.milestone-content h3,
.about-timeline-content h3{
  color:#0A2540 !important;
  letter-spacing:-.02em !important;
}

/* Applications page cards and related product chips.
   Targets existing app-card structure and any future application-card structure. */
.page-applications .app-card,
.page-applications .application-card,
.application-grid .app-card,
.applications-grid .app-card{
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
}

.page-applications .app-card .app-card-body,
.page-applications .application-card .card-body,
.application-card .card-body{
  padding:30px !important;
  flex:1 !important;
  display:flex !important;
  flex-direction:column !important;
}

.related-products,
.related-product-links,
.app-related-products{
  margin:18px 0 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

.chip,
.related-products a,
.related-product-links a,
.app-related-products a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:6px 14px !important;
  border-radius:999px !important;
  background:#F1F5F9 !important;
  color:#0A2540 !important;
  border:1px solid rgba(11,92,171,.10) !important;
  font-size:.88rem !important;
  font-weight:800 !important;
  text-decoration:none !important;
  transition:background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease !important;
}

.chip:hover,
.related-products a:hover,
.related-product-links a:hover,
.app-related-products a:hover{
  background:linear-gradient(135deg,#0B5CAB,#1979C7) !important;
  color:#fff !important;
  border-color:rgba(11,92,171,.08) !important;
  transform:translateY(-1px) !important;
}

/* Refined Why TJNE visual support, without forcing HTML replacement.
   If a why-tjne-section is later added, it will render correctly. */
.why-tjne-section{
  background:#F8FAFD !important;
  padding:96px 0 !important;
}

.why-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr)) !important;
  gap:28px !important;
  margin-top:52px !important;
}

.why-card{
  background:#fff !important;
  padding:38px 30px !important;
  border-radius:22px !important;
  border:1px solid #E6ECF5 !important;
  box-shadow:0 10px 30px rgba(10,37,64,.06) !important;
  transition:transform .34s ease, box-shadow .34s ease, border-color .34s ease !important;
}

.why-card:hover{
  transform:translateY(-9px) !important;
  box-shadow:0 26px 56px rgba(10,37,64,.12) !important;
  border-color:rgba(43,199,255,.42) !important;
}

.why-icon{
  width:54px !important;
  height:54px !important;
  margin-bottom:20px !important;
  border-radius:16px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(135deg,rgba(43,199,255,.16),rgba(11,92,171,.10)) !important;
  color:#0B5CAB !important;
  font-size:1.9rem !important;
}

/* Mobile refinements. */
@media (max-width:768px){
  .product-card,
  .app-card,
  .application-card,
  .industrial-card,
  .preview-card,
  .insight-card,
  .res-card{
    border-radius:20px !important;
  }

  .page-home .about-capabilities{
    border-radius:20px !important;
  }

  .page-home .about-capabilities .capability-card,
  .page-home .about-capabilities .capability-card:hover{
    border-radius:0 !important;
  }

  .timeline-item,
  .milestone-item,
  .about-timeline-item{
    padding-left:42px !important;
    margin-bottom:34px !important;
  }

  .timeline-year,
  .milestone-year,
  .about-timeline-year{
    min-width:32px !important;
    height:32px !important;
    font-size:.72rem !important;
    border-width:2px !important;
  }

  .timeline-item::before,
  .milestone-item::before,
  .about-timeline-item::before{
    left:15px !important;
  }

  .timeline-content,
  .milestone-content,
  .about-timeline-content{
    padding:20px !important;
    border-radius:16px !important;
  }
}

/* ============================================================
   v70 Round15.4 VISUAL TRIAL — Clean corporate timeline
   Purpose:
   - Replace the too-bright dot/line/pill timeline experiment.
   - Use calmer milestone cards with the year integrated into each card.
   - Better fit for a listed industrial technology company.
   ============================================================ */

.timeline,
.milestone-timeline,
.about-timeline{
  max-width:980px !important;
  margin:52px auto 0 !important;
  display:grid !important;
  gap:18px !important;
  position:relative !important;
}

/* Remove the previous left rail / dot-line look. */
.timeline::before,
.milestone-timeline::before,
.about-timeline::before,
.timeline-item::before,
.milestone-item::before,
.about-timeline-item::before{
  display:none !important;
  content:none !important;
}

.timeline-item,
.milestone-item,
.about-timeline-item{
  position:relative !important;
  display:grid !important;
  grid-template-columns:132px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:stretch !important;
  padding:0 !important;
  margin:0 !important;
}

/* Year badge: calm, integrated, not floating. */
.timeline-year,
.milestone-year,
.about-timeline-year{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  min-width:0 !important;
  width:auto !important;
  height:auto !important;
  padding:18px 14px !important;
  border-radius:18px !important;
  border:1px solid rgba(11,92,171,.16) !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(241,248,255,.92)) !important;
  color:#0B5CAB !important;
  font-size:1.02rem !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  box-shadow:0 12px 28px rgba(7,26,47,.06) !important;
  white-space:normal !important;
}

/* Milestone content: cleaner white cards, subtle left accent. */
.timeline-content,
.milestone-content,
.about-timeline-content{
  position:relative !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.96)) !important;
  padding:24px 28px !important;
  border-radius:20px !important;
  border:1px solid rgba(11,92,171,.11) !important;
  box-shadow:0 14px 38px rgba(7,26,47,.065) !important;
  overflow:hidden !important;
}

.timeline-content::before,
.milestone-content::before,
.about-timeline-content::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:18px !important;
  bottom:18px !important;
  width:4px !important;
  border-radius:0 99px 99px 0 !important;
  background:linear-gradient(180deg,#0B5CAB,#2BC7FF) !important;
  opacity:.86 !important;
}

.timeline-content h3,
.milestone-content h3,
.about-timeline-content h3{
  margin:0 0 8px !important;
  color:#0A2540 !important;
  font-size:1.12rem !important;
  line-height:1.35 !important;
  letter-spacing:-.018em !important;
}

.timeline-content p,
.milestone-content p,
.about-timeline-content p{
  margin:0 !important;
  color:#53687D !important;
  line-height:1.72 !important;
}

/* Slight hover only; no jumping / no bright neon effect. */
.timeline-item:hover .timeline-year,
.milestone-item:hover .milestone-year,
.about-timeline-item:hover .about-timeline-year{
  border-color:rgba(11,92,171,.24) !important;
  box-shadow:0 16px 34px rgba(7,26,47,.085) !important;
}

.timeline-item:hover .timeline-content,
.milestone-item:hover .milestone-content,
.about-timeline-item:hover .about-timeline-content{
  border-color:rgba(43,199,255,.24) !important;
  box-shadow:0 18px 44px rgba(7,26,47,.085) !important;
}

/* Mobile: stack year above content for better readability. */
@media (max-width:760px){
  .timeline,
  .milestone-timeline,
  .about-timeline{
    gap:16px !important;
    margin-top:36px !important;
  }

  .timeline-item,
  .milestone-item,
  .about-timeline-item{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .timeline-year,
  .milestone-year,
  .about-timeline-year{
    justify-content:flex-start !important;
    padding:12px 16px !important;
    border-radius:16px !important;
    font-size:.98rem !important;
  }

  .timeline-content,
  .milestone-content,
  .about-timeline-content{
    padding:20px 22px !important;
    border-radius:18px !important;
  }

  .timeline-content::before,
  .milestone-content::before,
  .about-timeline-content::before{
    top:16px !important;
    bottom:16px !important;
  }
}

/* ============================================================
   v70 Round16 — De-AI editorial polish
   Purpose:
   - Follow the attached de-AI direction: less template-like, more editorial.
   - Use Syne / IBM Plex Sans / IBM Plex Mono typography.
   - Keep the previous Round15 visual work, stats contrast and capability-grid rollback.
   ============================================================ */

h1, h2, h3, h4, h5{
  letter-spacing:-0.025em !important;
}

.hero h1 em,
.page-home .hero h1 em{
  color:#D4A84B !important;
  font-style:italic !important;
}

.hero-label,
.page-home .hero-label{
  background:none !important;
  -webkit-background-clip:unset !important;
  background-clip:unset !important;
  color:rgba(255,255,255,.50) !important;
  font-size:.68rem !important;
  letter-spacing:.18em !important;
}
.hero-label::before,
.page-home .hero-label::before{
  background:rgba(255,255,255,.30) !important;
  width:16px !important;
}

.hero-lead,
.page-home .hero-lead{
  max-width:500px !important;
  color:rgba(255,255,255,.74) !important;
  font-size:1.02rem !important;
  line-height:1.74 !important;
}

.hero-tag,
.badge-row span{
  border-radius:3px !important;
  font-size:.70rem !important;
  letter-spacing:.06em !important;
}

/* Less inflated cards: cleaner industrial editorial feel. */
.product-card,
.preview-card,
.insight-card,
.res-card{
  border-radius:10px !important;
  box-shadow:0 4px 18px rgba(11,31,58,.055) !important;
  border:1px solid #E5EDF5 !important;
}
.product-card:hover,
.preview-card:hover,
.insight-card:hover,
.res-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 10px 30px rgba(11,31,58,.095) !important;
  border-color:#C8DAED !important;
}
.product-accent{
  border-radius:2px 0 0 2px !important;
}

/* Applications cards: less glossy, clearer grid. */
.app-card,
.application-card{
  border-radius:6px !important;
  box-shadow:none !important;
  border:1px solid var(--platinum,#D8E3EC) !important;
  background:var(--white,#fff) !important;
}
.app-card:hover,
.application-card:hover{
  border-color:var(--blue,#0B5CAB) !important;
  box-shadow:0 4px 16px rgba(11,31,58,.07) !important;
  transform:translateY(-2px) !important;
}
.app-card::before{
  display:none !important;
}

/* Keep homepage capability grid as requested earlier: outer rounded, inner square. */
.page-home .about-capabilities{
  border-radius:24px !important;
  overflow:hidden !important;
}
.page-home .about-capabilities .capability-card,
.page-home .about-capabilities .capability-card:hover{
  border-radius:0 !important;
  box-shadow:none !important;
}

/* Partner logo cards: remove template shine. */
.partner-logo-card{
  box-shadow:none !important;
  border:1px solid #E8EFF6 !important;
  border-radius:6px !important;
  background:#fff !important;
}
.partner-logo-card:hover{
  border-color:#C8DAED !important;
  transform:none !important;
  box-shadow:none !important;
}

/* Quality features: quieter editorial tags. */
.quality-feat,
.quality-features article{
  background:rgba(248,250,252,.66) !important;
  border:0 !important;
  border-left:2px solid var(--platinum,#D8E3EC) !important;
  border-radius:0 !important;
  padding:14px 16px !important;
}
.quality-feat-icon,
.quality-features span{
  background:none !important;
  width:auto !important;
  height:auto !important;
  margin-bottom:8px !important;
  color:var(--blue,#0B5CAB) !important;
}

.stat-code{
  font-family:'JetBrains Mono',monospace !important;
  font-size:1.4rem !important;
  font-weight:600 !important;
  letter-spacing:.04em !important;
}
.stat-num,
.stat-code,
.about-metrics strong{
  font-family:'Manrope',sans-serif !important;
}

.hero-iso-badge{
  border-radius:4px !important;
  font-size:.72rem !important;
}
.stats-impact{
  border-top:1px solid rgba(255,255,255,.06) !important;
}
.section-title,
.diff-title,
.quality-title{
  font-weight:700 !important;
}
.company-legal-note{
  font-size:.72rem !important;
  opacity:.55 !important;
  line-height:1.6 !important;
  margin-top:10px !important;
}
.timeline-year,
.milestone-year,
.about-timeline-year{
  font-family:'JetBrains Mono',monospace !important;
  font-size:.82rem !important;
  font-weight:500 !important;
  letter-spacing:.04em !important;
}

/* Timeline stays in the cleaner Round15.4 card structure, not the dot-line experiment. */
.timeline,
.milestone-timeline,
.about-timeline{
  max-width:980px !important;
  display:grid !important;
  gap:16px !important;
}
.timeline-item,
.milestone-item,
.about-timeline-item{
  grid-template-columns:128px minmax(0,1fr) !important;
}
.timeline-content,
.milestone-content,
.about-timeline-content,
.timeline-copy{
  color:#53687D !important;
}

@media(max-width:760px){
  .product-card,.preview-card,.insight-card,.res-card{border-radius:10px !important;}
  .page-home .about-capabilities{border-radius:20px !important;}
  .timeline-item,.milestone-item,.about-timeline-item{grid-template-columns:1fr !important;}
}



/* ============================================================
   V70 Round16.1 — Typography rollback + footer icon polish +
   quality feature card color correction
   ============================================================ */

/* Roll main display typography back to the previous, less-flat look. */
body,
input,
select,
textarea,
button,
.main-nav a,
.site-footer,
.footer-bottom,
.hero-lead,
.section-desc,
.about-copy p,
.product-body li,
.app-card p,
.quality-copy p,
.quality-features small,
.res-card p,
.contact-panel p,
.contact-form,
.page-hero p,
.timeline p,
.partner-logo-card,
.sticky-cta-toggle{
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
}

h1,h2,h3,h4,h5,
.hero-line-title,
.hero-line-title span,
.hero-line-title em,
.section-title,
.page-hero h1,
.diff-title,
.product-body h3,
.app-card h3,
.quality-title,
.res-card h3,
.partners-card h2,
.about-metrics strong,
.timeline span,
.stat-num,
.stat-code,
.stat-showcase .stat-tile strong,
.metric-value,
.quality-copy h2,
.quality-copy h2 span,
.quality-subtitle,
.check-list strong{
  font-family:'Manrope',system-ui,sans-serif !important;
  letter-spacing:-0.03em !important;
}

/* Quality feature cards: remove the dull grey look and use deeper blue cards. */
.quality-features article,
.quality-features .quality-feat{
  background:linear-gradient(180deg, rgba(17,56,91,.90) 0%, rgba(13,43,72,.94) 100%) !important;
  border:1px solid rgba(143,195,232,.20) !important;
  box-shadow:0 10px 26px rgba(7,24,41,.18) !important;
}

.quality-features article strong,
.quality-features .quality-feat strong{
  color:#ffffff !important;
}

.quality-features article small,
.quality-features .quality-feat small{
  color:rgba(232,241,249,.76) !important;
}

.quality-features span,
.quality-features .quality-feat-icon,
.quality-features .quality-svg-icon{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  color:#8fd2ff !important;
  box-shadow:none !important;
}

.quality-features article:hover,
.quality-features .quality-feat:hover{
  transform:translateY(-2px) !important;
  background:linear-gradient(180deg, rgba(22,66,106,.94) 0%, rgba(16,51,84,.96) 100%) !important;
  border-color:rgba(143,195,232,.34) !important;
  box-shadow:0 14px 30px rgba(7,24,41,.24) !important;
}

/* Footer icons: circular buttons that light up on hover instead of disappearing. */
.footer-socials,
.socials{
  gap:10px !important;
}

.footer-social-btn,
.footer-socials a,
.socials a{
  width:42px !important;
  height:42px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.15) !important;
  color:rgba(255,255,255,.92) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
  transition:transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease !important;
  text-decoration:none !important;
  overflow:visible !important;
}

.footer-social-btn svg,
.footer-socials a svg,
.socials a svg{
  width:18px !important;
  height:18px !important;
  display:block !important;
}

.footer-social-btn:hover,
.footer-socials a:hover,
.socials a:hover{
  transform:translateY(-2px) !important;
  background:rgba(72,150,232,.18) !important;
  border-color:rgba(143,195,232,.42) !important;
  color:#ffffff !important;
  box-shadow:0 0 0 4px rgba(114,183,255,.10), 0 10px 24px rgba(11,92,171,.28) !important;
}

.footer-social-btn:hover img,
.footer-socials a:hover img,
.socials a:hover img{
  filter:none !important;
  opacity:1 !important;
}


/* ============================================================
   V70 Round16.2 — Stats gradient + hero label tune
   - make homepage/about numbers more eye-catching again
   - make gradient more visible
   - revert hero top meta from pale pill to the earlier cleaner line label
   ============================================================ */

/* Homepage top mini-label: back to the cleaner early style. */
.hero-label,
.page-home .hero-label{
  display:inline-flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  color:rgba(230,242,252,.82) !important;
  font-size:.76rem !important;
  font-weight:700 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
}
.hero-label::before,
.page-home .hero-label::before{
  content:"" !important;
  display:block !important;
  width:22px !important;
  height:2px !important;
  border-radius:99px !important;
  background:linear-gradient(90deg,#73d488 0%,#9be7ab 100%) !important;
  box-shadow:none !important;
}

/* Homepage stats: stronger gradient and a slight "pop" on hover. */
.stats-impact-inner{
  background:linear-gradient(135deg,rgba(255,255,255,.98) 0%,rgba(242,248,255,.97) 54%,rgba(230,241,251,.94) 100%) !important;
  border:1px solid rgba(11,92,171,.18) !important;
  box-shadow:0 24px 68px rgba(7,26,47,.12) !important;
}
.stats-impact .stat-impact-cell{
  transition:background .22s ease, box-shadow .22s ease, transform .22s ease !important;
}
.stats-impact .stat-impact-cell:hover{
  background:linear-gradient(180deg,rgba(247,251,255,.96) 0%,rgba(239,247,255,.98) 100%) !important;
}
.stats-impact .stat-num,
.stats-impact .stat-code,
.stats-impact .stat-num[data-target]{
  background:linear-gradient(180deg,#0A5AA8 0%,#156FC1 52%,#5FAEF2 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:0 10px 24px rgba(18,96,177,.11) !important;
}
.stats-impact .stat-num{
  font-weight:800 !important;
}
.stats-impact .stat-code{
  font-size:clamp(1.72rem,2.95vw,2.78rem) !important;
  letter-spacing:-.01em !important;
}
.stats-impact .stat-impact-cell:hover .stat-num,
.stats-impact .stat-impact-cell:hover .stat-code{
  transform:translateY(-1px) scale(1.03) !important;
  filter:brightness(1.04) saturate(1.06) !important;
}
.stats-impact .stat-label{
  color:#35506A !important;
  letter-spacing:.08em !important;
}

/* About page metric block: same stronger gradient treatment. */
.page-about .about-metrics,
body.page-about .about-metrics,
.about-card .about-metrics{
  background:linear-gradient(135deg,rgba(255,255,255,.98) 0%,rgba(244,249,255,.97) 50%,rgba(236,246,255,.95) 100%) !important;
  border-color:rgba(11,92,171,.14) !important;
  box-shadow:0 18px 48px rgba(7,26,47,.08) !important;
}
.page-about .about-metrics article,
body.page-about .about-metrics article,
.about-card .about-metrics article{
  background:transparent !important;
  transition:background .22s ease, transform .22s ease !important;
}
.page-about .about-metrics article:hover,
body.page-about .about-metrics article:hover,
.about-card .about-metrics article:hover{
  background:rgba(245,250,255,.86) !important;
}
.page-about .about-metrics strong,
body.page-about .about-metrics strong,
.about-card .about-metrics strong{
  display:block !important;
  background:linear-gradient(180deg,#0A5AA8 0%,#156FC1 52%,#5FAEF2 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
  text-shadow:0 10px 24px rgba(18,96,177,.10) !important;
}
.page-about .about-metrics article:hover strong,
body.page-about .about-metrics article:hover strong,
.about-card .about-metrics article:hover strong{
  transform:translateY(-1px) scale(1.03) !important;
  filter:brightness(1.04) saturate(1.06) !important;
}
.page-about .about-metrics small,
body.page-about .about-metrics small,
.about-card .about-metrics small{
  color:#496079 !important;
}

@media (max-width:760px){
  .hero-label,
  .page-home .hero-label{
    font-size:.70rem !important;
    letter-spacing:.13em !important;
    gap:10px !important;
  }
  .hero-label::before,
  .page-home .hero-label::before{
    width:18px !important;
  }
  .stats-impact .stat-num,
  .stats-impact .stat-code,
  .page-about .about-metrics strong,
  body.page-about .about-metrics strong{
    background:linear-gradient(180deg,#0A569F 0%,#1268B8 55%,#58A4E9 100%) !important;
    -webkit-background-clip:text !important;
    background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
  }
}


/* ============================================================
   V70 Round16.3 — label / CTA cleanup with Round14 cues
   - restore the line-led label style
   - simplify Why TJNE / Quality & Certification small headings
   - clean product/app CTA appearance and spacing
   ============================================================ */

/* Global small labels with leading line: back toward Round14. */
.eyebrow,
.section-kicker,
.label,
.hero-label,
.page-home .hero-label,
.diff-label,
.identity-strip-copy .section-kicker{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-transform:uppercase !important;
}

.eyebrow::before,
.section-kicker::before,
.label::before,
.hero-label::before,
.page-home .hero-label::before,
.diff-label::before,
.identity-strip-copy .section-kicker::before{
  content:"" !important;
  display:block !important;
  flex-shrink:0 !important;
  width:22px !important;
  height:1.5px !important;
  border-radius:999px !important;
  box-shadow:none !important;
}

/* Light-background sections. */
.eyebrow,
.section-kicker,
.label,
.identity-strip-copy .section-kicker{
  color:var(--blue,#0B5CAB) !important;
  font-size:.72rem !important;
  font-weight:700 !important;
  letter-spacing:.11em !important;
}
.eyebrow::before,
.section-kicker::before,
.label::before,
.identity-strip-copy .section-kicker::before{
  background:currentColor !important;
}

/* Homepage hero top meta strip. */
.hero-label,
.page-home .hero-label{
  color:rgba(235,246,255,.84) !important;
  font-size:.74rem !important;
  font-weight:700 !important;
  letter-spacing:.13em !important;
}
.hero-label::before,
.page-home .hero-label::before{
  background:linear-gradient(90deg,#73d488 0%,#8be0a8 100%) !important;
  width:24px !important;
  height:1.5px !important;
}

/* Dark deep sections like Why TJNE. */
.differentiator-section .label,
.diff-label,
.quality-copy .label,
.quality-copy .section-kicker,
.page-about .page-hero .eyebrow,
.page-contact .page-hero .eyebrow{
  color:#9fd3ff !important;
  font-size:.72rem !important;
  font-weight:700 !important;
  letter-spacing:.11em !important;
}
.differentiator-section .label::before,
.diff-label::before,
.quality-copy .label::before,
.quality-copy .section-kicker::before,
.page-about .page-hero .eyebrow::before,
.page-contact .page-hero .eyebrow::before{
  background:#9fd3ff !important;
}

/* Remove capsule treatment from Why TJNE specifically. */
.diff-header{
  margin:0 auto 36px !important;
}
.diff-label{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.diff-title{
  margin:10px auto 0 !important;
}

/* Product / application CTA links: undo pill look and fix spacing. */
.product-footer{
  padding:18px 24px 24px !important;
}
.product-link,
.app-cta,
.read-article-link,
.insight-action,
.product-card .product-link,
.app-card .app-cta,
.application-card .app-cta{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:var(--blue,#0B5CAB) !important;
  font-size:.78rem !important;
  font-weight:600 !important;
  letter-spacing:.03em !important;
  text-decoration:none !important;
}
.product-link:hover,
.app-cta:hover,
.read-article-link:hover,
.insight-action:hover,
.product-card:hover .product-link,
.app-card:hover .app-cta,
.application-card:hover .app-cta{
  gap:10px !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
  color:var(--blue,#0B5CAB) !important;
}
.product-link-arrow{
  transform:none !important;
}
.product-link:hover .product-link-arrow,
.app-cta:hover .product-link-arrow,
.read-article-link:hover .product-link-arrow{
  transform:translateX(4px) !important;
}

/* Make product cards feel cleaner and less clipped around CTA area. */
.product-card,
.app-card,
.application-card{
  overflow:hidden !important;
}
.product-body ul{
  margin-bottom:0 !important;
}

/* Slightly tone down later over-styled color effects in headings for these sections. */
.differentiator-section{
  background:radial-gradient(circle at 82% 20%,rgba(75,147,210,.16),transparent 32%), linear-gradient(135deg,#0b1f3a 0%,#15253a 56%,#10233a 100%) !important;
}
.quality-section,
.page-section#quality{
  position:relative;
}

/* Smaller-screen label sanity. */
@media (max-width:760px){
  .hero-label,
  .page-home .hero-label,
  .eyebrow,
  .section-kicker,
  .label,
  .diff-label{
    font-size:.70rem !important;
    letter-spacing:.10em !important;
    gap:8px !important;
  }
  .hero-label::before,
  .page-home .hero-label::before,
  .eyebrow::before,
  .section-kicker::before,
  .label::before,
  .diff-label::before{
    width:18px !important;
  }
}


/* ============================================================
   V70 Round16.4 — final polish / multilingual consistency / mobile
   Purpose:
   - tighten the visual system without changing core page structure
   - align non-English pages more closely with the English version
   - improve tablet/mobile adaptation site-wide
   ============================================================ */

/* Basic stability */
html, body{
  overflow-x:hidden !important;
}
img, svg, video{
  max-width:100%;
}
.container{
  width:min(1180px, calc(100% - 40px)) !important;
}

/* Keep heading rhythm tighter and more consistent. */
h1, h2, h3, h4, h5,
.section-title,
.diff-title,
.page-hero h1,
.hero h1{
  text-wrap:balance;
}
.section-desc,
.page-hero p,
.hero-lead,
.diff-card p,
.quality-copy p,
.product-body li,
.app-card p,
.resource-card p,
.res-card p,
.timeline-copy,
.timeline p{
  text-wrap:pretty;
}

/* Cross-language label consistency.
   English can keep stronger spacing; other languages use tighter spacing. */
:lang(ja) .hero-label,
:lang(ko) .hero-label,
:lang(ru) .hero-label,
:lang(zh-CN) .hero-label,
:lang(ja) .eyebrow,
:lang(ko) .eyebrow,
:lang(ru) .eyebrow,
:lang(zh-CN) .eyebrow,
:lang(ja) .section-kicker,
:lang(ko) .section-kicker,
:lang(ru) .section-kicker,
:lang(zh-CN) .section-kicker,
:lang(ja) .label,
:lang(ko) .label,
:lang(ru) .label,
:lang(zh-CN) .label,
:lang(ja) .diff-label,
:lang(ko) .diff-label,
:lang(ru) .diff-label,
:lang(zh-CN) .diff-label{
  letter-spacing:.05em !important;
}
:lang(ja) .hero-label,
:lang(ko) .hero-label,
:lang(zh-CN) .hero-label{
  font-size:.76rem !important;
}
:lang(ru) .hero-label{
  font-size:.72rem !important;
}

/* Product / application cards: better vertical rhythm and CTA alignment. */
.product-card,
.app-card,
.application-link-card,
.res-card,
.resource-card,
.preview-card,
.insight-card{
  display:flex !important;
  flex-direction:column !important;
}
.product-body,
.preview-card-body,
.res-card-body,
.resource-card-body{
  flex:1 1 auto !important;
}
.product-footer,
.card-actions{
  margin-top:auto !important;
}
.product-photo,
.page-home .product-photo{
  aspect-ratio:16 / 9;
  height:auto !important;
  min-height:200px;
}
.product-photo img,
.page-home .product-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.product-body{
  padding-bottom:6px !important;
}
.product-body ul{
  gap:0 !important;
}
.product-body li:last-child{
  border-bottom:0 !important;
}

/* Keep card top accent bars visually even. */
.product-accent,
.app-card::after{
  min-height:3px;
}

/* About / quality / timeline layout tightening. */
.about-card,
.quality-card,
.contact-card,
.contact-layout{
  align-items:stretch;
}
.timeline{
  overflow:hidden !important;
}
.timeline-item{
  align-items:start !important;
}
.timeline-year{
  white-space:nowrap !important;
}

/* Jump navs become scrollable instead of breaking layout. */
.page-jump-nav .container,
.about-jump-nav .container,
.applications-jump-nav .container,
.insight-jump-inner{
  display:flex !important;
  gap:10px !important;
  overflow-x:auto !important;
  white-space:nowrap !important;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.page-jump-nav a,
.about-jump-nav a,
.applications-jump-nav a,
.insight-jump-inner a{
  flex:0 0 auto !important;
}

/* Footer consistency. */
.site-footer .footer-grid{
  align-items:start !important;
}
.site-footer address p,
.site-footer p,
.site-footer a{
  overflow-wrap:anywhere;
}

/* Tablet */
@media (max-width:1180px){
  .container{width:min(100%, calc(100% - 32px)) !important;}
  .hero-inner,
  .intro-grid,
  .quality-card,
  .about-card,
  .contact-card,
  .contact-layout,
  .page-hero-split{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  .product-grid,
  .resource-grid,
  .resources-grid,
  .content-preview-grid,
  .project-brief-grid,
  .spec-range-grid,
  .subproduct-grid,
  .product-family-grid,
  .thank-next-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
  .app-grid,
  .diff-grid,
  .cert-grid,
  .photo-grid,
  .chip-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
  .footer-grid{
    grid-template-columns:1.3fr repeat(2,1fr) !important;
    gap:28px !important;
  }
}

/* Mobile */
@media (max-width:760px){
  .container{width:min(100%, calc(100% - 24px)) !important;}

  .nav-wrap{height:68px !important;}
  .main-nav{gap:18px !important;}
  .site-header .logo img{max-height:34px !important;}

  .hero,
  .page-hero,
  .thank-you-hero{
    padding-top:88px !important;
  }
  .hero-inner,
  .page-hero-inner,
  .page-hero-split,
  .intro-grid,
  .about-card,
  .quality-card,
  .contact-card,
  .contact-layout{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .hero h1,
  .page-home .hero h1,
  .page-hero h1,
  .thank-you-hero h1{
    font-size:clamp(2.05rem, 10vw, 3.05rem) !important;
    line-height:1.05 !important;
  }
  .hero-label,
  .page-home .hero-label,
  .eyebrow,
  .section-kicker,
  .label,
  .diff-label{
    font-size:.68rem !important;
    gap:8px !important;
  }
  .hero-label::before,
  .page-home .hero-label::before,
  .eyebrow::before,
  .section-kicker::before,
  .label::before,
  .diff-label::before{
    width:16px !important;
  }
  .hero-actions,
  .page-actions{
    gap:10px !important;
  }
  .hero-actions .btn,
  .page-actions .btn,
  .nav-cta,
  .btn,
  .btn-primary,
  .btn-secondary,
  .btn-outline{
    min-height:44px !important;
  }

  .product-grid,
  .app-grid,
  .resource-grid,
  .resources-grid,
  .content-preview-grid,
  .project-brief-grid,
  .spec-range-grid,
  .subproduct-grid,
  .product-family-grid,
  .thank-next-grid,
  .diff-grid,
  .cert-grid,
  .photo-grid,
  .chip-grid,
  .footer-grid{
    grid-template-columns:1fr !important;
  }
  .product-card,
  .app-card,
  .resource-card,
  .res-card,
  .preview-card,
  .insight-card,
  .diff-card,
  .partner-logo-card,
  .quality-features article,
  .quality-features .quality-feat{
    border-radius:18px !important;
  }
  .product-photo,
  .page-home .product-photo{
    min-height:186px !important;
  }
  .product-body,
  .product-footer,
  .preview-card-body,
  .resource-card,
  .res-card,
  .app-card,
  .diff-card{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .about-metrics,
  .stats-impact-inner,
  .stat-showcase{
    grid-template-columns:1fr !important;
  }
  .stats-impact .stat-impact-cell,
  .about-metrics article,
  .page-home .about-metrics .metric-card{
    border-right:0 !important;
    border-bottom:1px solid rgba(11,92,171,.10) !important;
  }
  .stats-impact .stat-impact-cell:last-child,
  .about-metrics article:last-child,
  .page-home .about-metrics .metric-card:last-child{
    border-bottom:0 !important;
  }

  .timeline{
    padding:24px 20px !important;
  }
  .timeline div:not(:first-child),
  .timeline-item{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .timeline-year{
    display:inline-flex !important;
  }

  .site-footer .footer-grid{
    padding:44px 0 32px !important;
    gap:24px !important;
  }
  .footer-brand img{
    width:150px !important;
  }
  .footer-bottom .container{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    align-items:flex-start !important;
  }

  .sticky-cta-toggle{
    padding:11px 15px 11px 13px !important;
    font-size:13px !important;
  }
}


/* ============================================================
   V70 FINAL REVISION — precopy polish freeze
   Purpose:
   - final structural / visual tightening before later copy refinement
   - preserve the accepted direction while reducing edge-case inconsistency
   ============================================================ */

/* Global stability and overflow prevention */
*, *::before, *::after{box-sizing:border-box;}
html{scroll-padding-top:88px;}
body{overflow-x:hidden !important;}
img, svg, video, iframe{max-width:100%;}
a, p, li, small, span{overflow-wrap:anywhere;}

/* Consistent section spacing */
.page-section{padding:72px 0 !important;}
.page-home .page-section:first-of-type{padding-top:64px !important;}
.section-header,.section-heading,.diff-header,.preview-head{margin-bottom:28px !important;}
.section-title,.diff-title,.quality-title{line-height:1.16 !important;}

/* Hero freeze: keep the final visual direction, but improve line breaks and spacing */
.hero-copy,.page-hero-copy,.page-hero-inner{min-width:0 !important;}
.hero h1,.page-home .hero h1,.page-hero h1{max-width:12ch !important;}
.hero-lead,.page-hero p{max-width:62ch !important;}
.hero-actions,.page-actions{flex-wrap:wrap !important;}
.hero-tag,.badge-row span{white-space:normal !important;}

/* Card consistency */
.product-card,.app-card,.resource-card,.res-card,.preview-card,.insight-card,.diff-card,.partner-logo-card,.quality-features article,.quality-features .quality-feat,.timeline,.about-card,.quality-card,.contact-card,.confirm-card,.thank-next-card{
  min-width:0 !important;
}
.product-body h3,.app-card h3,.resource-card h3,.res-card h3,.diff-card h3{
  line-height:1.28 !important;
}
.product-body li,.app-card p,.resource-card p,.res-card p,.diff-card p,.quality-features small{
  line-height:1.65 !important;
}
.product-footer,.card-actions{padding-top:16px !important;}

/* CTA links / buttons */
.product-link,.app-cta,.read-article-link,.insight-action{align-self:flex-start !important;}
.btn,.btn-primary,.btn-secondary,.btn-outline,.nav-cta{justify-content:center;}

/* Stats and about metrics remain visually stronger but more stable across languages */
.stats-impact .stat-label,.about-metrics small{font-weight:700 !important;}
.stat-code{white-space:nowrap !important;}

/* Page jump nav and anchor chips */
.page-jump-nav,.about-jump-nav,.applications-jump-nav,.insight-jump-nav{
  position:sticky;
  top:72px;
  z-index:18;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.page-jump-nav .container,.about-jump-nav .container,.applications-jump-nav .container,.insight-jump-inner{
  padding-top:6px !important;
  padding-bottom:6px !important;
}

/* Footer freeze */
.site-footer .footer-grid>div{min-width:0 !important;}
.footer-bottom .container{gap:12px !important;}
.footer-social-btn{flex:0 0 auto !important;}

/* Language-specific typography tightening */
:lang(ja) h1,:lang(ja) h2,:lang(ja) h3,
:lang(ko) h1,:lang(ko) h2,:lang(ko) h3,
:lang(zh-CN) h1,:lang(zh-CN) h2,:lang(zh-CN) h3{
  letter-spacing:-0.02em !important;
}
:lang(ru) .hero-label,:lang(ru) .label,:lang(ru) .section-kicker,:lang(ru) .eyebrow{letter-spacing:.04em !important;}

/* Tablet */
@media (max-width:1080px){
  .page-section{padding:64px 0 !important;}
  .hero h1,.page-home .hero h1,.page-hero h1{max-width:13ch !important;}
  .quality-card,.about-card,.contact-card{gap:24px !important;}
}

/* Mobile freeze */
@media (max-width:760px){
  html{scroll-padding-top:74px;}
  .page-section{padding:52px 0 !important;}
  .page-home .page-section:first-of-type{padding-top:48px !important;}
  .hero h1,.page-home .hero h1,.page-hero h1,.thank-you-hero h1{
    max-width:none !important;
    font-size:clamp(1.92rem, 9.4vw, 2.85rem) !important;
    line-height:1.07 !important;
  }
  .hero-lead,.page-hero p{font-size:.98rem !important;line-height:1.68 !important;}
  .hero-actions .btn,.page-actions .btn,.nav-cta,.btn,.btn-primary,.btn-secondary,.btn-outline{
    width:100% !important;
  }
  .product-link,.app-cta,.read-article-link,.insight-action{font-size:.8rem !important;}
  .product-card,.app-card,.resource-card,.res-card,.preview-card,.insight-card,.diff-card,.timeline,.about-card,.quality-card,.contact-card{
    border-radius:16px !important;
  }
  .site-footer .footer-grid{padding-top:38px !important;}
  .footer-bottom{padding-bottom:20px !important;}
}


/* ===== Round17 product-detail layout repair ===== */
.page-product-detail .subproduct-grid{
  grid-template-columns:1fr !important;
  gap:22px !important;
}
.page-product-detail .subproduct-card{
  grid-template-columns:minmax(280px, 34%) minmax(0, 1fr) !important;
  align-items:stretch !important;
}
.page-product-detail .subproduct-photo{
  min-height:320px !important;
  height:100% !important;
}
.page-product-detail .subproduct-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
.page-product-detail .subproduct-content{
  min-width:0 !important;
  overflow:visible !important;
}
.page-product-detail .subproduct-content h3,
.page-product-detail .subproduct-content p,
.page-product-detail .subproduct-content li{
  overflow-wrap:anywhere !important;
}
.page-product-detail .subproduct-content ul{margin-top:14px !important;}
.page-product-detail .card-actions{padding-top:14px !important;}
.page-product-detail .anchor-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:#0b5cab !important;
  font-weight:700 !important;
  font-size:.9rem !important;
}
.page-product-detail .anchor-chip::before{display:none !important;}
.page-product-detail .anchor-chip:hover{
  color:#1769A6 !important;
  text-decoration:underline !important;
  transform:none !important;
}
.page-product-detail .mini-chip-row{
  gap:10px !important;
}
.page-product-detail .mini-chip-row a{
  white-space:normal !important;
}
@media (max-width:1200px){
  .page-product-detail .subproduct-card{
    grid-template-columns:minmax(240px, 32%) minmax(0, 1fr) !important;
  }
}
@media (max-width:900px){
  .page-product-detail .subproduct-card{
    grid-template-columns:1fr !important;
  }
  .page-product-detail .subproduct-photo{
    min-height:240px !important;
  }
}
@media (max-width:760px){
  .page-product-detail .subproduct-content{padding:24px 20px !important;}
  .page-product-detail .subproduct-photo{min-height:220px !important;}
}


/* ===== Round18 holistic responsive polish ===== */
body.page-products .product-family-grid,
body.page-standard.page-products .product-family-grid,
body.page-applications .app-detail-grid,
body.page-standard.page-applications .app-detail-grid{
  align-items:stretch !important;
}
body.page-products .family-card,
body.page-standard.page-products .product-family-card,
body.page-applications .application-link-card,
body.page-standard.page-applications .application-link-card,
body.page-product-detail .subproduct-card{
  min-width:0 !important;
}
body.page-products .family-content,
body.page-standard.page-products .family-copy,
body.page-applications .app-content,
body.page-product-detail .subproduct-content{
  min-width:0 !important;
  overflow-wrap:anywhere !important;
}
body.page-products .family-content h2,
body.page-standard.page-products .family-copy h3,
body.page-applications .app-content h2,
body.page-product-detail .subproduct-content h3{
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
body.page-products .family-content li,
body.page-standard.page-products .family-copy li,
body.page-applications .app-content p,
body.page-product-detail .subproduct-content li{
  overflow-wrap:anywhere !important;
}
body.page-products .family-photo,
body.page-standard.page-products .product-family-card .family-photo,
body.page-applications .app-photo,
body.page-standard.page-applications .app-photo,
body.page-product-detail .subproduct-photo{
  overflow:hidden !important;
}
body.page-products .family-photo img,
body.page-standard.page-products .product-family-card .family-photo img,
body.page-applications .app-photo img,
body.page-standard.page-applications .app-photo img,
body.page-product-detail .subproduct-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
body.page-products .btn,
body.page-products .product-link,
body.page-applications .app-cta,
body.page-product-detail .anchor-chip,
body.page-product-detail .btn{
  max-width:100% !important;
}
@media (max-width:1180px){
  body.page-products .product-family-grid,
  body.page-standard.page-products .product-family-grid,
  body.page-applications .app-detail-grid,
  body.page-standard.page-applications .app-detail-grid{
    grid-template-columns:1fr !important;
  }
  body.page-products .family-card,
  body.page-standard.page-products .product-family-card,
  body.page-applications .application-link-card,
  body.page-standard.page-applications .application-link-card{
    grid-template-columns:minmax(280px, 34%) minmax(0, 1fr) !important;
  }
}
@media (max-width:860px){
  body.page-products .family-card,
  body.page-standard.page-products .product-family-card,
  body.page-applications .application-link-card,
  body.page-standard.page-applications .application-link-card,
  body.page-product-detail .subproduct-card{
    grid-template-columns:1fr !important;
  }
  body.page-products .family-photo,
  body.page-standard.page-products .product-family-card .family-photo,
  body.page-applications .app-photo,
  body.page-standard.page-applications .app-photo,
  body.page-product-detail .subproduct-photo{
    min-height:230px !important;
    height:230px !important;
    max-height:240px !important;
  }
  body.page-products .family-content,
  body.page-standard.page-products .family-copy,
  body.page-applications .app-content,
  body.page-product-detail .subproduct-content{
    padding:24px 20px !important;
  }
}
@media (max-width:560px){
  body.page-products .family-content h2,
  body.page-standard.page-products .family-copy h3,
  body.page-applications .app-content h2,
  body.page-product-detail .subproduct-content h3{
    font-size:1.18rem !important;
    line-height:1.28 !important;
  }
  body.page-products .family-content p,
  body.page-standard.page-products .family-copy p,
  body.page-applications .app-content p,
  body.page-product-detail .subproduct-content p,
  body.page-product-detail .subproduct-content li{
    font-size:.9rem !important;
    line-height:1.65 !important;
  }
  body.page-product-detail .mini-chip-row a{
    font-size:.74rem !important;
    padding:8px 10px !important;
  }
}


/* ============================================================
   CUSTOMER-READY FINAL POLISH
   Purpose: public-facing layout consistency for static pages and
   Cloudflare/KV-loaded content cards across desktop, tablet and mobile.
   ============================================================ */

html, body { overflow-x: hidden !important; }
*, *::before, *::after { box-sizing: border-box; }

img, svg, video, iframe { max-width: 100%; }

.container,
.nav-wrap,
.footer-bottom .container {
  max-width: 1180px;
}

.hero-copy,
.page-hero-copy,
.section-header,
.section-heading,
.about-copy,
.family-content,
.subproduct-content,
.app-content,
.quality-copy,
.legal-content,
.contact-form,
.contact-panel {
  min-width: 0 !important;
}

.hero-lead,
.section-desc,
.about-copy p,
.app-content p,
.product-body li,
.family-content li,
.subproduct-content li,
.legal-content p,
.legal-content li,
.contact-panel p,
.contact-form label {
  overflow-wrap: anywhere;
  text-wrap: pretty;
}

.page-hero h1,
.hero-line-title,
.section-title,
.quality-title,
.diff-title,
.legal-content h2 {
  text-wrap: balance;
}

/* Customer-facing CTAs: clean links, no boxy internal-looking buttons inside product cards */
.anchor-chip,
.product-link,
.app-cta,
.read-article-link,
.insight-action {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  color: #0b5cab !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}

.anchor-chip::before,
.product-link::before,
.app-cta::before,
.read-article-link::before,
.insight-action::before {
  display: none !important;
}

.anchor-chip:hover,
.product-link:hover,
.app-cta:hover,
.read-article-link:hover,
.insight-action:hover {
  color: #084a8e !important;
  text-decoration: underline !important;
  transform: none !important;
}

/* Static product and application cards */
body.page-products .family-card,
body.page-standard.page-products .product-family-card,
body.page-applications .application-link-card,
body.page-standard.page-applications .application-link-card,
body.page-product-detail .subproduct-card {
  min-width: 0 !important;
  align-items: stretch !important;
}

body.page-products .family-photo,
body.page-standard.page-products .product-family-card .family-photo,
body.page-applications .app-photo,
body.page-standard.page-applications .app-photo,
body.page-product-detail .subproduct-photo {
  overflow: hidden !important;
  background: #eef4f8 !important;
}

body.page-products .family-photo img,
body.page-standard.page-products .product-family-card .family-photo img,
body.page-applications .app-photo img,
body.page-standard.page-applications .app-photo img,
body.page-product-detail .subproduct-photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

/* Cloudflare/KV dynamic content should visually match static cards */
#latestUpdates,
#technicalInsights,
#dynamicFaqs,
.dynamic-content-grid,
.content-preview-grid,
.insight-list,
.article-grid {
  min-width: 0 !important;
}

.dynamic-card,
.update-card,
.article-card,
.insight-card,
.preview-card,
.faq-item {
  min-width: 0 !important;
  overflow: hidden;
}

.dynamic-card img,
.update-card img,
.article-card img,
.insight-card img,
.preview-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Legal pages */
.legal-content {
  max-width: 920px !important;
  margin: 0 auto !important;
  background: #fff;
  border: 1px solid #e6edf5;
  border-radius: 22px;
  padding: 42px;
  box-shadow: 0 18px 48px rgba(8, 34, 62, .08);
}

.legal-content h2 {
  color: #0a2540;
  font-size: 1.16rem;
  margin-top: 30px;
  margin-bottom: 10px;
}

.legal-content h2:first-of-type { margin-top: 24px; }

.legal-content p {
  color: #52677d;
  line-height: 1.76;
  margin: 0 0 14px;
}

.legal-content a {
  color: #0b5cab;
  font-weight: 700;
}

/* Tablet */
@media (max-width: 1180px) {
  .container,
  .nav-wrap,
  .footer-bottom .container {
    width: min(100%, calc(100% - 32px)) !important;
  }

  .hero-inner,
  .page-hero-split,
  .about-layout,
  .quality-layout,
  .contact-layout,
  .contact-card,
  .about-card,
  .quality-card {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  body.page-products .product-family-grid,
  body.page-standard.page-products .product-family-grid,
  body.page-applications .app-detail-grid,
  body.page-standard.page-applications .app-detail-grid,
  .subproduct-grid {
    grid-template-columns: 1fr !important;
  }

  body.page-products .family-card,
  body.page-standard.page-products .product-family-card,
  body.page-applications .application-link-card,
  body.page-standard.page-applications .application-link-card,
  body.page-product-detail .subproduct-card {
    grid-template-columns: minmax(250px, 34%) minmax(0, 1fr) !important;
  }

  .footer-grid {
    grid-template-columns: 1.2fr 1fr 1fr !important;
    gap: 28px !important;
  }
}

/* Mobile */
@media (max-width: 860px) {
  .container,
  .nav-wrap,
  .footer-bottom .container {
    width: min(100%, calc(100% - 24px)) !important;
  }

  .hero,
  .page-hero {
    padding-top: 88px !important;
  }

  .hero-line-title,
  .page-hero h1 {
    font-size: clamp(2rem, 9vw, 3rem) !important;
    line-height: 1.08 !important;
  }

  .hero-actions,
  .page-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .hero-actions .btn,
  .page-actions .btn,
  .btn-primary,
  .btn-secondary,
  .btn-outline {
    width: 100% !important;
    justify-content: center !important;
  }

  body.page-products .family-card,
  body.page-standard.page-products .product-family-card,
  body.page-applications .application-link-card,
  body.page-standard.page-applications .application-link-card,
  body.page-product-detail .subproduct-card {
    grid-template-columns: 1fr !important;
  }

  body.page-products .family-photo,
  body.page-standard.page-products .product-family-card .family-photo,
  body.page-applications .app-photo,
  body.page-standard.page-applications .app-photo,
  body.page-product-detail .subproduct-photo {
    min-height: 220px !important;
    height: 220px !important;
    max-height: 240px !important;
  }

  .family-content,
  .subproduct-content,
  .app-content,
  .product-body,
  .product-footer,
  .resource-card,
  .res-card {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .page-jump-nav .container,
  .about-jump-nav .container,
  .applications-jump-nav .container,
  .insight-jump-inner,
  .mini-chip-row {
    display: flex !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    gap: 8px !important;
    -webkit-overflow-scrolling: touch;
  }

  .page-jump-nav a,
  .about-jump-nav a,
  .applications-jump-nav a,
  .insight-jump-inner a,
  .mini-chip-row a {
    flex: 0 0 auto !important;
  }

  .stats-impact-inner,
  .about-metrics,
  .quality-features,
  .footer-grid {
    grid-template-columns: 1fr !important;
  }

  .legal-content {
    padding: 28px 22px;
    border-radius: 18px;
  }

  .legal-content h2 {
    font-size: 1.05rem;
  }

  .site-footer .footer-grid {
    gap: 24px !important;
  }

  .footer-bottom .container {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }
}

@media (max-width: 420px) {
  .hero-tag,
  .mini-chip-row a,
  .page-jump-nav a,
  .about-jump-nav a,
  .applications-jump-nav a {
    font-size: .72rem !important;
    padding: 7px 10px !important;
  }

  .hero-line-title,
  .page-hero h1 {
    font-size: clamp(1.85rem, 10vw, 2.6rem) !important;
  }
}


/* ============================================================
   FINAL HERO UNIFICATION — use home page language as the public-facing standard
   ============================================================ */
body.page-standard:not(.page-home) .page-hero{
  background:linear-gradient(135deg,#071d33 0%,#0d3557 58%,#16486d 100%)!important;
  color:#fff!important;
  border-bottom:0!important;
  overflow:hidden!important;
}
body.page-standard:not(.page-home) .page-hero::before,
body.page-standard:not(.page-home) .page-hero .hero-bg-lines{
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px)!important;
  mask-image:none!important;
  opacity:1!important;
}
body.page-standard:not(.page-home) .page-hero::after{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background:radial-gradient(ellipse 62% 72% at 78% 18%,rgba(75,147,210,.14) 0%,transparent 62%),radial-gradient(ellipse 45% 62% at 12% 70%,rgba(139,224,168,.08) 0%,transparent 58%)!important;
  pointer-events:none!important;
}
body.page-standard:not(.page-home) .page-hero .page-hero-inner,
body.page-standard:not(.page-home) .page-hero .container{position:relative!important;z-index:1!important;}
body.page-standard:not(.page-home) .page-hero h1{color:#fff!important;max-width:920px!important;}
body.page-standard:not(.page-home) .page-hero p:not(.eyebrow):not(.hero-kicker){
  color:rgba(255,255,255,.78)!important;
  max-width:760px!important;
}
/* Make all page hero labels follow the home-page pill style */
body.page-standard:not(.page-home) .page-hero .eyebrow,
body.page-standard:not(.page-home) .page-hero .hero-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 22px!important;
  padding:11px 16px!important;
  border-radius:999px!important;
  border:1px solid rgba(191,232,255,.18)!important;
  background:rgba(255,255,255,.055)!important;
  color:#d8e7f7!important;
  font-size:.72rem!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  backdrop-filter:blur(2px)!important;
}
body.page-standard:not(.page-home) .page-hero .eyebrow::before,
body.page-standard:not(.page-home) .page-hero .hero-kicker::before{
  content:''!important;
  width:22px!important;
  height:2px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#58C37D 0%,#8BE0A8 100%)!important;
  display:block!important;
  flex:0 0 auto!important;
}
body.page-standard:not(.page-home) .page-hero .page-actions,
body.page-standard:not(.page-home) .page-hero .hero-actions{
  margin-top:30px!important;
}
body.page-standard:not(.page-home) .page-hero .btn-primary{
  box-shadow:0 10px 28px rgba(8,30,52,.28)!important;
}
body.page-standard:not(.page-home) .page-hero .btn-secondary,
body.page-standard:not(.page-home) .page-hero .btn-outline{
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.92)!important;
  border-color:rgba(255,255,255,.18)!important;
}
body.page-standard:not(.page-home) .page-hero .btn-secondary:hover,
body.page-standard:not(.page-home) .page-hero .btn-outline:hover{
  background:rgba(255,255,255,.11)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.3)!important;
}
/* Remove legacy breadcrumb treatment on resources to keep hero area clean and consistent */
.page-resources .breadcrumb{display:none!important;}
@media (max-width:860px){
  body.page-standard:not(.page-home) .page-hero .eyebrow,
  body.page-standard:not(.page-home) .page-hero .hero-kicker{
    padding:9px 14px!important;
    margin-bottom:18px!important;
  }
}


/* ============================================================
   V4 responsive fix — homepage stats code cell
   Purpose: prevent 688813.SH from being clipped on wide/narrow desktop widths.
   ============================================================ */
.stats-impact-inner{
  grid-template-columns:repeat(4,minmax(0,1fr)) minmax(230px,1.16fr)!important;
}
.stats-impact .stat-impact-cell{
  min-width:0!important;
}
.stats-impact .stat-impact-cell:last-child{
  padding-left:10px!important;
  padding-right:10px!important;
  overflow:visible!important;
}
.stats-impact .stat-code{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-align:center!important;
  font-size:clamp(1.55rem,2.15vw,2.38rem)!important;
  letter-spacing:-.018em!important;
  line-height:1.05!important;
}
@media(max-width:980px){
  .stats-impact-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .stats-impact .stat-impact-cell:last-child{grid-column:1/-1!important;padding-left:14px!important;padding-right:14px!important;}
  .stats-impact .stat-code{font-size:clamp(1.75rem,6.4vw,2.45rem)!important;}
}
@media(max-width:520px){
  .stats-impact-inner{grid-template-columns:1fr!important;}
  .stats-impact .stat-impact-cell{border-right:0!important;}
  .stats-impact .stat-code{font-size:clamp(1.65rem,8.4vw,2.2rem)!important;}
}


/* Round 11 priority fixes: product matrix and resource case briefs */
.product-matrix-section{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-top:1px solid rgba(190,210,230,.35);border-bottom:1px solid rgba(190,210,230,.35);}
.product-matrix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px;}
.product-matrix-card{background:rgba(255,255,255,.94);border:1px solid rgba(190,210,230,.9);border-radius:22px;padding:24px;box-shadow:0 12px 36px rgba(11,92,171,.065);position:relative;overflow:hidden;}
.product-matrix-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--blue),#58aee8);}
.product-matrix-card h3{font-size:1.06rem;color:var(--ink);margin:0 0 14px;}
.product-matrix-row{display:grid;grid-template-columns:132px 1fr;gap:14px;padding:11px 0;border-top:1px solid rgba(190,210,230,.55);}
.product-matrix-row:first-of-type{border-top:0;}
.product-matrix-row strong{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--blue);line-height:1.45;}
.product-matrix-row span{font-size:.86rem;line-height:1.64;color:var(--text-2);}
.product-matrix-note{margin-top:18px;border-left:3px solid var(--blue);background:#f2f7fc;border-radius:0 10px 10px 0;padding:15px 17px;color:var(--text-2);font-size:.84rem;line-height:1.66;}
.resource-case-briefs{background:#fff;}
.resource-case-actions{margin-top:24px;text-align:center;}
.project-brief-card ul{list-style:none;margin:14px 0 0;padding:0;border-top:1px solid rgba(190,210,230,.55);}
.project-brief-card li{display:grid;grid-template-columns:84px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid rgba(190,210,230,.45);font-size:.8rem;line-height:1.55;color:var(--text-2);}
.project-brief-card li strong{color:var(--blue);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;}
@media(max-width:900px){.product-matrix-grid{grid-template-columns:1fr;}.product-matrix-row{grid-template-columns:118px 1fr;}.project-brief-card li{grid-template-columns:76px 1fr;}}
@media(max-width:560px){.product-matrix-card{padding:20px 18px;}.product-matrix-row{grid-template-columns:1fr;gap:4px;}}


/* TJNE v5 content rewrite styles */
.project-proof-section{background:linear-gradient(180deg,#fff 0%,#f6f9fc 100%);border-top:1px solid rgba(190,210,230,.45);border-bottom:1px solid rgba(190,210,230,.35)}
.project-brief-card .text-link{margin-top:16px;}
.spec-table-section{background:#fff;}
.responsive-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line,#d9e5ef);border-radius:22px;box-shadow:0 14px 40px rgba(17,36,58,.06);background:#fff;}
.spec-data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:880px;font-size:.88rem;}
.spec-data-table th{background:#0b5cab;color:#fff;text-align:left;padding:16px 18px;font-weight:800;letter-spacing:.01em;}
.spec-data-table th:first-child{border-top-left-radius:20px;}.spec-data-table th:last-child{border-top-right-radius:20px;}
.spec-data-table td{vertical-align:top;padding:16px 18px;color:var(--text-2,#3f4c5a);line-height:1.65;border-bottom:1px solid rgba(190,210,230,.55);border-right:1px solid rgba(190,210,230,.35);}
.spec-data-table td:first-child{font-weight:800;color:var(--text,#101820);background:#f8fbfd;}
.spec-data-table tr:last-child td{border-bottom:0;}.spec-data-table td:last-child{border-right:0;}
.certificate-version-note{margin:22px 0 0;color:var(--muted,#6d7a88);font-size:.86rem;line-height:1.65;background:#fff;border:1px dashed rgba(11,92,171,.26);border-radius:14px;padding:14px 16px;}
.case-project-note{margin-top:28px;padding:18px 20px;border-radius:16px;background:#f3f8fc;border:1px solid rgba(11,92,171,.18);color:var(--text-2,#3f4c5a);line-height:1.7;}
.seo-topic-section .product-matrix-card p{color:var(--text-2,#3f4c5a);line-height:1.7;font-size:.9rem;margin-top:10px;}
.contact-form select{width:100%;}
@media(max-width:760px){.spec-data-table{min-width:760px;font-size:.84rem}.spec-data-table th,.spec-data-table td{padding:13px 14px}.case-hero .page-actions{align-items:stretch}.case-hero .btn{width:100%;justify-content:center}}


/* V5.2: case-brief CTA, media references, and product parameter table refinements */
.case-briefs-more{display:flex;justify-content:center;margin-top:28px}
.media-proof-section{background:#f7fbff;}
.media-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.media-proof-card{background:#fff;border:1px solid rgba(158,184,210,.55);border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(13,42,72,.08);display:flex;flex-direction:column;}
.media-proof-card img{width:100%;height:190px;object-fit:cover;display:block;background:#edf4f8;}
.media-proof-card div{padding:20px;}
.media-proof-card span{display:inline-flex;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#0b6cae;margin-bottom:8px;}
.media-proof-card h3{margin:0 0 8px;color:var(--text,#101820);font-size:1.02rem;}
.media-proof-card p{margin:0;color:var(--text-2,#4a5665);line-height:1.65;font-size:.92rem;}
#typical-parameters .spec-data-table{min-width:980px;}
@media(max-width:1100px){.media-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.media-proof-grid{grid-template-columns:1fr}.media-proof-card img{height:210px}.case-briefs-more .btn{width:100%;justify-content:center}}
