/* Porto Industry Factory visual reconstruction, scoped to public pages. */
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-Regular.woff2?v=1') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-Medium.woff2?v=1') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-SemiBold.woff2?v=1') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-Bold.woff2?v=1') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-ExtraBold.woff2?v=1') format('woff2');font-weight:800;font-display:swap}
.industry-site{--ink:#222529;--muted:#777;--paper:#fff;--line:#eee;--radius:0;--industry-accent:var(--theme-industry-accent,#d80d07);--industry-gray:#f7f7f7;font:400 14px/26px Poppins,'Microsoft YaHei',sans-serif;color:#777;background:#fff}
.industry-site h1,.industry-site h2,.industry-site h3{font-family:inherit;color:#222529;letter-spacing:-.5px}.industry-site h2{font-size:36px;font-weight:700;line-height:1.3;margin:0 0 20px}.industry-site h3{font-size:20px}.industry-site p{margin:0 0 20px;line-height:26px}.industry-site img{max-width:100%}.porto-container{width:100%;max-width:1200px;padding:0 12px;margin:0 auto}.porto-subheading{font-size:16.8px;font-weight:500;line-height:1.4;letter-spacing:2.5px;color:var(--industry-accent);margin-bottom:12px}.porto-center-heading{text-align:center;margin:0 auto 37px;max-width:780px}.porto-center-heading .porto-subheading{font-size:14px;margin-bottom:8px;letter-spacing:2px}.porto-center-heading h2{font-size:30px;letter-spacing:-.7px;line-height:40px;margin:0 0 15px}.porto-center-heading p{max-width:690px;margin:0 auto;color:#777}.porto-read-more{display:inline-flex;align-items:center;gap:7px;font-size:12.8px;line-height:20px;font-weight:600;color:var(--industry-accent)}.porto-read-more span{font-size:22px}.industry-site a:hover{color:var(--industry-accent)}.industry-site a:focus-visible,.industry-site button:focus-visible,.industry-site summary:focus-visible{outline:2px solid var(--industry-accent);outline-offset:4px}.industry-site .button{border-radius:0;background:var(--industry-accent);border-color:var(--industry-accent);color:#fff}.skip-link{position:fixed;top:-100px;left:12px;background:white;color:#222;padding:12px;z-index:100}.skip-link:focus{top:10px}
/* Two-tier white header. */
.industry-topbar{background:#fff;border-bottom:2px solid #f0f0f0;color:#333}.industry-topbar>.porto-container{display:flex;align-items:center;min-height:44px;gap:24px}.porto-top-contact{display:flex;gap:28px;align-items:center}.porto-top-contact span{font-size:14px}.porto-top-contact a{font-weight:700;color:#212529}.porto-top-social{display:flex;gap:16px;margin-left:auto;align-items:center}.porto-top-social a{font-size:11px;color:#333}.porto-solid-arrow{align-self:stretch;display:inline-flex;gap:12px;align-items:center;background:var(--industry-accent);color:#fff!important;font-size:12.8px;font-weight:700;padding:16px 24px 16px 25px;clip-path:polygon(0 0,90% 0,100% 50%,90% 100%,0 100%);white-space:nowrap;margin-right:0;min-width:168px;justify-content:center}.porto-solid-arrow span{font-size:20px}.industry-site .theme-header{position:relative;max-width:1200px;min-height:96px;width:100%;margin:0 auto;padding:0 12px;gap:32px;border:0;display:flex;flex-wrap:nowrap;justify-content:space-between;background:var(--theme-surface,#fff)}.industry-site .brand{font-size:30px;font-weight:800;color:var(--theme-header-text,#212529);letter-spacing:-1.5px;line-height:1.2;max-width:300px;flex-shrink:0}.industry-site .site-logo{width:152px;height:62px;max-height:62px;object-fit:contain}.industry-site .theme-header-nav{margin-left:auto;color:var(--theme-header-text,#444)}.industry-site .theme-header-nav>ul{gap:40px;align-items:center}.industry-site .theme-header-nav>ul>li>a,.industry-site .theme-header-nav summary a{font-size:14px;font-weight:600;white-space:nowrap;padding:20px 0;color:inherit}.industry-site .theme-header-nav a[aria-current=page]{color:var(--industry-accent);text-decoration:none}.industry-site .theme-header-nav li ul{border-radius:0;border-top:3px solid var(--industry-accent)}.industry-site .theme-header-nav li ul a{font-size:13px}.industry-menu-toggle{display:none;border:0;background:none;color:inherit;font-size:23px;padding:8px}.porto-search{position:relative;border-left:1px solid #f4f4f4;padding-left:22px;color:var(--theme-header-text,#444)}.porto-search summary{cursor:pointer;list-style:none;display:flex;align-items:center}.porto-search summary::-webkit-details-marker{display:none}.porto-search form{position:absolute;right:0;top:40px;width:300px;display:flex;background:#fff;padding:15px;gap:8px;box-shadow:0 8px 30px #0002;z-index:40}.porto-search:not([open]) form{display:none}.porto-search input{border-radius:0;font-size:12px;padding:8px;width:100%}.porto-search button{border:0;background:var(--industry-accent);color:#fff;padding:0 12px;white-space:nowrap;font-size:12px}
/* Exact reference composition: pale left panel, industrial collage and angled base. */
.industry-site .hero{display:block;position:relative;isolation:isolate;overflow:hidden;background:#f7f7f7;min-height:620px;height:620px;max-width:none;padding:0;margin:0}.porto-hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 70px;z-index:-3}.porto-hero-top{position:relative;text-align:right;padding-top:32px;z-index:-2}.porto-hero-top>img{width:363px;height:321px;object-fit:cover;box-shadow:0 0 21px -5px #0003}.porto-hero-panel{position:absolute;left:-4px;top:32px;width:58.333333%;background:#f7f7f7;padding:48px;min-height:510px;z-index:-1}.porto-hero-panel:after{content:'';position:absolute;left:0;right:0;top:100%;height:200px;background:var(--industry-accent);z-index:-1}.porto-hero-copy{text-align:right;position:relative;padding-top:100px}.industry-site .hero .porto-hero-kicker{font-size:38.5px;line-height:44px;letter-spacing:-.5px;font-weight:600;color:#222529;margin:0}.industry-site .hero h1{font-size:51.975px;line-height:1.2;font-weight:800;letter-spacing:-.037em;margin:0 0 17px;color:#222529;white-space:nowrap}.industry-site .hero .porto-hero-subtitle{font-size:19.6px;line-height:26px;color:#777;margin:0 0 19px}.porto-outline-arrow{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:58px;min-width:180px;padding:16px 38px 16px 45px;border:2px solid #ccc;border-right:0;color:#222529;font-weight:700;font-size:13.6px;line-height:20px;margin-right:24px;background:transparent;z-index:1}.porto-outline-arrow:after{position:absolute;content:'';width:40px;height:40px;right:-20px;top:7px;border-top:2px solid #ccc;border-right:2px solid #ccc;transform:scaleX(.75) rotate(45deg);background:transparent;z-index:-1}.porto-outline-arrow:hover,.porto-outline-arrow:hover:after{color:var(--industry-accent);border-color:var(--industry-accent)}.porto-hero-inset{position:absolute;left:100%;top:65%;width:640px;height:323px;z-index:-2;overflow:hidden}.porto-hero-inset img{display:block;width:640px;height:323px;object-fit:cover;max-width:none}.porto-hero-inset:before{content:'';position:absolute;top:0;left:0;width:339px;height:100%;background:var(--industry-accent);opacity:.7}.porto-hero-inset:after{content:'';position:absolute;top:0;left:0;width:0;height:100%;box-shadow:0 0 80px 68px var(--industry-accent)}.porto-hero-cut{position:absolute;left:0;bottom:-1px;width:100%;height:80px;z-index:5;pointer-events:none}
.porto-introduction{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:48px;padding-bottom:8px}.porto-introduction h2{font-size:42px;line-height:1.2;margin-bottom:12px}.porto-serif-lead{font:400 18px/1.8 Poppins,sans-serif;color:#777}.porto-introduction>div:last-child{padding-top:16px}.porto-introduction>div:last-child>p{margin-bottom:18px}.porto-shaped{position:relative;background:#f7f7f7;isolation:isolate}.porto-shaped:before{content:'';position:absolute;left:0;right:0;top:0;height:70px;background:#fff;clip-path:polygon(0 0,100% 0,100% 7%,35% 94%,0 1%);pointer-events:none}.porto-shaped:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:70px;background:#fff;clip-path:polygon(0 0,35% 94%,100% 7%,100% 100%,0 100%);pointer-events:none}.porto-services{margin-top:40px;padding:116px 0 100px}.porto-carousel-shell{position:relative}.porto-service-cards{display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding-bottom:12px}.porto-service-cards::-webkit-scrollbar{display:none}.porto-service-card{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start;text-align:center;display:block;color:#222529}.porto-service-icon{display:block;width:60px;height:60px;object-fit:contain;margin:0 auto 15px}.porto-service-card h3{font-size:20px;font-weight:700;line-height:27px;margin:0 0 37px;min-height:27px}.porto-service-photo{display:block;width:100%;height:190px;object-fit:cover}.porto-carousel-prev,.porto-carousel-next{position:absolute;top:50%;transform:translateY(-50%);background:transparent;border:0;font-size:40px;font-weight:400;color:#212529;padding:0;line-height:40px}.porto-carousel-prev{left:-30px}.porto-carousel-next{right:-30px}.porto-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}.porto-special{position:relative;background:linear-gradient(70deg,#f7f7f7 47%,#fff 47%,#fff 54%,#f7f7f7 54%);padding:27px 0 55px;overflow:hidden}.porto-special:after{content:'';position:absolute;top:0;bottom:0;left:50%;width:15%;background:white;transform:skewX(-21deg);z-index:0}.porto-special>.porto-container{position:relative;z-index:1}.porto-special-image img{display:block;width:100%;height:auto}.porto-special-copy{padding:20px 24px 20px 48px}.porto-special h2{font-size:36px;margin:0 0 15px}.porto-checklist{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:30px 0;padding:0;font-size:14px;color:#212529}.porto-checklist li:before{content:'✓';font-size:18px;font-weight:700;color:#222529;margin-right:10px}
.porto-quote{padding:64px 0;background:#4d4e50 url('/static/images/porto/industry-background-2.jpg') center/cover}.porto-quote>.porto-container{display:flex;align-items:center;gap:30px;justify-content:space-between}.porto-quote h2{font-size:32px;color:white;line-height:1.3;margin:0;font-weight:600}.porto-quote .porto-outline-arrow{color:#fff;border-color:#fff;flex-shrink:0}.porto-quote .porto-outline-arrow:after{border-color:#fff}.porto-process{padding-top:72px;padding-bottom:65px}.porto-process ol{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:40px 0 0;gap:24px}.porto-process li{position:relative;text-align:center;padding:0 26px}.porto-process li:after{content:'';position:absolute;top:55px;left:calc(50% + 55px);width:calc(100% - 86px);height:2px;background:#e9e9e9}.porto-process li:last-child:after{display:none}.porto-process li>span{display:grid;place-items:center;border:2px solid #ccc;border-radius:50%;width:110px;height:110px;margin:0 auto 24px;color:var(--industry-accent);font-size:30.8px;background:#fff;position:relative;z-index:1;transition:background .2s,color .2s}.porto-process li:hover>span{background:var(--industry-accent);color:#fff;border-color:var(--industry-accent)}.porto-process h3{font-size:18.9px;margin-bottom:12px;line-height:1.3}.porto-process p{margin:0;font-size:14px;line-height:26px}.porto-testimonials{padding:116px 0 112px}.porto-testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.porto-testimonial-grid figure{margin:0}.porto-testimonial-grid blockquote{position:relative;margin:0;padding:11px 40px 12px;font-size:14px;font-style:italic;line-height:26px;color:#777}.porto-testimonial-grid blockquote:before{content:'“';position:absolute;left:12px;top:8px;font:700 35px/1 Georgia,serif;color:var(--industry-accent)}.porto-testimonial-grid figcaption{display:flex;gap:16px;align-items:center;padding:18px 32px;font-weight:600;color:#222529;font-size:16px}.porto-testimonial-grid small{display:block;font-size:11px}.porto-quote-symbol{display:grid;place-items:center;width:85px;height:85px;background:#fff;font:700 60px/1 Georgia,serif;color:#444;flex-shrink:0}.porto-facilities{padding-top:64px;padding-bottom:64px;gap:48px}.porto-facilities-media{position:relative}.porto-facilities-media>img{display:block;width:100%;height:315px;object-fit:cover;filter:grayscale(1)}.porto-play-link{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:#ffffffeb;color:#333;font-size:20px;padding-left:4px}.porto-facilities h2{margin-bottom:20px}.porto-news{padding:116px 0 110px}.porto-news-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.porto-news-grid article{padding:24px;background:#fff;box-shadow:0 30px 60px -30px #0002}.porto-news-grid article>a:first-child{display:block;overflow:hidden}.porto-news-grid img{width:100%;height:180px;object-fit:cover;display:block;transition:transform .3s}.porto-news-grid article:hover img{transform:scale(1.04)}.industry-site .porto-news-meta{font-size:11px;color:#999;margin:20px 0 13px}.porto-news-meta span{margin-left:8px}.porto-news-grid h3{font-size:20px;margin-bottom:15px}.porto-news-grid article>p:not(.porto-news-meta){font-size:14px;min-height:52px}
/* Preserve existing configuration and inquiries within the original light contact / dark footer layout. */
.industry-site .theme-footer{background:#212529;border:0}.porto-contact-band{background:#fff;color:#777}.porto-contact-band>.porto-container{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-top:64px;padding-bottom:64px}.industry-site .theme-footer h2{font-size:32px;line-height:1.3;color:#222529;margin:0 0 28px;font-weight:700}.industry-site .theme-footer h2:after{display:none}.industry-site .theme-contact-row{border:0;padding:10px 0;font-size:14px;line-height:26px;align-items:flex-start;gap:25px}.industry-site .theme-contact-row svg{width:36px;height:40px;color:var(--industry-accent);margin-top:0}.theme-contact-row strong{display:block;font-size:18px;color:#222529;margin-bottom:6px}.industry-site .theme-footer-form{gap:16px;grid-column:auto;grid-row:auto}.industry-site .theme-footer-form>h2{margin-bottom:10px}.industry-site .theme-footer-form input,.industry-site .theme-footer-form textarea{border:1px solid #f7f7f7;border-radius:0;background:#f7f7f7;color:#555;padding:15px 20px;font-size:13px}.industry-site .theme-footer-form input{height:52px}.industry-site .theme-footer-form textarea{height:184px;min-height:184px}.industry-site .theme-footer-form button{border-radius:0;background:var(--industry-accent);color:#fff;min-height:60px;font-size:13px;font-weight:700}.industry-site .theme-footer-form-pair{gap:16px}.industry-site .theme-footer-form input:focus,.industry-site .theme-footer-form textarea:focus{outline:1px solid var(--industry-accent);outline-offset:0}.porto-footer-bottom{background:#212529;color:#999;padding:65px 0 50px}.porto-footer-bottom>.porto-container{display:grid;grid-template-columns:1.1fr 1.5fr 1fr;gap:55px}.porto-footer-brand .brand{color:#fff;margin-bottom:25px}.porto-footer-brand .site-logo{filter:grayscale(1) brightness(0) invert(1);width:123px;max-height:54px}.porto-footer-brand p{font-size:13px;color:#999}.industry-site .porto-footer-bottom h2{font-size:16px;color:#fff;letter-spacing:0;margin-bottom:25px}.porto-footer-bottom .theme-footer-links nav{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.porto-footer-bottom nav a{color:#999;font-size:12px}.porto-footer-bottom nav a:before{content:'›';font-size:15px;margin-right:8px}.industry-site .theme-footer .theme-social-links{gap:12px;margin-top:20px}.industry-site .theme-social-links a{border:0;background:none;padding:0;font-size:12px;color:#777}.industry-site .theme-footer-copyright{background:#1c2023;color:#777;padding:23px max(24px,calc((100% - 1176px)/2));font-size:12px;border-top:1px solid #ffffff0a}.industry-site .theme-footer-copyright>div{max-width:1176px;margin:auto;text-align:left}.industry-site .theme-footer p.theme-footer-result{font-size:12px}.industry-site .theme-footer--white .porto-footer-bottom{background:#f7f7f7}.industry-site .theme-footer--white .porto-footer-bottom h2,.industry-site .theme-footer--white .porto-footer-brand .brand{color:#222529}.industry-site .theme-footer--no-form .porto-contact-band>.porto-container{grid-template-columns:1fr}.industry-site .theme-footer--no-form .theme-footer-contact{max-width:650px}
/* Shared inner-page language follows the same type, red accents, whitespace and flat controls. */
.industry-site .section{padding:60px 12px;max-width:1200px}.industry-site .page-intro{max-width:none;background:#f7f7f7;border-top:1px solid #eee;border-bottom:5px solid #eee;padding:50px max(24px,calc((100% - 1176px)/2)) 45px}.industry-site .page-intro h1{font-size:36px;line-height:44px;margin:0}.industry-site .page-intro .eyebrow,.industry-site .eyebrow{color:var(--industry-accent);letter-spacing:2px}.industry-site .page-intro p{font-size:14px;margin-top:18px}.industry-site .cards{gap:24px}.industry-site .content-card{border-radius:0;border-color:#eee;box-shadow:0 10px 30px #00000006}.industry-site .card-image{border-radius:0;background:#f4f4f4;color:#777}.industry-site .content-card:nth-child(2) .card-image,.industry-site .content-card:nth-child(3) .card-image{background:#f1f1f1}.industry-site .card-body h3{font-size:20px}.industry-site .card-body .eyebrow{font-size:11px}.industry-site .card-bottom{color:var(--industry-accent)}.industry-site input,.industry-site textarea,.industry-site select,.industry-site .empty,.industry-site .detail-image,.industry-site .theme-contact-extra,.industry-site .contact-form,.industry-site .product-main-image,.industry-site .product-intro,.industry-site .product-related-grid>a{border-radius:0}.industry-site .empty{font-size:14px}.industry-site .price{color:var(--industry-accent)}.industry-site .tinted{background:#f7f7f7}.industry-site .contact-page{padding-top:60px;max-width:1200px}.industry-site .search .button{white-space:nowrap}.industry-site .theme-slide-caption{border-radius:0;background:#f7f7f7f0}.industry-site .theme-slide-controls button{border-radius:0}
@media(min-width:1400px){.porto-hero-panel{width:50%}}
@media(min-width:1800px){.porto-hero-panel{width:41.666667%}}
@media(max-width:1223px) and (min-width:992px){.porto-container,.industry-site .theme-header{max-width:960px}.industry-site .theme-header-nav>ul{gap:25px}.porto-hero-copy{padding-top:130px}.industry-site .hero h1{font-size:42px}.industry-site .hero .porto-hero-kicker{font-size:32px}.industry-site .hero .porto-hero-subtitle{font-size:17px}.porto-hero-panel{padding:40px}}
@media(max-width:991px){.porto-container{padding-left:24px;padding-right:24px}.industry-topbar>.porto-container{gap:15px}.porto-top-contact{gap:20px}.porto-top-contact span{font-size:12px}.porto-top-social{gap:10px}.industry-site .theme-header{min-height:90px;padding:20px 24px;gap:20px;flex-wrap:wrap}.industry-menu-toggle{display:block;margin-left:auto;order:3}.porto-search{margin-left:auto;order:2}.industry-site .theme-header-nav{display:none;width:100%;order:4;margin:0;border-top:1px solid #eee;padding:12px 0}.industry-menu-toggle[aria-expanded=true]~.theme-header-nav{display:block}.industry-site .theme-header-nav>ul{display:block}.industry-site .theme-header-nav a{padding:10px 0!important;display:block;font-size:13px!important}.industry-site .theme-header-nav li ul{position:static;box-shadow:none;border:0;border-left:2px solid var(--industry-accent);margin-left:10px}.industry-site .theme-header-nav ul ul ul{position:static}.industry-site .hero{height:555px;min-height:555px}.porto-hero-panel{width:66.666667%;padding:32px;min-height:450px}.porto-hero-copy{padding-top:100px}.industry-site .hero .porto-hero-kicker{font-size:29px;line-height:1.2}.industry-site .hero h1{font-size:38px;white-space:normal}.industry-site .hero .porto-hero-subtitle{font-size:16px}.porto-hero-top>img{width:290px;height:257px}.porto-hero-inset{top:65%;width:500px;height:260px}.porto-hero-inset img{width:500px;height:260px}.porto-introduction{gap:30px}.porto-introduction h2{font-size:32px}.porto-subheading{font-size:14px}.porto-services{padding-top:165px}.porto-service-card{flex-basis:calc((100% - 20px)/2)}.porto-carousel-prev{left:-20px}.porto-carousel-next{right:-20px}.porto-special-copy{padding:20px 0 20px 20px}.porto-special h2{font-size:30px}.porto-checklist{grid-template-columns:1fr;gap:8px;margin:20px 0}.porto-quote{padding:65px 0}.porto-quote h2{font-size:28px}.porto-process li{padding:0 5px}.porto-process li:after{width:calc(100% - 86px)}.porto-testimonial-grid{gap:20px}.porto-testimonial-grid blockquote{padding:12px 30px}.porto-testimonial-grid figcaption{padding:15px}.porto-facilities{gap:30px;padding-top:60px;padding-bottom:60px}.porto-news-grid img{height:160px}.porto-contact-band>.porto-container{gap:35px;padding-top:60px;padding-bottom:60px}.porto-footer-bottom>.porto-container{gap:30px}.industry-site .section{padding:48px 24px}}
@media(max-width:767px){.porto-solid-arrow{display:none}.porto-top-social{margin-left:auto}.industry-topbar>.porto-container{min-height:38px}.porto-introduction,.porto-two-columns{grid-template-columns:1fr}.porto-introduction{gap:15px;padding-top:35px}.porto-introduction>div:last-child{padding-top:0}.porto-special{background:#f7f7f7}.porto-special:after{display:none}.porto-special-copy{padding:25px 0}.porto-special-image{max-width:570px;margin:auto}.porto-center-heading h2{font-size:27px;line-height:1.35}.porto-center-heading{padding-inline:4px}.porto-shaped:before,.porto-shaped:after{height:60px}.porto-services{margin-top:35px;padding-top:110px;padding-bottom:90px}.porto-process{padding-top:55px;padding-bottom:45px}.porto-testimonials{padding:110px 0 100px}.porto-news{padding:110px 0 100px}.porto-testimonial-grid{grid-template-columns:1fr;gap:25px}.porto-testimonial-grid figure+figure{border-top:1px solid #e8e8e8;padding-top:15px}.porto-news-grid{grid-template-columns:1fr}.porto-news-grid img{height:auto;aspect-ratio:560/180}.porto-contact-band>.porto-container{grid-template-columns:1fr;gap:40px}.porto-footer-bottom>.porto-container{grid-template-columns:1fr 1fr}.porto-footer-brand{grid-column:1/-1}.industry-site .theme-footer-form{grid-column:auto;grid-row:auto}.porto-quote>.porto-container{flex-direction:column;text-align:center;gap:25px}.porto-checklist{grid-template-columns:1fr 1fr}.industry-site .theme-footer h2{font-size:28px}.industry-site .porto-footer-bottom h2{font-size:16px}}
@media(max-width:575px){.porto-container{padding-inline:20px}.industry-topbar>.porto-container{padding-inline:20px;min-height:38px}.porto-top-contact>span+span{display:none}.porto-top-contact span{font-size:11px}.porto-top-social a{font-size:10px}.industry-site .theme-header{min-height:82px;padding:18px 20px}.industry-site .brand{max-width:68%;font-size:23px}.industry-site .site-logo{width:123px;max-height:44px}.porto-search{padding-left:12px}.industry-menu-toggle{margin-left:0;font-size:23px;padding:4px}.industry-site .hero{height:470px;min-height:470px}.porto-hero-background{object-position:center center}.porto-hero-top{display:none}.porto-hero-panel{width:calc(100% - 48px);top:50px;left:24px;padding:38px 20px 42px;min-height:0}.porto-hero-panel:after{display:none}.porto-hero-copy{padding:0;text-align:center}.industry-site .hero .porto-hero-kicker{font-size:27px;line-height:1.25}.industry-site .hero h1{font-size:36px;line-height:1.2;white-space:normal;margin:10px 0 17px}.industry-site .hero .porto-hero-subtitle{font-size:16px;line-height:23px;margin-bottom:24px}.porto-hero-inset{display:none}.porto-hero-cut{height:60px}.porto-outline-arrow{font-size:12px;min-height:54px;min-width:160px;padding:14px 30px 14px 35px}.porto-outline-arrow:after{top:7px;width:36px;height:36px;right:-18px}.porto-introduction h2{font-size:30px}.porto-introduction .porto-subheading{font-size:13px;letter-spacing:1.7px;line-height:1.7}.porto-serif-lead{font-size:18px}.porto-service-card{flex-basis:100%}.porto-service-photo{height:auto;aspect-ratio:360/190}.porto-services{padding-top:100px;padding-bottom:80px}.porto-service-card h3{margin-bottom:28px}.porto-center-heading .porto-subheading{font-size:12px}.porto-center-heading h2{font-size:25px;line-height:1.4}.porto-center-heading p{font-size:13px;line-height:24px}.porto-special{padding-bottom:25px}.porto-special h2{font-size:29px}.porto-checklist{font-size:12px;gap:10px}.porto-quote h2{font-size:27px}.porto-process ol{grid-template-columns:1fr;gap:35px}.porto-process li{padding:0 10px}.porto-process li:after{display:none}.porto-process li>span{margin-bottom:20px}.porto-process li p{max-width:300px;margin:auto}.porto-testimonial-grid blockquote{font-size:13px}.porto-testimonial-grid figcaption{font-size:14px}.porto-quote-symbol{width:70px;height:70px}.porto-facilities{padding-top:45px;padding-bottom:45px}.porto-facilities-media>img{height:auto}.porto-facilities h2{font-size:30px}.porto-news-grid article{padding:20px}.porto-contact-band>.porto-container{padding-top:45px;padding-bottom:50px}.industry-site .theme-contact-row{gap:18px;font-size:13px}.industry-site .theme-contact-row svg{width:28px;height:34px}.industry-site .theme-footer-form-pair{grid-template-columns:1fr}.porto-footer-bottom{padding:45px 0}.porto-footer-bottom>.porto-container{grid-template-columns:1fr;gap:35px}.porto-footer-brand{grid-column:auto}.industry-site .theme-footer-copyright{padding:20px;font-size:11px}.industry-site .section{padding:40px 20px}.industry-site .page-intro{padding:36px 20px}.industry-site .page-intro h1{font-size:30px;line-height:1.3}.industry-site .cards{grid-template-columns:1fr}.industry-site .contact-page{padding-top:40px}.porto-news-meta span{display:none}}
@media(prefers-reduced-motion:reduce){.industry-site *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Reference service tiles: charcoal icon panel, muted photo, title underneath. */
.porto-service-card{display:flex;flex-direction:column;align-items:stretch}
.porto-service-icon-band{background:#4d4e50;padding:40px 0;order:1;transition:background .3s;overflow:hidden}
.porto-service-icon-band .porto-service-icon{width:60px;height:60px;margin:0 auto;object-fit:contain}
.porto-service-card .porto-service-photo{order:2;height:144px;filter:grayscale(1) brightness(.5);transition:filter .3s}
.porto-service-card h3{order:3;font-size:17.64px;font-weight:600;letter-spacing:-.05em;margin:14px 0 4px}
.porto-service-card:hover .porto-service-icon-band{background:var(--industry-accent)}
.porto-service-card:hover .porto-service-photo{filter:none}
.porto-service-card:hover h3{color:var(--industry-accent)}
.porto-footer-brand .site-logo{filter:grayscale(1) invert(1);mix-blend-mode:screen}
.industry-site .hero .porto-hero-kicker{letter-spacing:-.05em}
.porto-carousel-prev:disabled,.porto-carousel-next:disabled{opacity:.25;cursor:default}
/* 2026-10-29 visual polish: consistent proportions, forms and inner-page surfaces. */
.industry-site { --muted:#687078; }
.industry-site .site-logo.site-logo--padded { object-fit:cover; object-position:center; }
.industry-site .porto-footer-brand .site-logo { width:152px; height:62px; max-height:62px; }
.industry-site .brand { overflow-wrap:anywhere; }
.industry-site .theme-header-nav>ul { gap:32px; }
.industry-site .porto-top-contact { gap:24px; }
.industry-site .porto-top-contact span { font-size:12px; color:#687078; }
.industry-site .porto-top-contact a { margin-left:12px; font-weight:500; }
.industry-site .porto-solid-arrow { font-size:11px; min-width:156px; padding-block:10px; }
.industry-site .porto-hero-subtitle { max-width:600px; margin-left:auto; }
.industry-site .porto-introduction h2 { font-size:36px; }
.industry-site .porto-introduction>div:last-child { padding-top:10px; }
.industry-site .porto-serif-lead { color:#525b63; }
.industry-site .porto-service-card h3 { letter-spacing:-.3px; font-size:17px; line-height:1.5; min-height:52px; padding:0 14px; }
.industry-site .porto-service-card .porto-service-photo { filter:grayscale(1) brightness(.72); }
.industry-site .porto-service-icon-band { padding:30px 0; }
.porto-carousel-static>.porto-carousel-prev,.porto-carousel-static>.porto-carousel-next { visibility:hidden; }
.industry-site .porto-company-link { position:absolute; bottom:20px; left:20px; display:inline-flex; gap:20px; align-items:center; padding:12px 18px; background:#fff; color:#222529; font-size:12px; font-weight:600; box-shadow:0 6px 20px #0002; }
.industry-site .porto-company-link:hover { color:var(--industry-accent); }
.industry-site .porto-testimonial-grid blockquote { font-style:normal; }
.industry-site .porto-testimonial-grid figcaption { font-size:15px; }
.industry-site .porto-quote-symbol { width:64px; height:64px; font-size:48px; color:var(--industry-accent); }
.industry-site .porto-news-meta { color:#697078; font-size:11px; }
.industry-site .porto-news-meta span { display:inline; overflow-wrap:anywhere; }
.industry-site .porto-news-grid h3 { line-height:1.5; }
.industry-site .porto-news-grid article { display:flex; flex-direction:column; }
.industry-site .porto-news-grid article>.porto-read-more { margin-top:auto; padding-top:4px; }
.industry-site .page-intro { padding-top:40px; padding-bottom:36px; border-bottom:1px solid #e5e7e9; }
.industry-site .page-intro p { max-width:700px; margin-bottom:0; color:#687078; }
.industry-site .section-heading h1 { font-size:36px; }
.industry-site .content-card { box-shadow:none; transition:transform .2s,box-shadow .2s; }
.industry-site .content-card:hover { box-shadow:0 12px 30px #1f293712; transform:translateY(-3px); }
.industry-site .card-body { display:flex; flex-direction:column; min-height:240px; padding:24px; }
.industry-site .card-body h3 { min-height:60px; font-size:19px; line-height:1.5; }
.industry-site .card-body p { color:#687078; min-height:48px; }
.industry-site .card-bottom { margin-top:auto; }
.industry-site .card-image { height:220px; background:linear-gradient(135deg,#f2f3f4,#e8eaec); }
.industry-site .placeholder-symbol { font-size:64px; color:#9ca3aa; }
.industry-site .image-caption { color:#737b83; letter-spacing:1.5px; }
.industry-site .search { margin-bottom:24px; }
.industry-site .search input { background:#fff; border-color:#dce0e3; }
.industry-site .button { min-height:46px; padding:12px 22px; font-size:13px; font-weight:600; line-height:1.5; }
.industry-site .button.secondary { background:#fff; color:#30363b; border-color:#dce0e3; }
.industry-site .pagination { margin-top:36px; }
.industry-site .about-grid { gap:56px; }
.industry-site .about-grid .lead { margin-top:0; color:#454e56; font-size:20px; }
.industry-site .values { gap:28px; padding:40px 32px; margin-bottom:48px; }
.industry-site .values span { color:var(--industry-accent); }
.industry-site .values h3 { font-size:19px; }
.industry-site .values p { color:#687078; margin-bottom:0; }
/* Remove the green placeholders and copy colours inherited from the old theme. */
.industry-site .product-detail { max-width:1200px; padding:40px 24px 64px; }
.industry-site .product-intro { gap:48px; margin:28px 0 48px; }
.industry-site .product-main-image,.industry-site .product-no-image { background:#f3f4f5; border:1px solid #e5e7e9; border-radius:0; height:350px; }
.industry-site .product-no-image { color:#747d86; font-size:30px; letter-spacing:1px; }
.industry-site .product-no-image span { color:#818a92; }
.industry-site .product-overview h1 { font-size:clamp(28px,3vw,38px); margin:14px 0 18px; }
.industry-site .product-overview .lead { color:#687078; }
.industry-site .product-gallery img,.industry-site .product-sidebar img,.industry-site .product-copy video,.industry-site .product-prose img { border-radius:0; }
.industry-site .product-prose { color:#535d65; }
.industry-site .product-attributes dt,.industry-site .product-related-grid small { color:#687078; }
.industry-site .product-attributes>div,.industry-site .product-copy section,.industry-site .product-related,.industry-site .product-sidebar,.industry-site .product-related-grid>a,.industry-site .product-prose td,.industry-site .product-prose th { border-color:#e1e4e7; }
.industry-site .product-prose th,.industry-site .product-sidebar img { background:#f3f4f5; }
.industry-site .product-prose a,.industry-site .product-downloads { color:var(--industry-accent); }
.industry-site .product-copy h2 { font-size:24px; }
.industry-site .product-related h2 { font-size:28px; }
.industry-site .detail { max-width:900px; padding:0 28px 48px; margin:48px auto 24px; }
.industry-site .detail h1 { font-size:clamp(30px,3.5vw,42px); line-height:1.3; letter-spacing:-.8px; }
.industry-site .detail .lead { color:#687078; font-size:18px; }
/* One well-spaced enquiry form on the Contact page. */
.industry-site .contact-page { max-width:1200px; width:100%; margin:0 auto; padding:48px 24px 64px; }
.industry-site .contact-page>h1 { font-size:clamp(30px,3.4vw,42px); line-height:1.3; letter-spacing:-1px; }
.industry-site .contact-page>.lead { max-width:720px; font-size:16px; line-height:1.8; margin:18px 0 32px; }
.contact-layout { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:48px; align-items:start; }
.contact-layout--form-only { grid-template-columns:minmax(0,760px); }
.industry-site .contact-layout .theme-contact-extra { border:0; border-top:2px solid var(--industry-accent); background:#fff; padding:28px 0; margin:0; gap:22px; }
.industry-site .contact-layout h2 { font-size:21px; line-height:1.4; letter-spacing:-.3px; margin:0 0 4px; }
.industry-site .contact-layout .contact-data-label { display:block; color:#687078; font-size:12px; margin-bottom:5px; }
.industry-site .contact-layout .theme-contact-extra a { color:#353e46; overflow-wrap:anywhere; }
.industry-site .contact-layout .theme-contact-extra a:hover { color:var(--industry-accent); }
.industry-site .contact-layout .theme-map { height:250px; border-radius:0; }
.industry-site .contact-form { margin:0; padding:30px; border:1px solid #e1e4e7; background:#f7f8f9; }
.industry-site .contact-form>h2 { margin-bottom:24px; }
.industry-site .contact-grid { gap:20px; margin-bottom:20px; }
.industry-site .contact-form label.field { display:flex; flex-direction:column; gap:8px; margin:0 0 20px; color:#353e46; font-size:12px; font-weight:500; }
.industry-site .contact-grid label.field { margin-bottom:0; }
.industry-site .contact-form input,.industry-site .contact-form textarea { border:1px solid #d9dee2; background:#fff; color:#353e46; padding:12px 14px; font-size:13px; line-height:1.6; }
.industry-site .contact-form input { min-height:46px; }
.industry-site input:focus,.industry-site textarea:focus { outline:2px solid var(--industry-accent); outline-offset:1px; }
.industry-site input::placeholder,.industry-site textarea::placeholder { color:#818991; opacity:1; }
.industry-site .contact-form .muted { font-size:11px; line-height:1.8; margin:0 0 22px; color:#687078; }
.industry-site .contact-result:empty { display:none; }
.industry-site .contact-product { background:#fff; border-left:3px solid var(--industry-accent); padding:14px; }
.industry-site .theme-footer-form input,.industry-site .theme-footer-form textarea { border-color:#dfe3e6; background:#f7f8f9; }
.industry-site .theme-footer-form button { min-height:48px; }
.industry-site .theme-footer-copyright { color:#a5abb0; }
.industry-site .porto-footer-brand p,.industry-site .porto-footer-bottom nav a { color:#adb2b7; }
.industry-site .porto-footer-bottom nav a:hover { color:#fff; }
.industry-site .theme-footer--white .porto-footer-bottom nav a,.industry-site .theme-footer--white .porto-footer-brand p { color:#687078; }
@media (max-width:1223px) and (min-width:992px) {
  .industry-site .hero { height:600px; min-height:600px; }
  .industry-site .porto-hero-copy { padding-top:104px; }
  .industry-site .theme-header-nav>ul { gap:24px; }
}
@media (max-width:991px) {
  .industry-site .hero { height:555px; min-height:555px; }
  .industry-site .porto-hero-panel { top:32px; min-height:450px; }
  .industry-site .porto-hero-copy { padding-top:90px; }
  .industry-site .theme-header { min-height:84px; }
  .industry-site .porto-introduction { gap:28px; }
  .industry-site .porto-services,.industry-site .porto-testimonials,.industry-site .porto-news { padding-top:110px; padding-bottom:95px; }
  .industry-site .contact-layout { gap:28px; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); }
  .industry-site .product-intro { gap:30px; }
}
@media (max-width:767px) {
  .industry-site .porto-introduction { padding-top:32px; gap:18px; }
  .industry-site .porto-services,.industry-site .porto-testimonials,.industry-site .porto-news { padding-top:96px; padding-bottom:85px; }
  .industry-site .contact-layout,.industry-site .contact-layout--form-only { grid-template-columns:1fr; }
  .industry-site .contact-layout .theme-contact-extra { padding:20px 0; }
  .industry-site .values { padding:32px 24px; gap:24px; }
  .industry-site .product-detail { padding:32px 24px 48px; }
  .industry-site .product-intro { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:575px) {
  .industry-site .theme-header { min-height:80px; }
  .industry-site .site-logo,.industry-site .porto-footer-brand .site-logo { width:140px; height:56px; max-height:56px; }
  .industry-site .porto-top-contact span { font-size:10px; }
  .industry-site .porto-top-contact a { margin-left:6px; }
  .industry-site .hero { height:470px; min-height:470px; }
  .industry-site .porto-hero-panel { top:38px; min-height:0; padding:32px 20px; }
  .industry-site .porto-hero-copy { padding:0; }
  .industry-site .hero .porto-hero-subtitle { font-size:15px; line-height:1.6; }
  .industry-site .porto-hero-cut { height:60px; }
  .industry-site .porto-introduction h2 { font-size:30px; }
  .industry-site .porto-serif-lead { font-size:16px; }
  .industry-site .porto-service-card h3 { min-height:0; }
  .industry-site .porto-services,.industry-site .porto-testimonials,.industry-site .porto-news { padding-top:90px; padding-bottom:80px; }
  .industry-site .porto-news-meta span { display:none; }
  .industry-site .contact-page { padding:32px 20px 44px; }
  .industry-site .contact-form { padding:22px 18px; }
  .industry-site .contact-grid { grid-template-columns:1fr; gap:18px; }
  .industry-site .contact-layout { gap:24px; }
  .industry-site .card-body { min-height:0; }
  .industry-site .card-body h3 { min-height:0; font-size:20px; }
  .industry-site .card-body p { min-height:0; }
  .industry-site .card-bottom { margin-top:8px; }
  .industry-site .product-main-image,.industry-site .product-no-image { height:280px; }
  .industry-site .product-detail { padding:28px 20px 40px; }
  .industry-site .detail { padding:0 20px 36px; margin-top:32px; }
  .industry-site .porto-facilities-media>img { min-height:220px; object-fit:cover; }
}
.industry-site .hero .porto-hero-subtitle { max-width:600px; margin:0 0 19px auto; }
@media (max-width:991px) {
  .industry-site .industry-menu-toggle { margin-left:0; }
  .industry-site .porto-introduction h2 { font-size:30px; line-height:1.25; }
}
/* 2026-10-30: centred contact strip, floating brand card and compact sticky navigation. */
.industry-site .porto-contact-strip { background:#fff; border-top:1px solid #e4e5e6; border-bottom:1px solid #dfe2e5; }
.industry-site .porto-contact-strip>.porto-container { min-height:48px; justify-content:center; gap:0; }
.industry-site .porto-contact-strip .porto-top-contact { display:flex; justify-content:center; align-items:center; gap:64px; width:100%; }
.industry-site .porto-contact-strip .porto-contact-item { display:inline-flex; align-items:center; justify-content:center; gap:8px; margin:0; padding:5px 0; color:#303438; font-size:18px; line-height:1.5; font-weight:400; letter-spacing:-.35px; white-space:nowrap; }
.industry-site .porto-contact-strip .porto-contact-item span { color:inherit; font:inherit; }
.industry-site .porto-contact-strip .porto-contact-item:hover { color:var(--industry-accent); }
.porto-contact-icon { width:27px; height:27px; flex:0 0 auto; }
.porto-contact-icon--mail { width:28px; height:24px; }
.porto-header-sentinel { height:1px; margin-bottom:-1px; pointer-events:none; }
.industry-site .porto-navigation-shell { position:sticky; top:0; z-index:100; background:var(--theme-surface,#fff); border-bottom:1px solid #e5e7e9; box-shadow:0 3px 12px #20283209; transition:box-shadow .24s ease,background .24s ease; }
.industry-site .porto-navigation-shell .theme-header { min-height:88px; padding:0 12px 0 270px; gap:30px; transition:min-height .24s ease,padding .24s ease; }
.industry-site .porto-navigation-shell .theme-header>.brand { position:absolute; top:-42px; left:12px; display:flex; align-items:center; justify-content:center; width:224px; height:136px; max-width:none; margin:0; padding:18px; background:var(--theme-surface,#fff); border:1px solid #f1f2f3; box-shadow:4px 6px 18px #20283224; z-index:3; overflow:hidden; transition:top .24s ease,width .24s ease,height .24s ease,padding .24s ease,box-shadow .24s ease; }
.industry-site .porto-navigation-shell .brand .site-logo { width:188px; height:82px; max-height:82px; object-fit:contain; transition:width .24s ease,height .24s ease; }
.industry-site .porto-navigation-shell .brand .site-logo--padded { object-fit:cover; }
.industry-site .porto-navigation-shell .theme-header-nav { flex:1; margin-left:0; }
.industry-site .porto-navigation-shell .theme-header-nav>ul { justify-content:space-between; gap:24px; }
.industry-site .porto-navigation-shell .theme-header-nav>ul>li>a,.industry-site .porto-navigation-shell .theme-header-nav summary a { position:relative; padding:28px 0; font-size:14px; font-weight:600; line-height:30px; transition:color .2s ease; }
.industry-site .porto-navigation-shell .theme-header-nav>ul>li>a:after { content:''; position:absolute; bottom:17px; left:0; right:0; height:2px; background:var(--industry-accent); transform:scaleX(0); transform-origin:center; transition:transform .2s ease; }
.industry-site .porto-navigation-shell .theme-header-nav>ul>li>a:hover:after,.industry-site .porto-navigation-shell .theme-header-nav>ul>li>a[aria-current=page]:after { transform:scaleX(1); }
.industry-site .porto-navigation-shell .porto-search { margin-left:0; padding-left:24px; border-left-color:#e9ebed; }
.industry-site .porto-navigation-shell .porto-search summary { min-height:40px; min-width:24px; justify-content:center; }
.industry-site .porto-navigation-shell .porto-search form { border:1px solid #e6e8eb; border-top:2px solid var(--industry-accent); box-shadow:0 12px 30px #20283224; top:calc(100% + 14px); }
.industry-site .porto-navigation-shell.is-scrolled { box-shadow:0 5px 24px #20283220; }
.industry-site .porto-navigation-shell.is-scrolled .theme-header { min-height:76px; padding-left:206px; }
.industry-site .porto-navigation-shell.is-scrolled .theme-header>.brand { top:8px; width:162px; height:60px; padding:6px 12px; border-color:#eceef0; box-shadow:0 2px 9px #2028320b; }
.industry-site .porto-navigation-shell.is-scrolled .brand .site-logo { width:136px; height:48px; max-height:48px; }
.industry-site .porto-navigation-shell.is-scrolled .theme-header-nav>ul>li>a,.industry-site .porto-navigation-shell.is-scrolled .theme-header-nav summary a { padding-block:22px; }
.industry-site .porto-navigation-shell.is-scrolled .theme-header-nav>ul>li>a:after { bottom:12px; }
.industry-site { scroll-padding-top:100px; }
.industry-site main [id] { scroll-margin-top:100px; }
@media (max-width:1223px) and (min-width:992px) {
  .industry-site .porto-contact-strip .porto-top-contact { gap:34px; }
  .industry-site .porto-contact-strip .porto-contact-item { font-size:15px; }
  .industry-site .porto-navigation-shell .theme-header { padding-left:240px; gap:22px; }
  .industry-site .porto-navigation-shell .theme-header>.brand { width:200px; height:130px; padding:14px; }
  .industry-site .porto-navigation-shell .brand .site-logo { width:170px; height:76px; max-height:76px; }
  .industry-site .porto-navigation-shell .theme-header-nav>ul { gap:20px; }
  .industry-site .porto-navigation-shell .porto-search { padding-left:18px; }
}
@media (max-width:991px) {
  .industry-site .porto-contact-strip .porto-top-contact { gap:28px; }
  .industry-site .porto-contact-strip .porto-contact-item { font-size:14px; }
  .porto-contact-icon { width:22px; height:22px; }
  .porto-contact-icon--mail { width:24px; height:20px; }
  .industry-site .porto-navigation-shell .theme-header { min-height:88px; padding:6px 24px; gap:18px; flex-wrap:nowrap; }
  .industry-site .porto-navigation-shell .theme-header>.brand { position:relative; top:auto; left:auto; width:174px; height:72px; padding:8px 12px; flex-shrink:0; border-color:#f0f1f2; box-shadow:2px 3px 12px #20283215; }
  .industry-site .porto-navigation-shell .brand .site-logo { width:148px; height:54px; max-height:54px; }
  .industry-site .porto-navigation-shell .theme-header-nav { position:absolute; top:100%; left:0; right:0; width:100%; max-height:calc(100dvh - 100px); overflow-y:auto; background:var(--theme-surface,#fff); padding:16px 24px 20px; border-top:1px solid #edf0f2; border-bottom:1px solid #e2e6e9; box-shadow:0 12px 22px #20283216; }
  .industry-site .porto-navigation-shell .theme-header-nav>ul { display:block; }
  .industry-site .porto-navigation-shell .theme-header-nav>ul>li>a,.industry-site .porto-navigation-shell .theme-header-nav summary a { padding:10px 0; line-height:26px; }
  .industry-site .porto-navigation-shell .theme-header-nav>ul>li>a:after { display:none; }
  .industry-site .porto-navigation-shell .porto-search { margin-left:auto; padding-left:0; border:0; }
  .industry-site .porto-navigation-shell .industry-menu-toggle { margin-left:0; min-height:42px; min-width:38px; color:var(--theme-header-text,#333); }
  .industry-site .porto-navigation-shell.is-scrolled .theme-header { min-height:76px; padding:6px 24px; }
  .industry-site .porto-navigation-shell.is-scrolled .theme-header>.brand { top:auto; width:154px; height:60px; padding:6px 10px; }
  .industry-site .porto-navigation-shell.is-scrolled .brand .site-logo { width:132px; height:46px; max-height:46px; }
}
@media (max-width:575px) {
  .industry-site .porto-contact-strip>.porto-container { min-height:66px; padding:8px 16px; }
  .industry-site .porto-contact-strip .porto-top-contact { flex-direction:column; gap:4px; }
  .industry-site .porto-contact-strip .porto-contact-item { font-size:12px; gap:7px; line-height:20px; padding:0; letter-spacing:0; }
  .porto-contact-icon { width:19px; height:19px; }
  .porto-contact-icon--mail { width:20px; height:17px; }
  .industry-site .porto-navigation-shell .theme-header { min-height:80px; padding:6px 20px; gap:14px; }
  .industry-site .porto-navigation-shell .theme-header>.brand { width:154px; height:66px; padding:7px 10px; }
  .industry-site .porto-navigation-shell .brand .site-logo { width:132px; height:50px; max-height:50px; }
  .industry-site .porto-navigation-shell .porto-search form { right:-52px; width:min(300px,calc(100vw - 40px)); }
  .industry-site .porto-navigation-shell.is-scrolled .theme-header { min-height:72px; padding:6px 20px; }
  .industry-site .porto-navigation-shell.is-scrolled .theme-header>.brand { width:140px; height:58px; }
  .industry-site .porto-navigation-shell.is-scrolled .brand .site-logo { width:118px; height:44px; max-height:44px; }
}
/* Restore the existing quote action alongside the centred contact details. */
.industry-site .porto-contact-strip>.porto-container { display:grid; grid-template-columns:156px minmax(0,1fr) 156px; gap:0; }
.industry-site .porto-contact-strip .porto-top-contact { grid-column:2; }
.industry-site .porto-contact-strip .porto-solid-arrow { display:inline-flex; grid-column:3; align-self:stretch; min-width:156px; margin:0; padding:10px 20px; font-size:11px; line-height:20px; min-height:48px; }
@media (max-width:991px) {
  .industry-site .porto-contact-strip>.porto-container { grid-template-columns:minmax(0,1fr) 132px; gap:16px; }
  .industry-site .porto-contact-strip .porto-top-contact { grid-column:1; gap:18px; }
  .industry-site .porto-contact-strip .porto-contact-item { font-size:13px; }
  .industry-site .porto-contact-strip .porto-solid-arrow { grid-column:2; min-width:132px; padding-inline:14px; font-size:10px; }
}
/* Keep the mobile utility bar and navigation on one row each. */
.industry-site .porto-contact-strip .porto-quote-short { display:none; }
@media (max-width:767px) {
  .industry-site .porto-contact-strip { background:#f6f8fa; border-top:0; }
  .industry-site .porto-contact-strip>.porto-container {
    display:flex; align-items:center; justify-content:space-between;
    gap:8px; min-height:48px; padding:3px 14px;
  }
  .industry-site .porto-contact-strip .porto-top-contact {
    flex:1; width:auto; min-width:0; flex-direction:row; justify-content:flex-start; gap:2px;
  }
  .industry-site .porto-contact-strip .porto-contact-item {
    font-size:12px; min-width:0; min-height:44px; padding:0 6px;
    display:block; align-content:center; overflow:hidden; text-overflow:ellipsis;
  }
  .industry-site .porto-contact-strip .porto-contact-item:has(.porto-contact-icon) {
    display:grid; place-items:center; width:44px; padding:0; flex:none;
  }
  .industry-site .porto-contact-strip .porto-contact-item:has(.porto-contact-icon) span { display:none; }
  .industry-site .porto-contact-strip .porto-contact-icon { width:17px; height:17px; }
  .industry-site .porto-contact-strip .porto-solid-arrow {
    flex:none; align-self:center; min-width:0; min-height:44px; padding:0 13px;
    border-radius:4px; clip-path:none; font-size:12px; line-height:1;
  }
  .industry-site .porto-contact-strip .porto-solid-arrow::after,
  .industry-site .porto-contact-strip :is(.porto-quote-label,.porto-quote-arrow) { display:none; }
  .industry-site .porto-contact-strip .porto-quote-short { display:inline; }
  .industry-site .porto-navigation-shell .theme-header,
  .industry-site .porto-navigation-shell.is-scrolled .theme-header { min-height:62px; padding:5px 14px; gap:2px; }
  .industry-site .porto-navigation-shell .theme-header>.brand,
  .industry-site .porto-navigation-shell.is-scrolled .theme-header>.brand {
    justify-content:flex-start; width:auto; height:auto; max-width:calc(100% - 94px);
    min-width:0; flex-shrink:1; padding:0; border:0; box-shadow:none; background:transparent;
  }
  .industry-site .porto-navigation-shell .brand .site-logo,
  .industry-site .porto-navigation-shell.is-scrolled .brand .site-logo {
    width:min(160px,100%); height:46px; max-height:46px;
  }
  .industry-site .porto-navigation-shell .porto-search summary,
  .industry-site .porto-navigation-shell .industry-menu-toggle {
    display:grid; place-items:center; width:44px; min-width:44px; min-height:44px; padding:0;
  }
  .industry-site .porto-navigation-shell .industry-menu-toggle { margin-left:auto; }
  .industry-site .porto-navigation-shell .industry-menu-toggle:has(~ .porto-search) { margin-left:0; }
  .industry-site .porto-navigation-shell .porto-search form {
    right:-46px; top:100%; width:min(310px,calc(100vw - 28px));
  }
}
/* 2026-11-01: show the whole content image; reserve space for hover motion. */
.industry-site .card-image { overflow:hidden; background:#f7f8f9; }
.industry-site .card-image img,
.industry-site .porto-service-card .porto-service-photo,
.industry-site .porto-news-grid img,
.industry-site .product-main-image,
.industry-site .product-gallery img,
.industry-site .product-sidebar img,
.industry-site .product-related-grid img,
.industry-site .porto-facilities-media>img {
  object-fit:contain; object-position:center; background:#f7f8f9;
  padding:14px; transform:scale(1); filter:none;
  transition:transform .35s ease,filter .35s ease,box-shadow .35s ease;
}
.industry-site .porto-service-card .porto-service-photo { height:240px; }
.industry-site .porto-news-grid img { height:240px; }
.industry-site .product-gallery img { padding:5px; }
.industry-site .detail-image { width:100%; height:auto; max-height:none; object-fit:contain; }
.industry-site .product-prose img,
.industry-site .rich-prose img { max-width:100%; height:auto; object-fit:contain; }
.industry-site .porto-special-image { overflow:hidden; }
.industry-site .porto-special-image img { height:auto; object-fit:contain; padding:14px; background:#f7f8f9; transition:transform .35s ease; }
.industry-site .theme-slide img { height:auto; aspect-ratio:auto; max-height:none; object-fit:contain; }
@media (hover:hover) and (pointer:fine) {
  .industry-site .content-card:hover .card-image img,
  .industry-site .content-card:focus-visible .card-image img,
  .industry-site .porto-service-card:hover .porto-service-photo,
  .industry-site .porto-service-card:focus-visible .porto-service-photo,
  .industry-site .porto-news-grid article:hover img,
  .industry-site .porto-news-grid a:focus-visible img,
  .industry-site .product-main-image:hover,
  .industry-site .product-gallery a:hover img,
  .industry-site .product-gallery a:focus-visible img,
  .industry-site .product-sidebar a:hover img,
  .industry-site .product-related-grid a:hover img,
  .industry-site .porto-special-image:hover img,
  .industry-site .porto-facilities-media:hover>img { transform:translateY(-2px) scale(1.025); }
  .industry-site .product-main-image:hover { box-shadow:0 10px 28px #20283212; }
}
@media (max-width:575px) {
  .industry-site .porto-service-card .porto-service-photo { height:240px; aspect-ratio:auto; }
  .industry-site .porto-news-grid img { height:220px; aspect-ratio:auto; }
}
@media (prefers-reduced-motion:reduce) {
  .industry-site .card-image img,
  .industry-site .porto-service-card .porto-service-photo,
  .industry-site .porto-news-grid img,
  .industry-site .product-main-image,
  .industry-site .product-gallery img,
  .industry-site .product-sidebar img,
  .industry-site .product-related-grid img,
  .industry-site .porto-special-image img,
  .industry-site .porto-facilities-media>img { transform:none!important; transition:none!important; }
}
.industry-site .porto-hero-top>img,
.industry-site .porto-hero-inset img { object-fit:contain; object-position:center; background:#f7f8f9; }

/* Shared flyouts for categories and configured navigation links. */
.industry-site .theme-header-nav summary::marker { content:''; }
.industry-site .theme-header-nav summary>a { flex:1; min-width:0; }
.industry-site .theme-header-nav .nav-flyout {
  background:var(--theme-surface,#fff);
  color:var(--theme-header-text,#333);
  gap:0;
  border:0;
  border-radius:0;
  padding:10px 0;
}
.industry-site .porto-navigation-shell .theme-header-nav .nav-flyout a {
  padding:11px 20px;
  font-size:14px;
  font-weight:400;
  line-height:1.5;
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
}
.industry-site .theme-header-nav .nav-flyout li { min-width:0; }
.industry-site .theme-header-nav .nav-flyout summary {
  display:grid;
  grid-template-columns:minmax(0,1fr) 6px;
  align-items:center;
  gap:8px;
  padding-inline-end:19px;
}
.industry-site .porto-navigation-shell .theme-header-nav .nav-flyout summary > a { padding-inline-end:0; }
.industry-site .theme-header-nav .nav-flyout summary::after {
  content:'';
  width:6px;
  height:6px;
  margin-inline-end:0;
  border:solid currentColor;
  border-width:0 1.5px 1.5px 0;
  transform:rotate(-45deg);
  flex:none;
}
.industry-site .theme-header-nav .nav-flyout a:hover,
.industry-site .theme-header-nav .nav-flyout a:focus-visible,
.industry-site .theme-header-nav .nav-flyout details[open]>summary {
  color:var(--industry-accent);
  background:color-mix(in srgb, currentColor 5%, var(--theme-surface,#fff));
  opacity:1;
}
@media (min-width:992px) {
  .industry-site .theme-header-nav .nav-flyout {
    position:absolute;
    top:100%;
    left:0;
    right:auto;
    width:270px;
    margin:0;
    box-shadow:0 10px 24px #20283226;
    z-index:30;
  }
  .industry-site .theme-header-nav .nav-flyout .nav-flyout { top:0; left:100%; }
  .industry-site .theme-header-nav .nav-flyout .nav-flyout.opens-left { left:auto; right:100%; }
}
@media (max-width:991px) {
  .industry-site .theme-header-nav .nav-flyout {
    position:static;
    min-width:0;
    margin:0 0 0 12px;
    padding:0 0 0 5px;
    border-inline-start:1px solid #dfe4eb;
    box-shadow:none;
  }
  .industry-site .theme-header-nav summary::after { transform:rotate(45deg); }
  .industry-site .theme-header-nav details[open]>summary::after { transform:rotate(225deg); }
}

/* Homepage hero: keep the angled split, with independent copy and image areas. */
.industry-site .porto-home-hero {
  --hero-ink: #19232d;
  --hero-muted: #43515e;
  --hero-blue: #005b9e;
  --hero-orange: #b65c19;
  --hero-stage: #13212c;
  --hero-surface: #f1f4f7;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  background: var(--hero-surface);
  min-height: 570px;
  height: auto;
}
.porto-home-hero .porto-hero-media {
  grid-column: 2;
  grid-row: 1;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-width: 0;
  background: radial-gradient(ellipse at 76% 29%, #304653, var(--hero-stage) 74%);
}
.porto-home-hero .porto-hero-background {
  inset: 0;
  width: 100%;
  object-position: center;
  z-index: 0;
  opacity: .4;
  filter: saturate(.58);
}
.industry-site .porto-home-hero .porto-hero-panel {
  grid-column: 1;
  grid-row: 1;
  position: static;
  display: grid;
  align-items: center;
  width: 100%;
  z-index: 1;
  min-height: 570px;
  padding: 64px clamp(26px, 4vw, 76px) 86px;
  background: linear-gradient(115deg, #fff, var(--hero-surface) 75%, #e6ecf1);
}
.porto-home-hero .porto-hero-panel::after,
.porto-home-hero .porto-hero-inset::before,
.porto-home-hero .porto-hero-inset::after,
.porto-home-hero .porto-outline-arrow::after { display: none; }
.industry-site .porto-home-hero .porto-hero-copy {
  width: 100%;
  max-width: 610px;
  margin-left: auto;
  padding: 0;
  text-align: left;
}
.industry-site .hero.porto-home-hero .porto-hero-kicker {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  color: var(--hero-blue);
  font-family: Consolas, "Courier New", monospace;
  font-size: clamp(12px, 1vw, 15px);
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.45;
}
.porto-home-hero .porto-hero-kicker::before {
  content: "";
  flex: 0 0 28px;
  height: 7px;
  background: linear-gradient(115deg, var(--hero-orange) 0 25%, #0b79be 26%);
  clip-path: polygon(0 0, 100% 0, 82% 100%, 0 100%);
}
.industry-site .hero.porto-home-hero h1 {
  margin: 0 0 19px;
  color: var(--hero-ink);
  font-size: clamp(32px, 3.4vw, 64px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -.045em;
  white-space: normal;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
.industry-site .hero.porto-home-hero .porto-hero-subtitle {
  max-width: 45ch;
  margin: 0 0 26px;
  color: var(--hero-muted);
  font-size: clamp(15px, 1.2vw, 19px);
  line-height: 1.65;
}
.porto-home-hero .porto-outline-arrow {
  display: inline-grid;
  grid-template-columns: minmax(0, 1fr) 30px;
  align-items: center;
  gap: 16px;
  min-width: 0;
  min-height: 52px;
  max-width: 100%;
  margin: 0;
  padding: 10px 12px 10px 17px;
  border: 1px solid #25323d;
  border-radius: 3px;
  background: #25323d;
  color: #fff;
  font-weight: 700;
  letter-spacing: .005em;
  text-align: left;
  transition: background .2s ease, border-color .2s ease;
}
.porto-home-hero .porto-hero-action-label { align-self: center; }
.porto-home-hero .porto-hero-action-cap {
  display: grid;
  place-items: center;
  min-height: 28px;
  border-left: 1px solid #ffffff36;
  transition: transform .2s ease;
}
.porto-home-hero .porto-outline-arrow:hover { color: #fff; border-color: #15212b; background: #15212b; }
.porto-home-hero .porto-outline-arrow:hover .porto-hero-action-cap,
.porto-home-hero .porto-outline-arrow:focus-visible .porto-hero-action-cap { transform: translateX(4px); }
.porto-home-hero .porto-outline-arrow:focus-visible { outline: 2px solid var(--hero-blue); outline-offset: 4px; }
.porto-home-hero .porto-hero-action-icon {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
}
.porto-home-hero .porto-hero-top,
.porto-home-hero .porto-hero-inset {
  position: absolute;
  width: auto;
  height: auto;
  max-width: none;
  padding: 0;
  border: 0;
  overflow: hidden;
}
.porto-home-hero .porto-hero-top {
  inset: 3% -3% 40% 30%;
  z-index: 1;
  opacity: .77;
  clip-path: polygon(14% 0, 100% 0, 100% 100%, 0 100%);
  mask-image: linear-gradient(165deg, transparent 0, #000 15% 68%, transparent 98%);
}
.porto-home-hero .porto-hero-inset {
  inset: 33% 2% 6% 3%;
  z-index: 2;
  clip-path: polygon(16% 0, 100% 0, 92% 100%, 0 100%);
  mask-image: linear-gradient(130deg, transparent 0, #000 17% 83%, transparent 100%);
}
.industry-site .porto-home-hero .porto-hero-top > img,
.industry-site .porto-home-hero .porto-hero-inset img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 56%;
  filter: saturate(.72);
  box-shadow: none;
  background: transparent;
}
@media (prefers-reduced-motion: no-preference) {
  .porto-home-hero .porto-hero-top {
    --hero-image-offset: 45px;
    --hero-image-opacity: .77;
    animation: porto-hero-image-enter .9s .09s cubic-bezier(.18,.72,.22,1) both;
  }
  .porto-home-hero .porto-hero-inset {
    --hero-image-offset: -36px;
    --hero-image-opacity: 1;
    animation: porto-hero-image-enter  .65s .12s cubic-bezier(.18,.72,.22,1) both;
  }
  .porto-home-hero .porto-hero-inset img { transition: scale .45s ease; }
  .porto-home-hero .porto-hero-media:hover .porto-hero-inset img { scale: 1.02; }
  .porto-home-hero .porto-hero-copy > * {
    animation: porto-hero-enter .55s cubic-bezier(.2,.7,.2,1) both;
  }
  .porto-home-hero .porto-hero-copy h1 { animation-delay: .07s; }
  .porto-home-hero .porto-hero-copy .porto-hero-subtitle { animation-delay: .13s; }
  .porto-home-hero .porto-hero-copy .porto-outline-arrow { animation-delay: .19s; }
}
@keyframes porto-hero-image-enter {
  from { opacity: 0; transform: translate3d(var(--hero-image-offset), 14px, 0) scale(1.04); }
  to { opacity: var(--hero-image-opacity); transform: translate3d(0, 0, 0) scale(1); }
}
@keyframes porto-hero-enter {
  from { opacity: 0; translate: 0 8px; }
  to { opacity: 1; translate: 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  .porto-home-hero .porto-outline-arrow,
  .porto-home-hero .porto-hero-action-cap { transition: none; }
  .porto-home-hero .porto-outline-arrow:hover,
  .porto-home-hero .porto-outline-arrow:hover .porto-hero-action-cap,
  .porto-home-hero .porto-outline-arrow:focus-visible .porto-hero-action-cap { transform: none; }
}
.industry-site .porto-home-hero .porto-hero-cut { height: 46px; }
@media (max-width: 700px) {
  .industry-site .porto-home-hero { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .industry-site .porto-home-hero .porto-hero-panel {
    width: 100%;
    min-height: 0;
    padding: 42px 24px 37px;
  }
  .industry-site .porto-home-hero .porto-hero-copy { max-width: 540px; margin: auto; }
  .industry-site .hero.porto-home-hero h1 { font-size: clamp(30px, 8vw, 43px); text-wrap: initial; }
  .porto-home-hero .porto-hero-media { grid-column: 1; grid-row: 2; aspect-ratio: 1.9 / 1; }
  .porto-home-hero .porto-hero-top { display: none; }
  .porto-home-hero .porto-hero-inset {
    display: block;
    inset: 1% 0 0;
    clip-path: none;
    mask-image: linear-gradient(to bottom, #000 76%, transparent 100%);
  }
  .industry-site .porto-home-hero .porto-hero-cut { height: 23px; }
}

/* Homepage machine illustrations and scroll entry. */
.industry-site .porto-service-icon-band {
  display: grid;
  place-items: center;
  padding: 18px 0;
  background: #263644;
  color: #edf4f8;
  transition: background-color .22s ease;
}
.industry-site .porto-service-icon-band .porto-service-icon {
  display: block;
  width: 44px;
  height: 44px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .22s ease;
}
.porto-service-icon .porto-icon-detail { stroke: #8fcbec; }
.industry-site .porto-service-card:is(:hover, :focus-visible) .porto-service-icon-band { background: #1a2a38; }
.industry-site .porto-service-card:focus-visible { outline: 2px solid #28638c; outline-offset: -2px; }
@media (prefers-reduced-motion: no-preference) {
  .porto-home-enter { animation: porto-home-scroll-enter .48s cubic-bezier(.2,.68,.24,1) both; }
  .industry-site .porto-service-card:is(:hover, :focus-visible) .porto-service-icon { transform: translateY(-2px); }
  .porto-special .porto-read-more span,
  .porto-introduction .porto-read-more span,
  .porto-facilities .porto-read-more span {
    display: inline-block;
    transition: transform .2s ease;
  }
  :is(.porto-special,.porto-introduction,.porto-facilities) .porto-read-more:is(:hover,:focus-visible) span { transform: translateX(4px); }
}
@keyframes porto-home-scroll-enter {
  from { opacity: .8; translate: 0 8px; }
  to { opacity: 1; translate: 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  .industry-site .porto-service-icon-band,
  .industry-site .porto-service-icon-band .porto-service-icon { transition: none; }
}
.industry-site .porto-contact-strip :is(.porto-quote-label,.porto-quote-short) { font-size:inherit; }

/* Keep the original timeline layout and stagger only its entrance. */
@media (prefers-reduced-motion: no-preference) {
  .porto-process ol.porto-home-enter { animation:none; }
  .porto-process ol.porto-home-enter li { animation:porto-home-scroll-enter .38s ease-out both; }
  .porto-process ol.porto-home-enter li:nth-child(2) { animation-delay:60ms; }
  .porto-process ol.porto-home-enter li:nth-child(3) { animation-delay:120ms; }
}
