/* Visual review candidate. Load after route CSS and template-components.css.
   Photo classes are explicit; scientific figures and tool labels retain their own sizes. */
body.flj-v2{--flj-copy-size:17px;--flj-card-copy-size:16px;--flj-small-copy-size:14px;--flj-menu-size:15px;--ast-global-color-0:var(--flj-green);--ast-global-color-1:var(--flj-green-hover);--ast-global-color-2:var(--flj-text);--ast-global-color-3:var(--flj-muted);}

/* Astra's entry-content heading margins were winning the source page reset. */
body.flj-v2 #flj-content :where(h1,h2,h3):not(:where(figure *,[class*="-diagram"] *,[class*="-schematic"] *,.flj-media--diagram *)){margin-top:0;}
body.flj-v2 #flj-content :where(h1):not(:where(figure *)){margin-bottom:0;}
body.flj-v2 #flj-content :where(h2,h3):not(:where(figure *,[class*="-diagram"] *,[class*="-schematic"] *,.flj-media--diagram *)){margin-bottom:.6em;}
body.flj-v2 #flj-content :where(.section-head,.section-heading,.rs-heading,.cp-section-head,.asm-section-head) :where(h2,h3){margin:0;}
body.flj-v2 #flj-content :where(p,li):not(:where(figure *,.flj-media--diagram *,[class*="-diagram"] *,[class*="-schematic"] *,[id*="calculator"] *,[class*="-app"] *,[class*="-workspace"] *)){font-size:var(--flj-copy-size);line-height:1.75;}
body.flj-v2 #flj-content :where(p):not(:where(figure *,.flj-media--diagram *,[id*="calculator"] *,[class*="-app"] *)){margin-top:0;}
body.flj-v2 #flj-content :where(.micro,.eyebrow,.table-note,.note,.breadcrumb,.breadcrumb a,.breadcrumbs,.breadcrumbs a){font-size:var(--flj-small-copy-size);line-height:1.55;}
body.flj-v2 #flj-content :where(p.micro,p.eyebrow){margin:0 0 14px;}
body.flj-v2 #flj-content :where(.hero-copy>p,.rs-lead,[class$="-lead"]){font-size:18px;line-height:1.7;}
body.flj-v2 #flj-content .hero-copy>p{margin:22px 0 26px;}
body.flj-v2 .hero .visual-caption>strong{flex:none;white-space:nowrap;}
body.flj-v2 #flj-content .visual-caption p{font-size:14px;line-height:1.55;}
body.flj-v2 #flj-content :where(table) :where(th,td){font-size:16px;line-height:1.6;}
body.flj-v2 #flj-content :where(figcaption){font-size:14px;line-height:1.55;}
body.flj-v2 :where(.btn,.text-link){font-size:15px;line-height:1.45;}
body.flj-v2 .header :where(.nav-group>summary,.nav-direct,.nav-quote){font-size:var(--flj-menu-size);line-height:1.4;}
body.flj-v2 .header .dropdown :where(.menu-column>a,.mf-links>a,.resource-knowledge>a,.mega-footer>a){font-size:15px;line-height:1.5;min-height:42px;}
body.flj-v2 .header .dropdown :where(.menu-column>h3,.mf-category){font-size:14px;line-height:1.5;}
body.flj-v2 .header .dropdown :where(.mf-panel-heading h3){font-size:18px;line-height:1.35;}
body.flj-v2 .footer :where(a:not(.brand),p){font-size:14px;line-height:1.65;}
body.flj-v2 .flj-native-form :where(label,input,select,textarea){font-size:16px;line-height:1.5;}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) :where(label,input,select,textarea){font-size:16px;line-height:1.5;}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) .srfm-submit-button{min-height:48px;font-size:16px;background:var(--flj-green);border-color:var(--flj-green);color:#fff;}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) .srfm-submit-button:hover{background:var(--flj-green-hover);border-color:var(--flj-green-hover);}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) .srfm-submit-button :where(span,div){color:#fff;}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) .srfm-classic-upload-label{font-size:16px;color:var(--flj-text);border-color:var(--flj-border);background:var(--flj-bg);}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) .srfm-classic-upload-label:focus-within{border-color:var(--flj-green);}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) .srfm-block-label{color:var(--flj-text);}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),textarea,select):not([aria-invalid="true"]){color:var(--flj-text);background:var(--flj-bg);border-color:var(--flj-border);}
body.flj-v2 .srfm-form:is(#srfm-form-305,#srfm-form-4905) .srfm-classic-upload-label :where(span){color:inherit;}
body.flj-v2 .elementor .flj-v2-article-title :where(h1){margin:0;}
body.flj-v2 .elementor .flj-v2-article-content :where(h1){margin:0 0 .6em;font-size:clamp(34px,4.5vw,54px);line-height:1.12;}

/* Service cards share one image band and align their reading/action rows. */
body.flj-v2 #services .service-card{display:flex;flex-direction:column;min-width:0;}
body.flj-v2 #services .service-image{display:block;position:relative;flex:none;width:100%;height:auto;aspect-ratio:4/3;overflow:hidden;background:var(--flj-soft);}
body.flj-v2 #services .service-image>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;padding:16px;object-fit:contain;object-position:center;}
body.flj-v2 #services .service-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:24px;}
body.flj-v2 #services .service-body>.micro{min-height:2.9em;margin:0 0 8px;font-size:13px;line-height:1.45;}
body.flj-v2 #services .service-body>h3{min-height:2.3em;margin:0 0 14px;font-size:24px;line-height:1.15;}
body.flj-v2 #services .service-body>p:not(.micro){margin:0;font-size:var(--flj-card-copy-size);line-height:1.7;}
body.flj-v2 #services .service-body>.text-link{margin-top:auto;padding-top:20px;font-size:15px;line-height:1.45;}
body.flj-v2 #services .service-number{z-index:1;}

/* Apply flj-photo only to verified documentary photos. Remove legacy inline
   object-fit during content cleanup; important is confined to this explicit role. */
body.flj-v2 .flj-photo-frame{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--flj-soft);}
body.flj-v2 .flj-photo-frame>img.flj-photo,body.flj-v2 #services .service-image>img.flj-photo{width:100%;height:100%;max-height:none;padding:0;object-fit:cover!important;object-position:var(--flj-photo-position,50% 50%);}
body.flj-v2 img.flj-photo--reel-counting{--flj-photo-position:50% 70%;}
body.flj-v2 img.flj-photo--layout-review{--flj-photo-position:50% 55%;}
body.flj-v2 img.flj-photo--programming{--flj-photo-position:50% 60%;}
body.flj-v2 img.flj-photo--first-article{--flj-photo-position:50% 65%;}
body.flj-v2 img.flj-photo--aoi{--flj-photo-position:50% 45%;}
body.flj-v2 .about-equipment-grid article>img.flj-photo{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/3;padding:0;object-fit:cover!important;object-position:var(--flj-photo-position,50% 50%);}
body.flj-v2 #equipment .equipment-card figure>img.flj-photo{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/3;padding:0;object-fit:cover!important;object-position:var(--flj-photo-position,50% 50%);}
body.flj-v2 .company-photo-pair figure>img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/3;padding:0;object-fit:cover!important;object-position:var(--flj-photo-position,50% 50%);}
body.flj-v2 .factory-inspection-grid article>img.flj-photo{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/3;padding:0;object-fit:cover!important;object-position:var(--flj-photo-position,50% 50%);}
body.flj-v2 .factory-photo-card>img.flj-photo--programming{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/3;padding:0;object-fit:cover!important;object-position:var(--flj-photo-position,50% 60%);}
body.flj-v2 img.flj-product{object-fit:contain!important;object-position:center;transform:none;}
body.flj-v2 #services .service-image>img.flj-product{padding:16px;}
body.flj-v2 img.flj-diagram,body.flj-v2 .flj-media--diagram>img{object-fit:contain!important;transform:none;}
body.flj-v2 img.flj-photo--full-frame{display:block;width:100%;height:auto;max-height:none!important;padding:0;object-fit:contain!important;transform:none;}

/* A portrait that must show the whole operation gets a portrait layout,
   never an arbitrary wide white box or an unreviewed destructive crop. */
body.flj-v2 .flj-photo-frame--portrait{width:min(100%,320px);max-width:100%;height:auto;aspect-ratio:auto;margin-inline:auto;}
body.flj-v2 .flj-photo-frame--portrait>img.flj-photo{position:static;width:100%;height:auto;aspect-ratio:auto var(--flj-portrait-ratio,9 / 16)!important;max-height:none!important;object-fit:contain!important;padding:0;}
body.flj-v2 .flj-photo-frame--portrait>img:is(.wp-image-5382,.wp-image-5384,.wp-image-5389,.wp-image-5392){--flj-portrait-ratio:3 / 4;}
body.flj-v2 #flj-content :is(.et-workbench,.tw-app,.st-page) label{color:var(--flj-text);}
body.flj-v2 #flj-content :is(.et-button,.st-button,.tw-button):not(.secondary):not(.st-secondary):not(.tw-secondary):is(:hover,:focus,:active){background:var(--flj-green-hover);border-color:var(--flj-green-hover);color:#fff;}
body.flj-v2 #flj-content .industry h3>span[aria-hidden="true"]{font-family:Arial,Helvetica,"DejaVu Sans",sans-serif;}
body.flj-v2 #ast-scroll-top{background:var(--flj-navy);color:#fff;border-radius:4px;}

/* The common prototype nav rule was hiding native pagination on mobile. */
body.flj-v2 .flj-v2-archive-posts .elementor-post__title{margin:0 0 12px;font-size:21px;line-height:1.3;}
body.flj-v2 .flj-v2-archive-posts .elementor-post__excerpt p{font-size:16px;line-height:1.7;}
body.flj-v2 .flj-v2-archive-posts .elementor-post__meta-data{font-size:14px;line-height:1.5;}
body.flj-v2 .flj-v2-archive-posts .elementor-post__read-more{font-size:15px;line-height:1.5;}
body.flj-v2 .flj-v2-archive-posts nav.elementor-pagination{display:flex;position:static;visibility:visible;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;max-height:none;margin:32px 0 0;padding:0;overflow:visible;border:0;}
body.flj-v2 .flj-v2-archive-posts .elementor-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:0;padding:8px 12px;border:1px solid var(--flj-border);border-radius:4px;font-size:16px;line-height:1;color:var(--flj-text);background:var(--flj-bg);}
body.flj-v2 .flj-v2-archive-posts .elementor-pagination .page-numbers.current{border-color:var(--flj-navy);background:var(--flj-navy);color:#fff;}
body.flj-v2 .flj-v2-archive-posts .elementor-pagination a.page-numbers:hover{border-color:var(--flj-green);color:var(--flj-green);}
body.flj-v2 .flj-v2-archive-posts .elementor-pagination .page-numbers.dots{min-width:24px;padding-inline:0;border-color:transparent;}
body.flj-v2 .flj-owned-gallery-section{padding:64px 0;}
body.flj-v2 .flj-owned-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;}
body.flj-v2 .flj-owned-gallery-card{min-width:0;margin:0;overflow:hidden;border:1px solid var(--flj-border);border-radius:4px;background:var(--flj-bg);}
body.flj-v2 .flj-owned-gallery-card img{display:block;width:100%;height:auto;max-height:none;padding:0;object-fit:contain!important;transform:none;}
body.flj-v2 .flj-owned-gallery-card :where(figcaption,.flj-owned-gallery-caption){padding:18px 20px;font-size:15px;line-height:1.65;}
body.flj-v2 .flj-owned-gallery-card figcaption>strong{display:block;margin-bottom:8px;font-size:20px;line-height:1.35;color:var(--flj-text);}
body.flj-v2 .flj-owned-gallery-card figcaption>span{display:block;font-size:16px;line-height:1.7;color:var(--flj-muted);}
body.flj-v2 #flj-content .flj-owned-gallery-card :where(h3){margin:0 0 8px;font-size:21px;line-height:1.3;}
body.flj-v2 #flj-content .flj-owned-gallery-card :where(p){margin:0;font-size:16px;line-height:1.7;}

@media(min-width:1101px) and (max-width:1250px){body.flj-v2 .header .nav-group>summary{font-size:14px;}}
@media(min-width:961px){body.flj-v2 .flj-portrait-hero{grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:48px;align-items:center;}}
@media(min-width:961px){body.flj-v2 #flj-content .flj-portrait-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:48px;align-items:center;}body.flj-v2 #flj-content .flj-portrait-row--media-first{grid-template-columns:minmax(240px,320px) minmax(0,1fr);}}
@media(max-width:960px){body.flj-v2 #flj-content .flj-portrait-row{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;}}
@media(max-width:760px){
body.flj-v2{--flj-copy-size:16px;}
body.flj-v2 #flj-content :where(table) :where(th,td){font-size:15px;}
body.flj-v2 #services .service-body{padding:22px;}
body.flj-v2 #services .service-body>h3,body.flj-v2 #services .service-body>.micro{min-height:0;}
body.flj-v2 #services .service-body>.text-link{padding-top:18px;}
body.flj-v2 .flj-photo-frame--portrait{width:min(100%,300px);}
body.flj-v2 #ast-scroll-top{right:16px;bottom:88px;}
body.flj-v2 .flj-owned-gallery-section{padding:44px 0;}
body.flj-v2 .flj-owned-gallery{grid-template-columns:minmax(0,1fr);gap:20px;}
}
@media(max-width:600px){
body.flj-v2 #tw-electrical-values dl{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;}
body.flj-v2 #tw-electrical-values dd{white-space:nowrap;overflow-wrap:normal;word-break:normal;}
body.flj-v2 #tw-calculator .tw-export-buttons{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;}
body.flj-v2 #tw-calculator .tw-export-buttons>button{width:100%;min-width:0;max-width:100%;height:auto;min-height:44px;padding:12px 14px;white-space:normal;font-size:15px;line-height:1.4;}
body.flj-v2 .et-workbench .et-export{display:flex;flex-direction:column;align-items:stretch;gap:16px;}
body.flj-v2 .et-workbench .et-export>div{min-width:0;max-width:100%;}
body.flj-v2 .et-workbench .et-export>div:last-child{display:grid;grid-template-columns:minmax(0,1fr);flex-shrink:1;gap:10px;width:100%;}
body.flj-v2 .et-workbench .et-export>div:last-child>button{width:100%;min-width:0;max-width:100%;height:auto;min-height:44px;padding:12px 14px;white-space:normal;line-height:1.4;}
body.flj-v2 #flj-content.st-page .st-export-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;min-width:0;}
body.flj-v2 #flj-content.st-page .st-export-actions>button{width:100%;min-width:0;max-width:100%;height:auto;min-height:44px;padding:12px 14px;white-space:normal;line-height:1.4;}
}

/* Native quote form4905: restore contrast and remove inherited heading spacing. */
body.flj-v2 #srfm-form-4905 .uagb-block-50a8bf93,
body.flj-v2 #srfm-form-4905 .uagb-block-7a15f019{
  margin:0;
  padding:0;
}
body.flj-v2 #srfm-form-4905 .uagb-block-50a8bf93 .uagb-heading-text{
  margin:0;
  color:var(--flj-navy,#173b59);
  font-family:inherit;
  font-size:24px;
  line-height:1.3;
  letter-spacing:normal;
}
body.flj-v2 #srfm-form-4905 .uagb-block-7a15f019 .uagb-heading-text{
  margin:0;
  color:var(--flj-text,#263445);
}
