/* LSY Style Polish v1.0.10 */
:root{
  --lsy-navy:#0f172a;--lsy-blue:#0056b3;--lsy-blue-h:#004493;--lsy-accent:#d97706;
  --lsy-mint:#E6F0EE;--lsy-body:#334155;--lsy-muted:#64748b;--lsy-line:#e5e7eb;--lsy-wa:#25D366;
  --theme-palette-color-2:#d97706;
  --theme-font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
}
/* ---------- Typography ---------- */
body,button,input,select,textarea,.ct-menu-link,.ct-footer,
h1,h2,h3,h4,h5,h6,.entry-content,.lsy-contact-page,.lsy-contact-page *{
  font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif !important;
}
body{font-size:16px;line-height:1.65;font-weight:400;color:#334155;--theme-text-color:#334155}
h1,.entry-content h1{font-size:40px;font-weight:700;line-height:1.25;color:#0f172a}
h2{line-height:1.3}
h3{font-weight:650}
@media (max-width:768px){h1,.entry-content h1{font-size:32px}}

/* ---------- Header / nav ---------- */
header#header a{color:inherit}
#header [data-id="menu"]{--menu-items-spacing:32px}
#header [data-id="menu"] > ul > li > a.ct-menu-link{
  font-size:14px !important;font-weight:600 !important;text-transform:uppercase;letter-spacing:.06em;color:#0f172a !important;
}
#header [data-id="menu"] > ul > li > a.ct-menu-link:hover{color:#0056b3 !important}
#header [data-id="menu"] > ul > li.current-menu-item > a.ct-menu-link{color:#0f172a !important;box-shadow:inset 0 -2px 0 #d97706}
#header [data-id="menu"] > ul > li > a.ct-menu-link:before,
#header [data-id="menu"] > ul > li > a.ct-menu-link:after{display:none !important}
#header [data-row="middle"]{--height:80px}
#header [data-id="logo"]{--logo-max-height:56px}

/* ---------- Links & buttons ---------- */
.entry-content a:hover{color:#0056b3}
.ct-button,.wp-block-button__link,button[type="submit"],input[type="submit"],.wpcf7-submit{
  --theme-button-background-initial-color:#0056b3;--theme-button-background-hover-color:#004493;
}
.wpcf7-submit,.contact-page .wpcf7-submit,.oem-form .wpcf7-submit,.lsy-contact-page .wpcf7-submit{
  background:#0056b3 !important;color:#fff !important;border:0 !important;min-height:44px;padding:12px 24px !important;
  border-radius:6px !important;font-size:15px !important;font-weight:600 !important;box-shadow:none !important;transform:none !important;
}
.wpcf7-submit:hover{background:#004493 !important}
.products .type-product{box-shadow:0 1px 3px rgba(15,23,42,.06)}
.products .type-product:hover{transform:translateY(-3px) !important;box-shadow:0 8px 24px rgba(15,23,42,.08) !important}
/* ProductX leftovers */
[class*="wopb-"] .slick-arrow{box-shadow:none !important;background-color:#0056b3 !important;color:#fff !important}

/* ---------- Related reading ---------- */
body.home .lsy-rel,body.page-id-109 .lsy-rel,
body.page-id-97 .lsy-rel,body.page-id-103 .lsy-rel,
.lsy-contact-page .lsy-rel{display:none !important}
.lsy-rel,.lsy-product-guides{max-width:1200px;margin:0 auto;padding:28px 20px 40px;box-sizing:border-box}
.lsy-rel h2,.lsy-product-guides h2{font-size:18px !important;font-weight:700 !important;color:#0f172a !important;line-height:1.3 !important;margin:0 0 12px !important;text-align:left}
.lsy-rel ul,.lsy-product-guides ul{list-style:none !important;margin:0 !important;padding:0 !important}
.lsy-rel li,.lsy-product-guides li{margin:0 !important;padding:12px 0;border-bottom:1px solid #e5e7eb}
.lsy-rel li:last-child,.lsy-product-guides li:last-child{border-bottom:none}
.lsy-rel li::before,.lsy-product-guides li::before{display:none !important}
.lsy-rel a,.lsy-product-guides a{display:block;padding:0;color:#0f172a !important;text-decoration:none !important;font-size:15px;font-weight:500;line-height:1.45}
.lsy-rel a:hover,.lsy-product-guides a:hover{color:#0056b3 !important}

/* ---------- Footer ---------- */
#footer.ct-footer [data-row="top"]{background:#0f172a !important}
#footer.ct-footer [data-row="top"] > .ct-container{padding-top:48px;padding-bottom:40px;align-items:flex-start}
#footer.ct-footer [data-row="top"] [data-column]{align-self:flex-start;justify-content:flex-start}
#footer #block-13 p,#footer #block-13 span{color:#fff !important;font-size:18px !important;font-weight:700 !important;font-family:inherit !important;line-height:1.35}
#footer #block-13 br{display:none}
#footer #block-24 p,#footer #block-24 span{color:#94a3b8 !important;font-size:14px !important;font-weight:400 !important;line-height:1.65 !important;font-family:inherit !important;max-width:360px}
#footer #footer-menu .ct-menu-link{font-size:13px !important;font-weight:600 !important;color:#e2e8f0 !important;letter-spacing:.04em;line-height:2.1;text-transform:uppercase}
#footer #footer-menu .ct-menu-link:hover{color:#d97706 !important}
#footer #block-22 p,#footer #block-22 strong{color:#fff !important;font-size:16px !important;font-weight:700 !important;margin:0 0 12px !important}
#footer .lsy-footer-contact{display:grid;grid-template-columns:20px 1fr;gap:10px 12px;align-items:start;font-size:14px;line-height:1.55;color:#e2e8f0 !important}
#footer .lsy-footer-contact .lsy-fc-ico{color:#94a3b8;display:flex;padding-top:2px}
#footer .lsy-footer-contact .lsy-fc-txt,#footer .lsy-footer-contact a{color:#e2e8f0 !important;text-decoration:none}
#footer .lsy-footer-contact a:hover{color:#d97706 !important}
#footer.ct-footer [data-row="bottom"]{background:#0f172a !important;border-top:1px solid rgba(255,255,255,.08)}
#footer .ct-footer-copyright{font-size:13px !important;color:#64748b !important}

/* ---------- Cookie revisit ---------- */
.cky-btn-revisit-wrapper{background:#0f172a !important;width:40px !important;height:40px !important;left:16px !important;right:auto !important;bottom:16px !important}
.cky-btn-revisit-wrapper img{width:22px !important;height:22px !important}

/* ---------- Home ---------- */
body.home{--orange:#d97706;--green-light:#E6F0EE;--border:#e5e7eb;--dark:#0f172a}
.home .btn,.home .btn-contact{border-radius:6px !important;min-height:44px;padding:12px 24px !important;font-size:15px !important;font-weight:600 !important;line-height:20px}
.home .btn-green,.home .btn-orange,.home .btn-contact{background:#0056b3 !important;color:#fff !important}
.home .btn-green:hover,.home .btn-orange:hover,.home .btn-contact:hover{background:#004493 !important;transform:none}
.home .btn-get-started:hover{filter:brightness(.95)}
.home .industry-icon{width:56px !important;height:56px !important;border-radius:50% !important;background:#E6F0EE !important;color:#0056b3 !important;font-size:0 !important}
.home .industry-icon svg{width:26px;height:26px}
.home .industry-card{border-radius:6px}
.home .product-scroll-wrap{margin:0 !important;padding:0 0 8px !important;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}
.home .product-scroll-wrap::-webkit-scrollbar{display:none}
.home .lsy-feat{position:relative}
.home .lsy-feat-btn{position:absolute;top:34%;transform:translateY(-50%);z-index:2;width:40px;height:40px;padding:0;border:1px solid #e5e7eb;border-radius:50%;background:#fff;color:#0f172a;box-shadow:0 4px 14px rgba(15,23,42,.1);cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s,border-color .2s,opacity .2s}
.home .lsy-feat-btn:hover:not(:disabled){background:#0056b3;border-color:#0056b3;color:#fff}
.home .lsy-feat-btn:disabled{opacity:.35;cursor:default;box-shadow:none}
.home .lsy-feat-prev{left:8px}
.home .lsy-feat-next{right:8px}
@media (min-width:1100px){
  .home .lsy-feat-prev{left:-12px}
  .home .lsy-feat-next{right:-12px}
}
.home .product-scroll{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;width:max-content !important;gap:24px}
.home .product-item{width:260px !important;flex:0 0 260px;scroll-snap-align:start;border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease !important}
.home .product-item:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(15,23,42,.08)}
.home .product-item a{display:block;padding:16px 16px 4px;background:#fff}
.home .product-item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#f8fafc;border-radius:4px}
.home .product-item .product-name{white-space:normal;overflow:visible;padding:8px 16px 16px;font-size:14px;font-weight:600;color:#0f172a;line-height:1.4;text-align:center}
@media (max-width:1000px){.home .product-item{width:220px !important;flex-basis:220px}}
@media (max-width:640px){.home .product-item{width:220px !important;flex-basis:220px}}
.home [class*="cert"] img,.home [class*="cert-card"],.home .cert-item{border-radius:6px}

/* ---------- About (page-id-97) ---------- */
.page-id-97 .hero{min-height:0 !important;padding:40px 0 32px !important;background:#fff !important;color:#0f172a}
.page-id-97 .stats .stat figure{display:none}
.page-id-97 .lsy-bridge-wrap{max-width:760px;margin:0 auto;padding:32px 20px;text-align:left}
.page-id-97 .lsy-buyer-bridge h2{font-size:28px;line-height:1.3;color:#0f172a;margin:0 0 12px;text-wrap:balance}
.page-id-97 .lsy-buyer-bridge p{color:#334155;font-size:16px;line-height:1.65}
.page-id-97 .lsy-buyer-bridge ul{list-style:none;margin:16px 0;padding:0}
.page-id-97 .lsy-buyer-bridge li{padding:8px 0;border-bottom:1px solid #e5e7eb;margin:0}
.page-id-97 .lsy-buyer-bridge a{color:#0f172a;text-decoration:none;font-weight:500}
.page-id-97 .lsy-buyer-bridge a:hover{color:#0056b3}
.page-id-97 .entry-content h2{text-wrap:balance}

/* ---------- Contact (page-id-103) ---------- */
.lsy-contact-page{--orange:#d97706;--orange-dark:#b45309;--green:#25D366}
.lsy-contact-page .hero h1 span{color:#d97706 !important}
.lsy-contact-page .hero-image img{aspect-ratio:3/4;object-fit:cover;object-position:center;width:100%;height:auto;max-height:560px;box-shadow:0 12px 32px rgba(15,23,42,.25)}
.lsy-contact-page .hero-buttons .btn,.lsy-contact-page .btn{border-radius:6px !important;min-height:44px;padding:12px 24px !important;font-size:15px !important;font-weight:600 !important}
.lsy-contact-page .hero-buttons .btn-orange{background:#25D366 !important;color:#fff !important}
.lsy-contact-page .hero-buttons .btn-orange span{display:none}
.lsy-contact-page .card-icon{width:40px !important;height:40px !important;background:#F1F5F9 !important;color:#0f172a !important;font-size:0 !important}
.lsy-contact-page .card-icon svg{width:20px;height:20px}
.lsy-contact-page .contact-card{border-radius:6px}


/* ---------- Home contact CTA ---------- */
.home .contact-section.lsy-cta-section{text-align:left;background:#fff !important;padding:40px 0 !important}
.home .lsy-cta{display:flex;flex-wrap:wrap;gap:24px;align-items:stretch;max-width:1200px;margin:0 auto;padding:0 24px 48px;box-shadow:none;overflow:visible;box-sizing:border-box}
.home .lsy-cta-left{border-radius:8px;text-align:center;background:linear-gradient(135deg,#2a7a5f 0%,#1a5c44 100%)}
.home .lsy-cta-left h2,.home .lsy-cta-left p{margin-left:auto;margin-right:auto}
.home .lsy-cta-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}
.home .lsy-cta-right{border-radius:8px;background:#f8f9fa;align-items:stretch;gap:20px;padding:48px 40px !important;text-align:left}
.home .lsy-cta-row{display:grid;grid-template-columns:40px 1fr;column-gap:14px;align-items:center;width:100%}
.home .lsy-cta-row > div:last-child{text-align:left;min-width:0;overflow-wrap:anywhere;word-break:break-word}
@media (max-width:640px){
  .home .lsy-cta-right{padding:32px 20px !important}
}


/* ---------- Spacing scale (spec v2: 40/32) ---------- */
.hero p:empty,.section p:empty,.global p:empty,.office-item p:empty,.client-logos p:empty{display:none !important;margin:0 !important}

.home .hero-section,
.home .product-slider-section,
.home .category-section,
.home .trusted-section,
.home .patents-section,
.home .blog-section,
.home .contact-section,
.page-id-97 .section,
.page-id-97 .office-section,
.page-id-97 .testimonials,
.page-id-97 .timeline,
.page-id-97 .gallery,
.page-id-97 .capabilities,
.page-id-103 .hero,
.lsy-contact-page .hero,
.lsy-contact-page .contact-cards,
.lsy-contact-page .form-section,
.lsy-contact-page .social-section,
.lsy-contact-page .cta-section{padding:40px 0 !important}
.lsy-contact-page .map-section{padding:0 0 40px !important}
.home .trusted-header,.home .patents-header{margin-bottom:24px !important}
.home .logos-row{margin-bottom:20px !important;gap:12px !important}
@media (max-width:768px){
  .home .hero-section,.home .product-slider-section,.home .category-section,.home .trusted-section,.home .patents-section,.home .blog-section,.home .contact-section,
  .page-id-97 .section,.page-id-97 .office-section,.page-id-97 .testimonials,.page-id-97 .timeline,.page-id-97 .gallery,.page-id-97 .capabilities,
  .page-id-103 .hero,.lsy-contact-page .hero,.lsy-contact-page .contact-cards,.lsy-contact-page .form-section,.lsy-contact-page .social-section,.lsy-contact-page .cta-section{padding:32px 0 !important}
  .lsy-contact-page .map-section{padding:0 0 32px !important}
}

/* ---------- About contrast + rhythm ---------- */
.page-id-97 .hero-content{padding:0 !important;max-width:720px;color:inherit}
.page-id-97 .hero h1{margin:0 0 16px;color:#0f172a !important}
.page-id-97 .hero p{color:#334155 !important}
.page-id-97 .hero .tag{margin-bottom:12px}
.page-id-97 .hero .btn-outline{background:transparent !important;border:2px solid #0f172a !important;color:#0f172a !important}
.page-id-97 .hero-badge{color:#334155}
.page-id-97 .tag{margin-bottom:12px}
.page-id-97 .section-title{color:#0f172a !important;margin-bottom:12px !important}
.page-id-97 .section-subtitle{color:#64748b !important;opacity:1 !important;margin-bottom:20px !important}

.page-id-97 .global{padding:40px 0 0 !important;min-height:0 !important;background:#fff !important;color:#0f172a;display:block;text-align:center}
.page-id-97 .global-content{max-width:720px;margin:0 auto;display:flex;flex-direction:column;align-items:center}
.page-id-97 .global .tag{margin-bottom:12px}
.page-id-97 .global h2{color:#0f172a !important}
.page-id-97 .global p{color:#334155 !important;opacity:1;max-width:640px}
.page-id-97 .global .client-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin-top:20px;width:auto}
.page-id-97 .global .client-logo{display:inline-flex;align-items:center;width:auto !important;max-width:max-content;padding:10px 18px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;font-size:14px;font-weight:650;color:#0f172a;box-shadow:none}
.page-id-97 .global .client-logo img{display:none !important;width:0 !important;height:0 !important}
.page-id-97 .global .btn:not(.btn-outline){background:#2a7a5f !important;color:#fff !important}

.page-id-97 .section.cta{padding:40px 0 !important;text-align:center}
.page-id-97 .section.cta .cta-box{padding:0 !important;color:inherit;background:transparent !important;max-width:720px;margin:0 auto}
.page-id-97 .section.cta h2{color:#0f172a !important;margin:0 0 12px}
.page-id-97 .section.cta p{color:#334155 !important;opacity:1}
.page-id-97 .section.cta .btn-outline{background:transparent !important;border:2px solid #0f172a !important;color:#0f172a !important}

/* About leftover Gutenberg blocks under the CTA (Resources / Learn More) */
.page-id-97 .entry-content > .wp-block-paragraph,
.page-id-97 .entry-content > h2,
.page-id-97 .entry-content > ul{max-width:720px;margin-left:auto;margin-right:auto}
.page-id-97 .entry-content > .wp-block-paragraph{margin-top:24px;margin-bottom:16px;font-size:14px;color:#64748b;text-align:center}
.page-id-97 .entry-content > .wp-block-paragraph a{color:#0f172a;text-underline-offset:2px}
.page-id-97 .entry-content > h2{font-size:20px !important;line-height:1.3 !important;font-weight:700 !important;color:#0f172a !important;margin:24px auto 12px !important;text-align:center}
.page-id-97 .entry-content > ul{list-style:none !important;padding:0 !important;margin:0 auto 40px !important;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px}
.page-id-97 .entry-content > ul li{margin:0 !important}
.page-id-97 .entry-content > ul a{color:#334155;text-decoration:none;font-size:14px;font-weight:500}
.page-id-97 .entry-content > ul a:hover{color:#0056b3}

.page-id-97 .section.capabilities{padding:40px 0 !important;background:transparent !important;color:#0f172a}
.page-id-97 .section.capabilities .section-title{color:#0f172a !important}
.page-id-97 .section.capabilities .section-subtitle{color:#64748b !important;opacity:1 !important;margin-bottom:20px !important}
.page-id-97 .cap-grid{gap:20px}
.page-id-97 .cap-card{background:#fff !important;border:1px solid #e5e7eb !important;border-radius:8px;padding:24px !important;text-align:center;transform:none}
.page-id-97 .cap-card:hover{background:#fff !important;transform:none}
.page-id-97 .cap-icon{background:#E6F0EE !important;color:#0056b3 !important;margin:0 auto 12px !important;font-size:0 !important}
.page-id-97 .cap-icon svg{width:22px;height:22px}
.page-id-97 .cap-card h4{color:#0f172a !important;margin:12px 0 8px !important}
.page-id-97 .cap-card p{color:#64748b !important;opacity:1 !important}

.page-id-97 .office-item{align-items:flex-start}
.page-id-97 .office-item span{flex-shrink:0;color:#0056b3;display:grid;place-items:center;font-size:0}
.page-id-97 .office-item span svg{width:22px;height:22px}
.page-id-97 .office-item div{color:#334155 !important}
.page-id-97 .office-item strong{color:#0f172a !important}
.page-id-97 .intro-icon{color:#0056b3;font-size:0}
.page-id-97 .intro-icon svg{width:22px;height:22px}
.page-id-97 .intro-item h4{color:#0f172a}
.page-id-97 .intro-item p{color:#334155}

.page-id-97 .gallery-item,.lsy-contact-page .gallery-item{position:relative;overflow:hidden}
.page-id-97 .gallery-item img,.lsy-contact-page .gallery-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.page-id-97 .gallery-item::after,.lsy-contact-page .gallery-item::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(15,23,42,.72) 0%,rgba(15,23,42,.2) 42%,transparent 70%);pointer-events:none}
.page-id-97 .gallery-overlay,.lsy-contact-page .gallery-overlay{position:absolute;left:0;right:0;bottom:0;top:auto !important;height:auto;inset:auto 0 0 0 !important;z-index:2;padding:20px 24px;background:none !important}
.page-id-97 .gallery-overlay h4,.page-id-97 .gallery-overlay p,
.lsy-contact-page .gallery-overlay h4,.lsy-contact-page .gallery-overlay p{color:#fff !important}
.page-id-97 .gallery-overlay h4{font-size:16px;font-weight:650;margin:0 0 4px}
.page-id-97 .gallery-overlay p{font-size:13px;line-height:1.45;color:rgba(255,255,255,.85) !important;margin:0;opacity:1 !important}

/* ---------- Contact contrast + rhythm ---------- */
.lsy-contact-page .hero{min-height:0 !important;background:#fff}
.lsy-contact-page .hero-content{color:#0f172a}
.lsy-contact-page .hero-content p,.lsy-contact-page .hero p{color:#334155 !important}
.lsy-contact-page .hero h1{color:#0f172a !important}
.lsy-contact-page .hero .btn-outline{background:transparent !important;color:#0f172a !important;border:2px solid #0f172a !important}
.lsy-contact-page .hero-image{position:relative}
.lsy-contact-page .hero-image::after{content:"";position:absolute;inset:0;border-radius:12px;background:linear-gradient(to top,rgba(15,23,42,.55) 0%,rgba(15,23,42,.12) 50%,transparent 70%);pointer-events:none}
.lsy-contact-page .hero-badge{position:relative;z-index:1;background:#0f172a;color:#fff}
.lsy-contact-page .hero-badge strong{color:#fff}
.lsy-contact-page .hero-badge span{color:rgba(255,255,255,.8)}
.lsy-contact-page .quick-info-item .icon{color:#0056b3;font-size:0}
.lsy-contact-page .quick-info-item .icon svg,.lsy-contact-page .pin svg{width:22px;height:22px;stroke:#0056b3}
.lsy-contact-page .pin{color:#0056b3;font-size:0}
.lsy-contact-page .cta-section{background:linear-gradient(135deg,#d97706 0%,#b45309 100%) !important;color:#fff}
.lsy-contact-page .cta-section h2,.lsy-contact-page .cta-section p{color:#fff !important;opacity:1}

/* titles: never mid-word wrap (anywhere/break-word is only for the email row) */
.hero h1,.hero-section h1,h1,h2{overflow-wrap:normal;word-break:normal;hyphens:manual}
.hero-section{padding:40px 0 !important}
@media (max-width:768px){
  .hero-section{padding:32px 0 !important}
  .page-id-97 .section.capabilities,
  .page-id-97 .global,
  .page-id-97 .section.cta,
  .home .contact-section.lsy-cta-section{padding:32px 0 !important}
  .page-id-97 .hero h1{font-size:clamp(32px,8.5vw,36px) !important;line-height:1.2;max-width:100%}
  .page-id-97 .gallery-overlay,.lsy-contact-page .gallery-overlay{padding:12px 14px !important}
  .page-id-97 .gallery-overlay h4,.page-id-97 .gallery-overlay p,
  .lsy-contact-page .gallery-overlay h4,.lsy-contact-page .gallery-overlay p{overflow-wrap:normal;word-break:normal;hyphens:manual}
  .page-id-97 .gallery-overlay h4,.lsy-contact-page .gallery-overlay h4{font-size:14px !important;line-height:1.25;margin:0}
  .page-id-97 .gallery-overlay p,.lsy-contact-page .gallery-overlay p{display:none !important}
}
