.ux-flx {
  --brand:#08a840;--navy:#0c2f1f;--cream:#faf9f6;--accent:#c45c26;--text:#1a1a1a;--sub:#5c5c5c;--line:#e8e4dc;--radius:0;font-family:Georgia,"Times New Roman",serif;color:var(--text);line-height:1.65;background:var(--cream);
}

.ux-flx * {
  box-sizing:border-box;
}

.ux-flx *::before {
  box-sizing:border-box;
}

.ux-flx *::after {
  box-sizing:border-box;
}

.ux-flx a {
  color:inherit;text-decoration:none;
}

.ux-flx img {
  max-width:100%;height:auto;display:block;
}

.ux-flx .ux-wrap {
  width:100%;max-width:1180px;margin:0 auto;padding:0 28px;
}

.ux-flx .ux-sec {
  padding:92px 0;
}

.ux-flx .ux-eyebrow {
  margin:0 0 14px;font-family:Montserrat,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);
}

.ux-flx .ux-h2 {
  margin:0;font-size:clamp(30px,3.5vw,46px);line-height:1.15;font-weight:400;color:var(--navy);font-style:italic;
}

.ux-flx .ux-lead {
  margin:18px 0 0;font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.8;color:var(--sub);max-width:55ch;
}

.ux-flx .ux-hero-mag {
  position:relative;min-height:85vh;display:flex;align-items:flex-end;padding:100px 0 60px;background:url('https://flexionex.com/wp-content/uploads/2026/08/Trusted-Expansion-Joint-Manufacturer-for-Critical-Piping-Systems-by-Flexionex.jpg') center/cover no-repeat;
}

.ux-flx .ux-hero-mag::before {
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15) 40%,rgba(12,47,31,.85) 100%);
}

.ux-flx .ux-hero-mag .ux-wrap {
  position:relative;z-index:1;width:100%;
}

.ux-flx .ux-hero-card {
  max-width:520px;margin-left:auto;background:#fff;padding:40px 36px;box-shadow:0 24px 60px rgba(0,0,0,.25);transform:translateY(40px);margin-bottom:40px;
}

.ux-flx .ux-hero-card .ux-eyebrow {
  color:var(--brand);
}

.ux-flx .ux-hero-card h1 {
  margin:0;font-family:Montserrat,Arial,sans-serif;font-size:clamp(28px,3.5vw,42px);line-height:1.12;font-weight:700;font-style:normal;color:var(--navy);
}

.ux-flx .ux-btn {
  display:inline-flex;padding:14px 28px;background:var(--navy);color:#fff!important;font-family:Montserrat,Arial,sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
}

.ux-flx .ux-btn-light {
  background:#fff;color:var(--navy)!important;
}

.ux-flx .ux-btn-outline {
  padding:12px 26px;border:2px solid var(--navy);color:var(--navy)!important;font-family:Montserrat,Arial,sans-serif;font-weight:700;text-transform:uppercase;background:transparent;
}

.ux-flx .ux-actions {
  display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;
}

.ux-flx .ux-actions-center {
  justify-content:center;
}

.ux-flx .ux-ed-zig {
  display:grid;gap:64px;margin-top:48px;
}

.ux-flx .ux-ed-row {
  display: grid;
  gap: 32px;
  align-items: center;
  grid-template-columns: 1.1fr .9fr;
}

.ux-flx .ux-ed-row.rev .ux-ed-copy {
  order:2;
}

.ux-flx .ux-ed-row.rev .ux-ed-visual {
  order:1;
}

.ux-flx .ux-ed-visual {
  position:relative;
}

.ux-flx .ux-ed-visual img {
  border:8px solid #fff;box-shadow:0 12px 40px rgba(0,0,0,.12);
}

.ux-flx .ux-ed-visual::after {
  content:"";position:absolute;top:-16px;left:-16px;width:60%;height:60%;border:2px solid var(--brand);z-index:-1;
}

.ux-flx .ux-ed-copy .ux-h2 {
  font-style:normal;font-weight:700;font-family:Montserrat,Arial,sans-serif;font-size:clamp(24px,2.5vw,34px);
}

.ux-flx .ux-muted {
  background:#fff;
}

.ux-flx .ux-navy {
  background:var(--navy);color:#fff;
}

.ux-flx .ux-navy .ux-h2 {
  color:#fff;font-style:normal;
}

.ux-flx .ux-deep .ux-h2 {
  color:#fff;font-style:normal;
}

.ux-flx .ux-navy .ux-lead {
  color:rgba(255,255,255,.78);
}

.ux-flx .ux-deep .ux-lead {
  color:rgba(255,255,255,.78);
}

.ux-flx .ux-deep {
  background:#061a10;color:#fff;
}

.ux-flx .ux-center {
  text-align:center;
}

.ux-flx .ux-center .ux-h2 {
  margin-left:auto;margin-right:auto;font-style:normal;
}

.ux-flx .ux-center .ux-lead {
  margin-left:auto;margin-right:auto;font-style:normal;
}

.ux-flx .ux-grid {
  display:grid;gap:20px;margin-top:40px;
}

.ux-flx .ux-g2 {
  grid-template-columns: 1fr 1fr;
  align-items: center;
}

.ux-flx .ux-g3 {
  grid-template-columns: repeat(3,1fr);
}

.ux-flx .ux-g4 {
  grid-template-columns: repeat(4,1fr);
}

.ux-flx .ux-card {
  background:#fff;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-card img {
  width:100%;aspect-ratio:16/10;object-fit:cover;
}

.ux-flx .ux-card-body {
  padding:22px;display:flex;flex-direction:column;gap:8px;flex:1;
}

.ux-flx .ux-card h3 {
  margin:0;font-size:17px;color:var(--navy);font-style:normal;
}

.ux-flx .ux-card p {
  margin:0;font-size:14px;color:var(--sub);flex:1;
}

.ux-flx .ux-link {
  font-weight:700;color:var(--brand);font-size:12px;text-transform:uppercase;letter-spacing:.06em;
}

.ux-flx .ux-pain {
  padding:24px;background:#fff;border-top:3px solid var(--accent);font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-pain h3 {
  margin:0 0 8px;font-size:16px;color:var(--navy);
}

.ux-flx .ux-pain p {
  margin:0;font-size:14px;color:var(--sub);
}

.ux-flx .ux-table-wrap {
  overflow-x:auto;margin-top:36px;border:1px solid var(--line);font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-table {
  width:100%;border-collapse:collapse;min-width:640px;font-size:14px;background:#fff;
}

.ux-flx .ux-table th {
  background:var(--navy);color:#fff;padding:14px 16px;text-align:left;font-weight:600;
}

.ux-flx .ux-table td {
  padding:14px 16px;border-bottom:1px solid var(--line);color:var(--sub);
}

.ux-flx .ux-step {
  padding:24px;background:#fff;border:1px solid var(--line);font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-tag {
  display:block;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--accent);text-transform:uppercase;margin-bottom:8px;
}

.ux-flx .ux-step h3 {
  margin:0;font-size:18px;color:var(--navy);
}

.ux-flx .ux-step p {
  margin:8px 0 0;font-size:14px;color:var(--sub);
}

.ux-flx .ux-list {
  margin:18px 0 0;padding:0;list-style:none;display:grid;gap:8px;font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-list.cols {
  grid-template-columns: 1fr 1fr;
}

.ux-flx .ux-list li {
  padding:12px 14px 12px 32px;position:relative;background:#fff;border:1px solid var(--line);font-weight:600;font-size:14px;
}

.ux-flx .ux-list li::before {
  content:"";position:absolute;left:12px;top:16px;width:8px;height:8px;background:var(--brand);
}

.ux-flx .ux-list-check li {
  background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.88);
}

.ux-flx .ux-quote {
  padding:28px;background:#fff;border-left:4px solid var(--brand);font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-quote p {
  margin:0;font-size:16px;color:var(--navy);font-weight:600;font-style:italic;
}

.ux-flx .ux-quote span {
  display:block;margin-top:14px;font-size:13px;color:var(--sub);font-style:normal;
}

.ux-flx .ux-band {
  padding:52px 0;background:var(--brand);color:#fff;text-align:center;font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-band h2 {
  margin:0;font-size:clamp(24px,3vw,36px);color:#fff;font-style:normal;font-weight:700;
}

.ux-flx .ux-band p {
  margin:12px auto 0;max-width:50ch;
}

.ux-flx .ux-faq {
  border-bottom:1px solid var(--line);font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-faq summary {
  cursor:pointer;list-style:none;padding:18px 40px 18px 0;font-weight:700;color:var(--navy);position:relative;
}

.ux-flx .ux-faq summary::-webkit-details-marker {
  display:none;
}

.ux-flx .ux-faq summary::after {
  content:"+";position:absolute;right:0;color:var(--brand);font-size:20px;
}

.ux-flx .ux-faq[open] summary::after {
  content:"-";
}

.ux-flx .ux-faq p {
  margin:0 0 16px;color:var(--sub);font-size:14px;
}

.ux-flx .ux-faq-wrap {
  max-width:840px;margin:36px auto 0;
}

.ux-flx .ux-check {
  margin:16px 0 0;padding:0;list-style:none;display:grid;gap:8px;font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-check li {
  padding-left:24px;position:relative;color:rgba(255,255,255,.85);font-size:14px;
}

.ux-flx .ux-check li::before {
  content:"\2713";position:absolute;left:0;color:#9dffb8;
}

.ux-flx .ux-note {
  margin-top:16px;font-size:13px;color:rgba(255,255,255,.65);font-family:Montserrat,Arial,sans-serif;
}

.ux-flx .ux-quality-img {
  border:4px solid rgba(255,255,255,.15);
}

.ux-flx .ux-btn-block {
  width:100%;margin-bottom:10px;text-align:center;display:block;
}

.ux-flx .ux-text-left {
  text-align:left;
}

.ux-nm {
  --brand:#08a840;--navy:#0c2f1f;--teal:#0d4a3a;--muted:#f2f8f4;--text:#222;--sub:#556;--line:#d4e5da;--radius:16px;font-family:Montserrat,Arial,sans-serif;color:var(--text);line-height:1.65;background:#fff;
}

.ux-nm * {
  box-sizing:border-box;
}

.ux-nm *::before {
  box-sizing:border-box;
}

.ux-nm *::after {
  box-sizing:border-box;
}

.ux-nm a {
  color:inherit;text-decoration:none;
}

.ux-nm img {
  max-width:100%;height:auto;display:block;
}

.ux-nm .ux-wrap {
  width:100%;max-width:1200px;margin:0 auto;padding:0 24px;
}

.ux-nm .ux-sec {
  padding:84px 0;
}

.ux-nm .ux-eyebrow {
  margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);
}

.ux-nm .ux-h2 {
  margin:0;font-size:clamp(28px,3.2vw,42px);line-height:1.18;font-weight:700;color:var(--navy);
}

.ux-nm .ux-lead {
  margin:16px 0 0;font-size:17px;line-height:1.75;color:var(--sub);max-width:62ch;
}

.ux-nm .ux-hero-full {
  position:relative;min-height:75vh;display:flex;align-items:center;padding:100px 0;background:url('https://flexionex.com/wp-content/uploads/2026/05/Rubber-Expansion-Joints-OEM-Manufacturer.jpg') center/cover no-repeat;color:#fff;
}

.ux-nm .ux-hero-full::before {
  content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(12,47,31,.9) 0%,rgba(13,74,58,.75) 100%);
}

.ux-nm .ux-hero-full .ux-wrap {
  position:relative;z-index:1;
}

.ux-nm .ux-hero-full .ux-eyebrow {
  color:#9dffb8;
}

.ux-nm .ux-hero-full h1 {
  margin:0;max-width:18ch;font-size:clamp(34px,5vw,56px);line-height:1.08;font-weight:700;
}

.ux-nm .ux-hero-full .ux-lead {
  color:rgba(255,255,255,.88);
}

.ux-nm .ux-btn {
  display:inline-flex;padding:15px 28px;background:var(--brand);color:#fff!important;font-size:13px;font-weight:700;text-transform:uppercase;border-radius:var(--radius);
}

.ux-nm .ux-btn-light {
  background:#fff;color:var(--navy)!important;
}

.ux-nm .ux-btn-outline {
  padding:13px 26px;border:2px solid #fff;color:#fff!important;font-weight:700;text-transform:uppercase;border-radius:var(--radius);background:transparent;
}

.ux-nm .ux-actions {
  display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;
}

.ux-nm .ux-actions-center {
  justify-content:center;
}

.ux-nm .ux-families {
  display: grid;
  gap: 20px;
  margin-top: 40px;
  grid-template-columns: repeat(3,1fr);
}

.ux-nm .ux-family {
  background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:0 8px 30px rgba(12,47,31,.06);display:flex;flex-direction:column;
}

.ux-nm .ux-family img {
  width:100%;aspect-ratio:4/3;object-fit:cover;
}

.ux-nm .ux-family-body {
  padding:26px;display:flex;flex-direction:column;gap:10px;flex:1;
}

.ux-nm .ux-family h3 {
  margin:0;font-size:20px;color:var(--navy);
}

.ux-nm .ux-family p {
  margin:0;font-size:14px;color:var(--sub);flex:1;
}

.ux-nm .ux-family a {
  font-size:13px;font-weight:700;color:var(--brand);text-transform:uppercase;
}

.ux-nm .ux-feature-strip {
  margin-top:48px;padding:36px 0;background:linear-gradient(90deg,var(--teal),var(--navy));color:#fff;border-radius:var(--radius);
}

.ux-nm .ux-feature-strip .ux-grid {
  margin-top: 0;
  gap: 24px;
  grid-template-columns: repeat(4,1fr);
}

.ux-nm .ux-feature-strip h3 {
  margin:0 0 8px;font-size:15px;color:#9dffb8;
}

.ux-nm .ux-feature-strip p {
  margin:0;font-size:13px;color:rgba(255,255,255,.8);
}

.ux-nm .ux-muted {
  background:var(--muted);
}

.ux-nm .ux-navy {
  background:var(--navy);color:#fff;
}

.ux-nm .ux-navy .ux-h2 {
  color:#fff;
}

.ux-nm .ux-deep .ux-h2 {
  color:#fff;
}

.ux-nm .ux-navy .ux-lead {
  color:rgba(255,255,255,.78);
}

.ux-nm .ux-deep .ux-lead {
  color:rgba(255,255,255,.78);
}

.ux-nm .ux-deep {
  background:#061a10;color:#fff;
}

.ux-nm .ux-center {
  text-align:center;
}

.ux-nm .ux-center .ux-h2 {
  margin-left:auto;margin-right:auto;
}

.ux-nm .ux-center .ux-lead {
  margin-left:auto;margin-right:auto;
}

.ux-nm .ux-grid {
  display:grid;gap:18px;margin-top:36px;
}

.ux-nm .ux-g2 {
  grid-template-columns: 1fr 1fr;
  align-items: center;
}

.ux-nm .ux-g3 {
  grid-template-columns: repeat(3,1fr);
}

.ux-nm .ux-g4 {
  grid-template-columns: repeat(4,1fr);
}

.ux-nm .ux-card {
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;
}

.ux-nm .ux-card img {
  width:100%;aspect-ratio:16/10;object-fit:cover;
}

.ux-nm .ux-card-body {
  padding:20px;display:flex;flex-direction:column;gap:8px;flex:1;
}

.ux-nm .ux-card h3 {
  margin:0;font-size:17px;color:var(--navy);
}

.ux-nm .ux-card p {
  margin:0;font-size:14px;color:var(--sub);flex:1;
}

.ux-nm .ux-link {
  font-weight:700;color:var(--brand);font-size:13px;text-transform:uppercase;
}

.ux-nm .ux-pain {
  padding:22px;background:#fff;border-radius:var(--radius);border:1px solid var(--line);border-left:4px solid var(--teal);
}

.ux-nm .ux-pain h3 {
  margin:0 0 8px;font-size:16px;color:var(--navy);
}

.ux-nm .ux-pain p {
  margin:0;font-size:14px;color:var(--sub);
}

.ux-nm .ux-table-wrap {
  overflow-x:auto;margin-top:32px;border-radius:var(--radius);border:1px solid var(--line);
}

.ux-nm .ux-table {
  width:100%;border-collapse:collapse;min-width:640px;font-size:14px;background:#fff;
}

.ux-nm .ux-table th {
  background:var(--teal);color:#fff;padding:14px 16px;text-align:left;
}

.ux-nm .ux-table td {
  padding:14px 16px;border-bottom:1px solid var(--line);color:var(--sub);
}

.ux-nm .ux-step {
  padding:22px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
}

.ux-nm .ux-tag {
  display:block;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--teal);text-transform:uppercase;margin-bottom:6px;
}

.ux-nm .ux-step h3 {
  margin:0;font-size:18px;color:var(--navy);
}

.ux-nm .ux-step p {
  margin:8px 0 0;font-size:14px;color:var(--sub);
}

.ux-nm .ux-list {
  margin:16px 0 0;padding:0;list-style:none;display:grid;gap:8px;
}

.ux-nm .ux-list.cols {
  grid-template-columns: 1fr 1fr;
}

.ux-nm .ux-list li {
  padding:12px 14px 12px 32px;position:relative;background:#fff;border:1px solid var(--line);font-weight:600;border-radius:var(--radius);
}

.ux-nm .ux-list li::before {
  content:"";position:absolute;left:12px;top:16px;width:8px;height:8px;background:var(--brand);border-radius:50%;
}

.ux-nm .ux-list-check li {
  background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.88);
}

.ux-nm .ux-quote {
  padding:24px;background:#fff;border-radius:var(--radius);border:1px solid var(--line);
}

.ux-nm .ux-quote p {
  margin:0;font-weight:600;color:var(--navy);
}

.ux-nm .ux-quote span {
  display:block;margin-top:12px;font-size:13px;color:var(--sub);
}

.ux-nm .ux-band {
  padding:48px 0;background:var(--brand);color:#fff;text-align:center;
}

.ux-nm .ux-band h2 {
  margin:0;font-size:clamp(24px,3vw,36px);color:#fff;
}

.ux-nm .ux-band p {
  margin:12px auto 0;max-width:50ch;
}

.ux-nm .ux-faq {
  border-bottom:1px solid var(--line);
}

.ux-nm .ux-faq summary {
  cursor:pointer;list-style:none;padding:16px 36px 16px 0;font-weight:700;color:var(--navy);position:relative;
}

.ux-nm .ux-faq summary::-webkit-details-marker {
  display:none;
}

.ux-nm .ux-faq summary::after {
  content:"+";position:absolute;right:0;color:var(--brand);
}

.ux-nm .ux-faq[open] summary::after {
  content:"-";
}

.ux-nm .ux-faq p {
  margin:0 0 14px;color:var(--sub);
}

.ux-nm .ux-faq-wrap {
  max-width:820px;margin:32px auto 0;
}

.ux-nm .ux-check {
  margin:16px 0 0;padding:0;list-style:none;display:grid;gap:8px;
}

.ux-nm .ux-check li {
  padding-left:24px;position:relative;color:rgba(255,255,255,.85);
}

.ux-nm .ux-check li::before {
  content:"\2713";position:absolute;left:0;color:#9dffb8;
}

.ux-nm .ux-note {
  margin-top:16px;font-size:13px;color:rgba(255,255,255,.65);
}

.ux-nm .ux-quality-img {
  border-radius:var(--radius);border:1px solid rgba(255,255,255,.1);
}

.ux-nm .ux-btn-block {
  width:100%;margin-bottom:10px;text-align:center;display:block;
}

.ux-nm .ux-text-left {
  text-align:left;
}

.ux-ind {
  --brand:#08a840;--brand-dark:#078a36;--navy:#0c2f1f;--muted:#f3f9f5;--text:#222;--sub:#555;--line:#dde5df;--radius:2px;font-family:Montserrat,Arial,sans-serif;color:var(--text);line-height:1.65;background:#fff;
}

.ux-ind * {
  box-sizing:border-box;
}

.ux-ind *::before {
  box-sizing:border-box;
}

.ux-ind *::after {
  box-sizing:border-box;
}

.ux-ind a {
  color:inherit;text-decoration:none;
}

.ux-ind img {
  max-width:100%;height:auto;display:block;
}

.ux-ind .ux-wrap {
  width:100%;max-width:1200px;margin:0 auto;padding:0 24px;
}

.ux-ind .ux-sec {
  padding:88px 0;
}

.ux-ind .ux-eyebrow {
  margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brand);
}

.ux-ind .ux-h2 {
  margin:0;font-size:clamp(28px,3.2vw,42px);line-height:1.18;font-weight:700;color:var(--navy);max-width:18ch;
}

.ux-ind .ux-lead {
  margin:16px 0 0;font-size:17px;line-height:1.75;color:var(--sub);max-width:62ch;
}

.ux-ind .ux-center {
  text-align:center;
}

.ux-ind .ux-center .ux-h2 {
  margin-left:auto;margin-right:auto;
}

.ux-ind .ux-center .ux-lead {
  margin-left:auto;margin-right:auto;
}

.ux-ind .ux-btn {
  display:inline-flex;align-items:center;justify-content:center;padding:15px 28px;background:var(--brand);color:#fff!important;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:0;border-radius:var(--radius);
}

.ux-ind .ux-btn:hover {
  background:var(--brand-dark);
}

.ux-ind .ux-btn-light {
  background:#fff;color:var(--navy)!important;
}

.ux-ind .ux-btn-outline {
  display:inline-flex;align-items:center;justify-content:center;padding:13px 26px;border:2px solid #fff;color:#fff!important;font-size:13px;font-weight:700;text-transform:uppercase;border-radius:var(--radius);background:transparent;
}

.ux-ind .ux-actions {
  display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;
}

.ux-ind .ux-actions-center {
  justify-content:center;
}

.ux-ind .ux-hero-full {
  position:relative;min-height:82vh;display:flex;align-items:flex-end;padding:120px 0 72px;background-size:cover;background-position:center;color:#fff;
}

.ux-ind .ux-hero-full::before {
  content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,26,16,.88) 0%,rgba(6,26,16,.5) 60%,rgba(6,26,16,.25) 100%);
}

.ux-ind .ux-hero-full .ux-wrap {
  position:relative;z-index:1;
}

.ux-ind .ux-hero-full .ux-eyebrow {
  color:#9dffb8;
}

.ux-ind .ux-hero-full h1 {
  margin:0;max-width:16ch;font-size:clamp(34px,5vw,58px);line-height:1.08;font-weight:700;color:#fff;
}

.ux-ind .ux-hero-full .ux-lead {
  color:rgba(255,255,255,.88);
}

.ux-ind .ux-muted {
  background:var(--muted);
}

.ux-ind .ux-navy {
  background:var(--navy);color:#fff;
}

.ux-ind .ux-navy .ux-h2 {
  color:#fff;
}

.ux-ind .ux-deep .ux-h2 {
  color:#fff;
}

.ux-ind .ux-navy .ux-lead {
  color:rgba(255,255,255,.78);
}

.ux-ind .ux-deep .ux-lead {
  color:rgba(255,255,255,.78);
}

.ux-ind .ux-deep {
  background:#061a10;color:#fff;
}

.ux-ind .ux-grid {
  display:grid;gap:20px;margin-top:40px;
}

.ux-ind .ux-g2 {
  grid-template-columns: 1.05fr .95fr;
  align-items: center;
}

.ux-ind .ux-g3 {
  grid-template-columns: repeat(3,1fr);
}

.ux-ind .ux-g4 {
  grid-template-columns: repeat(4,1fr);
}

.ux-ind .ux-zigzag {
  display:grid;gap:48px;margin-top:40px;
}

.ux-ind .ux-zig-row {
  display: grid;
  gap: 28px;
  align-items: center;
  grid-template-columns: 1fr 1fr;
}

.ux-ind .ux-zig-row.flip .ux-zig-text {
  order:2;
}

.ux-ind .ux-zig-row.flip .ux-zig-img {
  order:1;
}

.ux-ind .ux-zig-img img {
  border-radius:var(--radius);border:1px solid var(--line);
}

.ux-ind .ux-card {
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;
}

.ux-ind .ux-card img {
  width:100%;aspect-ratio:16/10;object-fit:cover;
}

.ux-ind .ux-card-body {
  padding:22px;display:flex;flex-direction:column;gap:10px;flex:1;
}

.ux-ind .ux-card h3 {
  margin:0;font-size:18px;color:var(--navy);
}

.ux-ind .ux-card p {
  margin:0;font-size:14px;color:var(--sub);flex:1;
}

.ux-ind .ux-link {
  font-size:13px;font-weight:700;color:var(--brand);text-transform:uppercase;
}

.ux-ind .ux-gallery {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3,1fr);
  margin-top: 40px;
}

.ux-ind .ux-gallery img {
  width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line);
}

.ux-ind .ux-pain {
  padding:22px;border-left:3px solid var(--brand);background:#fff;border-radius:var(--radius);
}

.ux-ind .ux-pain h3 {
  margin:0 0 8px;font-size:17px;color:var(--navy);
}

.ux-ind .ux-pain p {
  margin:0;font-size:14px;color:var(--sub);
}

.ux-ind .ux-table-wrap {
  overflow-x:auto;margin-top:36px;border:1px solid var(--line);border-radius:var(--radius);
}

.ux-ind .ux-table {
  width:100%;border-collapse:collapse;min-width:640px;background:#fff;font-size:14px;
}

.ux-ind .ux-table th {
  background:var(--navy);color:#fff;text-align:left;padding:14px 16px;
}

.ux-ind .ux-table td {
  padding:14px 16px;border-bottom:1px solid var(--line);color:var(--sub);
}

.ux-ind .ux-step {
  padding:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
}

.ux-ind .ux-tag {
  display:block;font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--brand);text-transform:uppercase;margin-bottom:8px;
}

.ux-ind .ux-step h3 {
  margin:0;font-size:20px;color:var(--navy);
}

.ux-ind .ux-step p {
  margin:8px 0 0;font-size:14px;color:var(--sub);
}

.ux-ind .ux-list {
  margin:20px 0 0;padding:0;list-style:none;display:grid;gap:10px;
}

.ux-ind .ux-list.cols {
  grid-template-columns: 1fr 1fr;
}

.ux-ind .ux-list li {
  padding:12px 14px 12px 36px;position:relative;background:#fff;border:1px solid var(--line);font-weight:600;color:var(--navy);border-radius:var(--radius);
}

.ux-ind .ux-list li::before {
  content:"";position:absolute;left:14px;top:18px;width:10px;height:10px;background:var(--brand);
}

.ux-ind .ux-list-check li {
  color:rgba(255,255,255,.88);background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);
}

.ux-ind .ux-list-check li::before {
  background:#9dffb8;
}

.ux-ind .ux-quote {
  padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
}

.ux-ind .ux-quote p {
  margin:0;font-size:16px;color:var(--navy);font-weight:600;
}

.ux-ind .ux-quote span {
  display:block;margin-top:14px;font-size:13px;color:var(--sub);
}

.ux-ind .ux-band {
  padding:48px 0;background:var(--brand);color:#fff;text-align:center;
}

.ux-ind .ux-band h2 {
  margin:0;font-size:clamp(24px,3vw,36px);color:#fff;
}

.ux-ind .ux-band p {
  margin:12px auto 0;max-width:52ch;color:rgba(255,255,255,.92);
}

.ux-ind .ux-faq {
  border-bottom:1px solid var(--line);
}

.ux-ind .ux-faq summary {
  cursor:pointer;list-style:none;padding:18px 40px 18px 0;font-weight:700;color:var(--navy);position:relative;
}

.ux-ind .ux-faq summary::-webkit-details-marker {
  display:none;
}

.ux-ind .ux-faq summary::after {
  content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--brand);font-size:22px;
}

.ux-ind .ux-faq[open] summary::after {
  content:"-";
}

.ux-ind .ux-faq p {
  margin:0 0 16px;color:var(--sub);
}

.ux-ind .ux-faq-wrap {
  max-width:860px;margin:36px auto 0;
}

.ux-ind .ux-check {
  margin:18px 0 0;padding:0;list-style:none;display:grid;gap:8px;
}

.ux-ind .ux-check li {
  padding-left:26px;position:relative;color:rgba(255,255,255,.88);
}

.ux-ind .ux-check li::before {
  content:"\2713";position:absolute;left:0;color:#9dffb8;font-weight:700;
}

.ux-ind .ux-note {
  margin-top:18px;font-size:13px;color:rgba(255,255,255,.7);
}

.ux-ind .ux-quality-img {
  border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);
}

.ux-ind .ux-btn-block {
  width:100%;margin-bottom:12px;text-align:center;
}

.ux-ind .ux-text-left {
  text-align:left;
}

/* flush hero to header — no white top gap */
.entry-content > .ux-ind:first-child,
.entry-content > .ux-pip:first-child,
.entry-content > .ux-mfg:first-child,
.entry-content > .ux-dct:first-child,
.entry-content > .ux-pvc:first-child,
.entry-content > .ux-flx:first-child,
.entry-content > .ux-nm:first-child,
.entry-content > main[class^="ux-"]:first-child {
  margin-top: 0 !important;
}
/* Kadence default .content-area{margin-top:5rem} is the primary white strip */
#primary.content-area,
.content-area {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.content-area .content-container,
.content-area .entry-content-wrap,
.entry-content-wrap,
.entry-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* === Category pages mobile (max-width: 781px) === */
/* Note: Kadence main is usually .wrap.kt-clear — UX root is a child (.ux-*), not main itself. */
@media (max-width: 781px) {
  main,
  main.wrap,
  .entry-content {
    overflow-x: hidden !important;
  }
  main img,
  .entry-content img,
  [class^="ux-"] img,
  [class*=" ux-"] img {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
  }
  main .ux-wrap,
  [class^="ux-"] .ux-wrap,
  [class*=" ux-"] .ux-wrap {
    padding-left: 16px !important;
    padding-right: 16px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  main .ux-sec,
  [class^="ux-"] .ux-sec,
  [class*=" ux-"] .ux-sec {
    padding: 48px 0 !important;
  }
  /* Heroes: don't force taller than viewport; keep readable stack */
  main .ux-hero-full,
  main .ux-hero-split,
  main .ux-mag-hero,
  main .ux-mag-frame,
  main .ux-hero-dark,
  .ux-hero-full,
  .ux-hero-split,
  .ux-mag-hero,
  .ux-mag-frame,
  .ux-hero-dark {
    min-height: 0 !important;
    min-height: unset !important;
    max-height: none;
  }
  main .ux-hero-full,
  .ux-hero-full,
  main .ux-hero-dark,
  .ux-hero-dark {
    padding: 88px 16px 40px !important;
    align-items: flex-end !important;
  }
  main .ux-hero-split {
    display: block !important;
  }
  main .ux-hero-split-inner,
  .ux-hero-split-inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  main .ux-hero-copy,
  main .ux-hero-media,
  .ux-hero-copy,
  .ux-hero-media {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  main .ux-hero-media img,
  .ux-hero-media img {
    max-height: 42vh !important;
    object-fit: cover !important;
  }
  main .ux-hero-split,
  .ux-hero-split {
    padding: 72px 16px 28px !important;
  }
  main .ux-hero-full h1,
  main .ux-hero-split h1,
  main .ux-mag-card h1,
  main .ux-hero-dark h1,
  main h1,
  .ux-hero-full h1,
  .ux-hero-split h1,
  .ux-hero-dark h1 {
    font-size: clamp(1.35rem, 5.8vw, 1.85rem) !important;
    line-height: 1.2 !important;
    max-width: none !important;
  }
  main .ux-lead,
  .ux-lead {
    font-size: 15px !important;
    max-width: none !important;
  }
  main .ux-actions,
  .ux-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }
  main .ux-btn,
  main .ux-btn-outline,
  main a.ux-btn,
  .ux-btn,
  .ux-btn-outline,
  a.ux-btn {
    width: 100% !important;
    min-height: 48px !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
  /* Force single column grids/cards on small screens */
  main .ux-grid,
  main .ux-g2,
  main .ux-g3,
  main .ux-g4,
  main .ux-tri,
  main .ux-bento,
  main .ux-mosaic,
  main .ux-split,
  main .ux-feature,
  main .ux-rail,
  main .ux-stats,
  main .ux-stats-inline,
  main .ux-gallery,
  main .ux-feature-strip,
  main .mk-grid,
  main .mk-g2,
  main .mk-g3,
  main .mk-g4,
  .ux-grid,
  .ux-g2,
  .ux-g3,
  .ux-g4,
  .ux-tri,
  .ux-bento,
  .ux-mosaic,
  .ux-split,
  .ux-feature,
  .ux-rail,
  .ux-stats,
  .ux-stats-inline,
  .ux-gallery {
    grid-template-columns: 1fr !important;
    grid-template-rows: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  main .ux-mosaic .big,
  main .ux-bento .span2,
  .ux-mosaic .big,
  .ux-bento .span2,
  .ux-mosaic .wide,
  .ux-mosaic .tall {
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  main .ux-card,
  main .ux-mosaic,
  main .ux-mosaic-cell,
  .ux-card,
  .ux-mosaic,
  .ux-mosaic-cell {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  main .ux-grid > *,
  main .ux-g2 > *,
  main .ux-g3 > *,
  main .ux-g4 > *,
  main .ux-mosaic > *,
  .ux-grid > *,
  .ux-g2 > *,
  .ux-g3 > *,
  .ux-g4 > *,
  .ux-mosaic > * {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  main .ux-table-wrap,
  main .mk-table-wrap,
  .ux-table-wrap,
  .mk-table-wrap {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    max-width: 100% !important;
  }
  main .ux-mag-card,
  .ux-mag-card {
    margin: 24px 12px !important;
    padding: 22px 18px !important;
    max-width: none !important;
  }
  main .ux-list.cols,
  .ux-list.cols {
    grid-template-columns: 1fr !important;
  }
}
