
/* u-Flex V11.2 additive application/product styling */
.uf12-featured .sectionhead{margin-bottom:1.5rem}.uf12-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.uf12-card{display:block;border:1px solid #dce3e8;border-radius:14px;overflow:hidden;color:inherit;text-decoration:none;background:#fff;transition:box-shadow .2s}.uf12-card:hover{box-shadow:0 12px 26px #1d334020}.uf12-card>img{width:100%;height:185px;object-fit:contain;background:#f7f9fa}.uf12-card>div{padding:1rem}.uf12-card h3{font-size:1.1rem;margin:.1rem 0 .4rem}.uf12-card p{font-size:.94rem;line-height:1.6}.uf12-card span{font-weight:600}.uf12-lead{padding-top:2.5rem}.uf12-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.uf12-gallery figure,.uf12-figure{margin:0;background:#f7f9fb;border-radius:12px;overflow:hidden}.uf12-gallery img,.uf12-figure img{width:100%;max-height:470px;object-fit:contain;display:block}.uf12-gallery figcaption{font-size:.83rem;padding:.7rem}.uf12-section p{max-width:900px;line-height:1.75}.uf12-dual{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}.uf12-note{font-size:.85rem;color:#657582}.uf12-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:1.25rem}.uf12-comparison>div{border:1px solid #dce3e8;padding:1.1rem;border-radius:10px}@media(max-width:600px){.uf12-card>img{height:165px}.uf12-gallery{grid-template-columns:1fr}}

/* V11.2 v0.2 linked primary-source references */
.uf12-evidence{margin-top:2rem}.uf12-ref-list{padding-left:1.5rem;line-height:1.9}.uf12-ref-list a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}

/* V11.2 content revision v0.3 */
.uf03-evidence{max-width:1180px}.uf03-evidence h2{margin:2rem 0 1rem}.uf03-evidence p{max-width:950px;line-height:1.85}.uf03-points{padding-left:1.5rem;max-width:1000px;line-height:1.85}.uf03-points li{padding:.4rem 0}.uf03-sources{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:1.2rem 0 2rem}.uf03-sources a{border:1px solid #d9e1e5;border-radius:12px;padding:16px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:9px}.uf03-sources span{color:#337d84;font-size:.87rem}.uf03-disclosure{color:#64717a;font-size:.95rem}.uf03-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.uf03-gallery-grid figure{margin:0;background:white;border:1px solid #e9edef;border-radius:14px;display:grid;place-items:center;min-height:260px;overflow:hidden}.uf03-gallery-grid img{max-width:100%;width:100%;height:300px;object-fit:contain;background:#fff}.uf03-polish-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.uf03-polish-grid figure{margin:0;border:1px solid #e3e8eb;border-radius:12px;overflow:hidden;background:#fff}.uf03-polish-grid img{width:100%;object-fit:contain}.uf03-polish-grid figcaption{display:flex;justify-content:space-around;padding:12px 5px;font-weight:600}.uf03-c22{max-width:560px;margin:20px auto;text-align:center}.uf03-c22 img{width:100%;height:auto;object-fit:contain}.uf03-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.uf03-compare article{padding:24px;border:1px solid #dce4e8;border-radius:14px}.uf03-comparison-figure{margin:24px auto;max-width:1024px}.uf03-comparison-figure img{width:100%;height:auto;object-fit:contain}.uf12-gallery-section{margin-top:20px!important}.uf12-gallery-section>h2{display:none}@media(max-width:700px){.uf03-gallery-grid,.uf03-polish-grid,.uf03-compare{grid-template-columns:1fr}.uf03-gallery-grid img{height:250px}}

/* V11.2 v0.4: four-stage application narrative / uniform photo system */
.uf04-step{padding-top:clamp(24px,4vw,52px);padding-bottom:clamp(20px,3vw,38px);border-top:1px solid #e6edf0}
.uf04-heading{display:flex;align-items:baseline;gap:22px;margin-bottom:16px}.uf04-heading>span{color:#358087;font-size:15px;letter-spacing:.13em;font-weight:700}.uf04-heading h2{margin:0;font-size:clamp(23px,2.6vw,35px);line-height:1.3}.uf04-body{max-width:1050px;line-height:1.9;color:#52636b;font-size:17px;margin:0 0 24px}
.uf04-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.uf04-photos figure{margin:0;border:1px solid #e6edf0;border-radius:12px;overflow:hidden;background:white;aspect-ratio:3/2;display:flex;align-items:center;justify-content:center}.uf04-photos img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.uf04-photos.uf04-single{grid-template-columns:minmax(0,1fr)}.uf04-photos.uf04-single figure{max-height:430px;aspect-ratio:3/1}.uf04-photos.uf04-single img{object-fit:contain}
.uf04-proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.uf04-proof article{border:1px solid #dce8ed;background:#fcfdfd;border-radius:12px;padding:22px}.uf04-proof h3{font-size:19px;margin:0 0 10px}.uf04-proof p{color:#5c6c73;font-size:15px;margin:0;line-height:1.7}
.uf04-cta{display:inline-block;background:#347f85;color:white!important;padding:15px 28px;text-decoration:none;border-radius:4px;font-weight:600;margin-top:6px}
.uf04-diaphragm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.uf04-diaphragm-card{margin:0!important;min-width:0;background:white!important;border:1px solid #e4eaec;border-radius:12px;overflow:hidden;padding:0!important;display:flex;flex-direction:column}.uf04-diaphragm-card img{width:100%;height:auto!important;aspect-ratio:3/2;object-fit:contain;background:#fff;display:block}.uf04-diaphragm-card figcaption{padding:14px 14px 4px!important;color:#263740;font-weight:600}.uf04-beforeafter{display:grid;grid-template-columns:1fr 1fr;gap:6px;text-align:center;padding:8px 12px 14px;color:#536973;font-size:13px}.uf04-diaphragm-card p{padding:4px 14px 14px;margin:0;font-size:13px;color:#536973}
@media(max-width:800px){.uf04-photos,.uf04-proof,.uf04-diaphragm-grid{grid-template-columns:1fr 1fr}.uf04-photos.uf04-single{grid-template-columns:1fr}}@media(max-width:560px){.uf04-photos,.uf04-proof,.uf04-diaphragm-grid{grid-template-columns:1fr}.uf04-heading{gap:12px}.uf04-body{font-size:15px}.uf04-photos.uf04-single figure{aspect-ratio:3/2}}

/* V11.2 v0.7 — equal-height application cards, aligned links, 3:2 images */
.uf12-featured .uf12-cards{align-items:stretch!important}
.uf12-featured .uf12-cards>.uf12-card{display:flex!important;flex-direction:column!important;height:100%!important;min-width:0}
.uf12-featured .uf12-cards>.uf12-card>img{display:block!important;width:100%!important;aspect-ratio:3/2!important;object-fit:contain!important;object-position:center;background:#fff;flex-shrink:0}
.uf12-featured .uf12-cards>.uf12-card>div{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0}
.uf12-featured .uf12-cards>.uf12-card>div>span:last-child{display:block!important;margin-top:auto!important;padding-top:18px}
/* Featured two-case module intentionally uses square images. */
.appgrid .appcard>img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center}

/* v0.8: precision machined spring comparison, responsive tri-language */
.uf08-machined-comparison{margin-block:32px 54px}
.uf08-machined-comparison h2{margin-bottom:8px}
.uf08-intro{color:#397f85;font-size:17px;font-weight:600;margin:0 0 24px}
.uf08-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:20px 0 28px}
.uf08-photo{margin:0!important;padding:16px;background:#fff;border:1px solid #e3e9ea;border-radius:14px;text-align:center;min-width:0}
.uf08-photo img{display:block;width:100%;height:300px;object-fit:contain;object-position:center;background:#fff}
.uf08-photo figcaption{padding:12px 5px 3px;font-size:17px;font-weight:650;color:#20333a}
.uf08-table-scroll{overflow-x:auto;border:1px solid #dce6e8;border-radius:12px}
.uf08-compare-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.65}
.uf08-compare-table th,.uf08-compare-table td{padding:14px 15px;border-bottom:1px solid #e7eeef;vertical-align:top;text-align:left;overflow-wrap:anywhere}
.uf08-compare-table thead th{background:#eaf3f3;color:#17383b;font-weight:700}
.uf08-compare-table thead th:first-child{width:19%}
.uf08-compare-table tbody th{font-weight:650;color:#18323c;background:#f7f9f9}
.uf08-compare-table tbody td:last-child{background:#f2f8f7;color:#164e51}
.uf08-compare-table tbody tr:last-child>*{border-bottom:0}
.uf08-tolerance-note{font-size:13px;line-height:1.7;color:#52646c;margin:14px 2px 0}
@media(max-width:680px){.uf08-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.uf08-photo{padding:8px}.uf08-photo img{height:200px}.uf08-photo figcaption{font-size:13px}.uf08-compare-table{min-width:670px;font-size:13px}.uf08-compare-table th,.uf08-compare-table td{padding:10px}.uf08-intro{font-size:14px}}

/* V11.2 V0.9 preview – consistent 3:2 home applications, no intrinsic photo whitespace */
.uf12-featured .uf12-card>.uf09-card-visual{width:100%;aspect-ratio:3/2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;overflow:hidden;background:#fff;flex:none!important}
.uf12-featured .uf12-card>.uf09-card-visual>img{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-height:none!important;object-fit:cover!important;object-position:center!important;display:block!important;aspect-ratio:auto!important;background:#fff!important}
.uf12-featured .uf12-card>.uf09-single-visual{grid-template-columns:1fr}
.uf12-featured .uf12-card>.uf09-single-visual>img{object-fit:cover!important}
.uf12-featured .uf12-card>img{height:auto!important;min-height:0!important;aspect-ratio:3/2!important;object-fit:cover!important;object-position:center!important}
.uf12-featured .uf12-card>div:last-child{display:flex!important;flex:1 1 auto!important;flex-direction:column!important}
.uf12-featured .uf12-card>div:last-child>span:last-child{margin-top:auto!important}

/* V0.9.1 five pre-composed 3:2 marketing photos – no letterboxing */
.uf12-featured .uf12-card{display:flex!important;flex-direction:column!important;height:100%!important}
.uf12-featured .uf12-card>img.uf091-card-image{display:block!important;width:100%!important;height:auto!important;aspect-ratio:3/2!important;min-height:0!important;max-height:none!important;object-fit:cover!important;object-position:center!important;background:#fff!important;flex:0 0 auto!important;margin:0!important;padding:0!important}
.uf12-featured .uf12-card>div:last-child{display:flex!important;flex-direction:column!important;flex:1!important}
.uf12-featured .uf12-card>div:last-child>span:last-child{margin-top:auto!important}

/* V0.9.1 five pre-composed 3:2 marketing photos – no letterboxing */
.uf12-featured .uf12-card{display:flex!important;flex-direction:column!important;height:100%!important}
.uf12-featured .uf12-card>img.uf091-card-image{display:block!important;width:100%!important;height:auto!important;aspect-ratio:3/2!important;min-height:0!important;max-height:none!important;object-fit:cover!important;object-position:center!important;background:#fff!important;flex:0 0 auto!important;margin:0!important;padding:0!important}
.uf12-featured .uf12-card>div:last-child{display:flex!important;flex-direction:column!important;flex:1!important}
.uf12-featured .uf12-card>div:last-child>span:last-child{margin-top:auto!important}

/* V11.2 V0.9.4 scoped visual fixes. Append after V0.9.3, do not replace prior rules. */
/* Machined spring comparison: consistent neutral cell backgrounds; accent only for values */
.uf12-machined-compare table, .uf12-machined-compare th, .uf12-machined-compare td,
.machined-comparison table, .machined-comparison th, .machined-comparison td { background-color: #f8fafb !important; }
.uf12-machined-compare thead th, .machined-comparison thead th {background-color: #e9f1f2 !important;}
/* Helical 90-degree joint gallery: no separate grey flank blocks */
body:has(a[href*="helical-couplings"]) .uf12-gallery-section .uf12-gallery,
.uf12-gallery-section .uf12-gallery {background-color: #fff;}
.uf12-gallery-section .uf12-gallery figure {background-color: #fff;}
/* Correct 3:2 application thumbnails without asymmetric top padding */
.appgrid ~ section img, .uf12-engineered-applications img, .uf12-applications-grid img {object-position:center center;}

/* u-Flex V11.2 V0.9.5 — application thumbnail and machined-spring comparison only. */
/* Applications overview, lower group of five. Keep the approved square artwork,
   crop its displayed frame to 3:2 to match neighboring tiles (all languages). */
.uf12-featured .uf12-cards .uf12-card[href$="/applications/diaphragm/"] > img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:3 / 2 !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  max-height:none !important;
  background:#fff !important;
  flex:0 0 auto !important;
}
/* Actual table uses uf08-compare-table (not uf12-machined-compare).
   Preserve complete engineering copy, allow wrapping instead of clipping. */
.uf08-machined-comparison .uf08-table-scroll {
  max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch;
}
.uf08-machined-comparison table.uf08-compare-table {
  width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
  background:#fff !important;
}
.uf08-machined-comparison .uf08-compare-table tr > :nth-child(1) {width:19%;}
.uf08-machined-comparison .uf08-compare-table tr > :nth-child(2) {width:36%;}
.uf08-machined-comparison .uf08-compare-table tr > :nth-child(3) {width:45%;}
.uf08-machined-comparison .uf08-compare-table thead th {
  background:#e9f1f2 !important; color:#20363a !important;
  text-align:left; vertical-align:middle;
}
.uf08-machined-comparison .uf08-compare-table tbody th,
.uf08-machined-comparison .uf08-compare-table tbody td {
  background:#fff !important; vertical-align:top;
}
.uf08-machined-comparison .uf08-compare-table th,
.uf08-machined-comparison .uf08-compare-table td {
  box-sizing:border-box; padding:13px 16px !important;
  white-space:normal !important; overflow-wrap:anywhere !important;
  word-break:normal !important; line-height:1.65 !important;
  height:auto !important; min-height:0 !important;
}
.uf08-machined-comparison .uf08-compare-table tbody td:last-child {color:#236c70 !important;}
@media(max-width:720px){
  .uf08-machined-comparison table.uf08-compare-table {min-width:700px !important;}
  .uf08-machined-comparison .uf08-compare-table th,
  .uf08-machined-comparison .uf08-compare-table td {padding:11px 13px !important;}
}
