:root{--body-size:1rem;--caption-size:14px;--section-size:14pt;--space-sm:16px;--space-md:24px;--space-lg:32px;--ink:#142d3c;--blue:#006fa8;--deep:var(--logo-navy);--muted:#526570;--line:#dce4e8;--light:#f2f6f8}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:Helvetica,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}.site-header{min-height:108px;max-width:1440px;padding:24px 5%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;gap:16px;align-items:center;line-height:1.2}.brand strong{font-size:46px;color:var(--blue);letter-spacing:-3px}.brand span{font-size:16px;font-weight:700}.site-header nav{display:flex;align-items:center;gap:28px;font-size:16px;font-weight:600}.button{display:inline-flex;background:var(--logo-navy);color:white;padding:14px 23px;border-radius:4px;align-items:center;gap:20px;font-weight:600}.button:hover{background:var(--blue);color:white}.hero{background:var(--light);padding:76px max(5%,calc((100% - 1296px)/2));display:grid;grid-template-columns:1.05fr 1fr;gap:var(--space-md) 56px;align-items:center}.eyebrow{font-size:16px;letter-spacing:1.5px;font-weight:700;color:var(--blue)}h1{font-size:clamp(40px,4.3vw,68px);line-height:1.08;letter-spacing:-2.5px;font-weight:500;margin:var(--space-md) 0 var(--space-md) 0}h1 em{font-style:normal;color:var(--logo-navy)}.hero p:not(.eyebrow){max-width:480px;font-size:18px;color:var(--ink)}.actions{display:flex;align-items:center;gap:var(--space-md) 26px;margin-top:var(--space-md)}.text-link{font-weight:600;font-size:16px}.hero figure{margin:0;position:relative;border-radius:5px;overflow:hidden;min-width:0}.hero img{display:block;width:100%;height:380px;object-fit:cover}.hero figcaption{background:var(--deep);color:white;padding:17px 22px;font-size:16px}.trust{padding:25px 5%;display:flex;justify-content:space-between;gap:var(--space-md) 25px;border-bottom:1px solid var(--line);font-size:16px}.trust strong{color:var(--blue)}@media(max-width:900px){.site-header{flex-wrap:wrap}.site-header nav{flex-wrap:wrap;gap:16px}.hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:42px}.hero img{height:300px}.trust{flex-wrap:wrap}h1{letter-spacing:-1.5px}.actions{flex-wrap:wrap}}

/* TSP shared page system */
html{scroll-behavior:smooth;scroll-padding-top:30px}button,input,select,textarea{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}:focus-visible{outline:3px solid #e8a92e;outline-offset:5px}.skip-link{position:absolute;left:20px;top:-80px;background:white;padding:12px;z-index:50}.skip-link:focus{top:12px}.topline{background:var(--deep);color:#fff;font-size:16px;padding:9px 5%;display:flex;justify-content:space-between;gap:20px;letter-spacing:.2px}.topline a{color:white}.site-header{max-width:1500px;min-height:100px;padding-top:20px;padding-bottom:20px}.brand img{width:54px;height:54px;object-fit:contain}.brand span{font-size:16px;letter-spacing:-.2px}.brand small{display:block;font-size:16px;font-weight:400;margin-top:4px;color:var(--muted)}.site-header nav>a{white-space:nowrap}.site-header nav>a[aria-current=page]:not(.button){color:var(--blue)}.menu-toggle{display:none;border:1px solid var(--line);background:white;padding:10px 16px;border-radius:4px;font-size:16px}.hero{padding-top:32px;padding-bottom:32px;gap:var(--space-md) 50px}.hero h1{font-size:clamp(42px,4.25vw,64px);font-weight:600;letter-spacing:-2.5px}.hero .eyebrow{font-size:16px}.hero .image-tag{position:absolute;left:20px;top:20px;color:white;background:rgb(0 46 111 / 91%);padding:7px 12px;font-size:16px;letter-spacing:1px}.hero figure{box-shadow:0 16px 40px rgb(0 46 111 / 7%)}.hero figcaption{display:flex;justify-content:space-between;gap:20px}.hero img{height:370px}.trust{padding:27px max(5%,calc((100% - 1296px)/2));background:#fff;align-items:center}.trust strong{font-size:18px}.section{max-width:1440px;margin:auto;padding:28px 5%}.section-heading{display:flex;justify-content:space-between;gap:var(--space-md) 36px;align-items:end;margin-bottom:24px}.section-heading h2,.split-feature h2{font-size:clamp(30px,3vw,43px);font-weight:500;line-height:1.15;letter-spacing:-1px;margin:9px 0 0;}.section-heading p{max-width:460px;color:var(--ink);margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{border:1px solid var(--line);border-radius:5px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.service-card:hover{transform:translateY(-4px);border-color:var(--blue)}.service-card img{display:block;width:100%;height:200px;object-fit:contain;background:var(--light);padding:16px}.service-card .photo{object-fit:cover;padding:0}.service-card-content{padding:26px;display:flex;flex:1;flex-direction:column}.service-card .number{font-size:16px;color:var(--blue);letter-spacing:1px}.service-card h3{font-size:24px;letter-spacing:-.5px;line-height:1.2;margin:12px 0;}.service-card p{color:var(--ink);margin:0 0 22px;line-height:1.6}.service-card .text-link{margin-top:auto;color:var(--blue)}.support-links{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.support-link{background:var(--light);display:flex;gap:24px;align-items:center;padding:25px 28px;border:1px solid var(--line);border-radius:4px}.support-link h3{font-size:20px;margin:0;}.support-link p{font-size:16px;color:var(--ink);margin:5px 0 0}.support-link .arrow{margin-left:auto;font-size:24px;color:var(--blue)}.brand-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 5%;text-align:center}.brand-band p{font-size:16px;letter-spacing:1.3px;text-transform:none;color:var(--ink);margin:0 0 20px}.machine-names{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 35px;font-size:18px;font-weight:700;color:var(--ink)}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md) 70px;align-items:center}.split-feature img{width:100%;height:340px;object-fit:cover;border-radius:4px}.split-feature p{color:var(--ink)}.check-list{padding:0;list-style:none;margin:var(--space-md) 0 var(--space-md) 0}.check-list li{padding:10px 0 10px 27px;border-bottom:1px solid var(--line);position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--blue)}.cta{background:var(--deep);color:white;padding:24px max(5%,calc((100% - 1296px)/2));display:flex;justify-content:space-between;align-items:center;gap:24px}.cta h2{font-size:32px;line-height:1.2;margin:0 0 8px;font-weight:500;letter-spacing:-.6px;}.cta p{color:#fff;max-width:none;margin:0}.cta>div{flex:1;min-width:0}.cta .button{flex-shrink:0;max-width:100%;white-space:normal;text-align:center;background:white;color:var(--deep)}.site-footer{background:var(--logo-navy);color:#fff;padding:32px max(5%,calc((100% - 1296px)/2)) 22px;font-size:16px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:var(--space-md) 60px}.site-footer h3{font-size:16px;color:white;margin:0 0 15px;}.site-footer p{margin:0 0 12px;max-width:380px}.site-footer a{display:block;margin:8px 0;color:#fff;overflow-wrap:anywhere}.site-footer a:hover{color:white;text-decoration:underline}.footer-bottom{border-top:1px solid #ffffff20;margin-top:24px;padding-top:18px;font-size:16px;display:flex;justify-content:space-between;gap:var(--space-md) 25px}.page-hero{background:var(--light);padding:24px max(5%,calc((100% - 1296px)/2));border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(34px,3.4vw,50px);letter-spacing:-1.5px;line-height:1.15;margin:16px 0}.page-hero>:first-child{margin-top:0}.page-hero>p:last-child{font-size:18px;max-width:800px;margin:0;color:var(--ink)}.catalogue-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:var(--space-md) 48px}.catalogue-nav{align-self:start;font-size:16px;border:1px solid var(--line);border-radius:4px;overflow:hidden}.catalogue-nav summary{padding:17px 20px;font-weight:700;background:var(--light);cursor:pointer}.catalogue-nav a{display:block;border-top:1px solid var(--line);padding:10px 20px;line-height:1.4}.catalogue-nav a.active{background:var(--blue);color:white}.catalogue-nav .nav-label{font-size:16px;text-transform:none;letter-spacing:1px;padding:18px 20px 8px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.product-tile{border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column}.product-tile:hover{border-color:var(--blue)}.product-tile figure{margin:0;background:var(--light);padding:18px;height:175px;display:flex;align-items:center;justify-content:center}.product-tile img{max-width:100%;max-height:100%;object-fit:contain}.product-tile h3{font-size:17px;margin:20px 20px 10px;line-height:1.3;}.product-tile p{font-size:16px;color:var(--ink);margin:0 20px 20px}.product-tile .tile-link{font-size:16px;font-weight:600;color:var(--blue);margin:auto 20px 20px}.category-group{margin-bottom:var(--space-md)}.category-group h2{font-weight:500;font-size:28px;margin-top:0;}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.brand-tile{padding:19px 20px;border:1px solid var(--line);border-radius:4px;font-weight:600;font-size:16px;display:flex;justify-content:space-between;align-items:center}.brand-tile:hover{border-color:var(--blue);background:var(--light)}.detail-head{margin-bottom:24px}.detail-head h1{font-family:Helvetica,Arial,sans-serif;font-size:24px;font-weight:700;line-height:1.2;margin:0;color:var(--logo-navy)}.technical-content{min-width:0;line-height:1.7;color:var(--ink)}.technical-content h2{font-size:27px;line-height:1.25;color:var(--logo-navy);margin:var(--space-md) 0 18px 0;font-weight:500;letter-spacing:-.5px;}.technical-content h3{font-size:21px;color:var(--logo-navy);margin:var(--space-md) 0 12px 0;line-height:1.3;}.technical-content p{margin:0 0 var(--space-sm)}.technical-content>:first-child{margin-top:0}.technical-content ul{padding-left:22px}.technical-content li{margin:7px 0}.technical-content a{color:var(--blue);text-decoration:underline;overflow-wrap:anywhere}.technical-content img{display:block;max-width:100%;height:auto;max-height:560px;object-fit:contain;margin:22px auto}.technical-content .figure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:var(--space-md) 0 var(--space-md) 0}.technical-content .figure-grid img{width:100%;height:180px;object-fit:contain;margin:0;background:var(--light);padding:12px;border:1px solid var(--line)}.technical-content table{border-collapse:collapse;min-width:500px;width:100%;font-size:16px}.technical-content th{background:var(--deep);color:white;text-align:center;font-weight:600}.technical-content th,.technical-content td{border:1px solid var(--line);padding:12px;vertical-align:middle}.technical-content td img{max-height:180px;max-width:180px;margin:8px auto}.technical-content tbody tr:nth-child(even){background:var(--light)}.table-scroll{overflow-x:auto;max-width:100%;margin:var(--space-md) 0 var(--space-md) 0}.product-cta{border-left:3px solid var(--blue);background:var(--light);padding:26px 30px;margin-top:24px}.product-cta h3{margin:0 0 8px;}.product-cta p{margin:0 0 18px;font-size:16px;color:var(--ink)}.service-intro{max-width:840px;font-size:19px;color:var(--ink);margin:0 0 24px}.expertise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md) 25px}.expertise-card{border-top:3px solid var(--blue);background:var(--light);padding:28px}.expertise-card h2{font-size:23px;font-weight:500;margin:0 0 16px;line-height:1.3;}.expertise-card ul{list-style:none;padding:0;margin:0;color:var(--ink);font-size:16px;display:grid;gap:12px}.expertise-card li{display:flex;align-items:flex-start;gap:10px;margin:0;line-height:1.6}.expertise-point-icon{flex:0 0 20px;color:var(--logo-navy);margin-top:3px}.expertise-card li>span{min-width:0}.contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--space-md) 70px}.contact-layout h2{font-size:28px;line-height:1.25;margin:0 0 16px;font-weight:500;}.contact-form>p{color:var(--ink);font-size:16px;margin-bottom:var(--space-md)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field label{font-size:16px;font-weight:600}.form-field label span{font-weight:400;color:var(--muted)}.form-field input,.form-field textarea{border:1px solid #bfced6;border-radius:4px;padding:12px 14px;width:100%;min-width:0;background:white;color:var(--ink)}.form-field textarea{min-height:150px;resize:vertical}.form-field.full{grid-column:1/-1}.form-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:var(--space-md)}.form-actions button{border:0;font-size:16px}.form-actions .secondary{background:white;border:1px solid #bfced6;color:var(--ink);padding:13px 20px;border-radius:4px}.form-note{font-size:var(--body-size)!important;line-height:1.5}.contact-card{background:var(--light);border:1px solid var(--line);border-radius:5px;padding:32px}.contact-channel{display:block;padding:18px 0;border-bottom:1px solid var(--line)}.contact-channel span{display:block;font-size:16px;color:var(--muted);text-transform:none;letter-spacing:1px;margin-bottom:5px}.contact-channel strong{font-size:17px;font-weight:600;overflow-wrap:anywhere}.contact-card h3{font-size:18px;margin:var(--space-md) 0 8px 0;}.contact-card p{font-size:16px;margin:0;color:var(--ink)}.company-details{font-size:16px;margin-top:var(--space-md);color:var(--ink);line-height:1.9}.company-details strong{color:var(--ink)}.copy-fallback{width:100%;min-height:220px;margin-top:20px;border:1px solid var(--line);padding:16px}.quote-note{padding:24px;background:var(--light);border-left:3px solid var(--blue);color:var(--ink);font-size:16px}.no-image{background:var(--light);color:var(--blue);height:175px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:600}.intro-column{max-width:850px}.about-details{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md) 35px}.about-details>div{border-top:1px solid var(--line);padding-top:25px}.about-details .site-tile-heading{font-size:22px;font-weight:500;margin:0 0 12px;}.about-details p{color:var(--ink);margin:0}.tech-note{font-size:16px;color:var(--muted);margin-top:22px}.product-index{padding-top:28px;padding-bottom:28px}
@media(min-width:1500px){.hero{padding-left:max(5%,calc((100% - 1296px)/2));padding-right:max(5%,calc((100% - 1296px)/2))}}
@media(max-width:1100px){.site-header nav{gap:18px}.site-header nav>a{font-size:16px}.brand span{font-size:16px}.brand img{width:45px;height:48px}.hero{gap:var(--space-md) 30px}.catalogue-layout{grid-template-columns:220px minmax(0,1fr);gap:var(--space-md) 28px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-layout{gap:var(--space-md) 35px}}
@media(max-width:850px){.topline{font-size:16px}.topline .topline-right{display:none}.site-header{position:relative;flex-wrap:wrap;gap:0;padding:17px 5%;min-height:84px}.brand span{font-size:16px}.menu-toggle{display:block}.site-header nav{display:none;flex-direction:column;align-items:stretch;width:100%;gap:0;padding-top:15px}.site-header nav.open{display:flex}.site-header nav>a{font-size:16px;padding:13px 4px;border-top:1px solid var(--line)}.site-header nav>.button{padding:12px 20px;margin-top:10px;border:0;align-self:start}.hero{grid-template-columns:1fr;padding:24px 5%;gap:24px}.hero h1{font-size:48px;max-width:600px;letter-spacing:-1.8px}.hero img{height:290px}.hero p:not(.eyebrow){font-size:18px;max-width:620px}.hero figcaption{font-size:16px}.trust{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:16px}.trust strong{grid-column:1/-1;font-size:18px}.section{padding:24px 5%}.section-heading{align-items:start;flex-direction:column;gap:10px}.cards{grid-template-columns:1fr;gap:20px}.service-card{display:grid;grid-template-columns:190px 1fr}.service-card img{height:100%;min-height:220px}.service-card-content{padding:25px}.support-links{grid-template-columns:1fr}.split-feature{grid-template-columns:1fr;gap:var(--space-md) 30px}.split-feature img{height:300px}.cta{padding:24px 5%;align-items:start;flex-direction:column;gap:16px}.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-md) 30px}.footer-grid>div:first-child{grid-column:1/-1}.catalogue-layout{grid-template-columns:1fr;gap:var(--space-md) 28px}.catalogue-nav{max-height:300px;overflow:auto}.catalogue-nav a{padding:10px 16px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-layout{grid-template-columns:1fr;gap:24px}.expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-hero{padding:24px 5%}.about-details{grid-template-columns:1fr}.technical-content .figure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.topline{padding-top:7px;padding-bottom:7px;font-size:16px}.hero h1{font-size:39px;line-height:1.12;letter-spacing:-1.4px}.hero .eyebrow{font-size:16px;letter-spacing:1px}.hero .actions{gap:18px}.hero .button{padding:13px 18px;font-size:16px}.hero img{height:245px}.hero figcaption span:last-child{display:none}.hero figcaption{font-size:16px}.trust{grid-template-columns:1fr;gap:7px}.trust strong{font-size:17px}.service-card{display:flex}.service-card img{height:200px;min-height:0}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-tile figure{height:140px;padding:12px}.product-tile h3{font-size:16px;margin:16px 14px 10px}.product-tile p{font-size:16px;margin:0 14px 16px}.product-tile .tile-link{margin:0 14px 17px}.brand-tile{padding:15px 12px;font-size:16px}.section-heading h2,.split-feature h2{font-size:31px}.section{padding-top:24px;padding-bottom:24px}.support-link{padding:22px}.footer-grid{grid-template-columns:1fr;gap:var(--space-md) 27px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}.page-hero h1{font-size:35px;letter-spacing:-1px}.page-hero>p:last-child{font-size:17px}.form-grid{grid-template-columns:1fr}.contact-card{padding:25px}.expertise-grid{grid-template-columns:1fr}.technical-content h2{font-size:25px}.technical-content .figure-grid{gap:10px}.technical-content .figure-grid img{height:140px}.no-image{height:140px}.brand{gap:10px}.brand small{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.topline,.site-header nav,.menu-toggle,.cta,.catalogue-nav,.site-footer,.form-actions{display:none!important}.catalogue-layout{display:block}.section{padding:20px 0}.page-hero{padding:20px 0;background:white}.technical-content img{max-height:400px}}

.figure-grid figure{margin:0;min-width:0}.technical-content .figure-grid h3{font-size:16px;line-height:1.4;letter-spacing:0;margin:12px 0 0;}.technical-content .figure-grid a{display:block}.technical-content>p{max-width:960px}.text-group{margin:0 0 20px}.bullet-line{padding:4px 0}.gallery-title{font-size:28px;font-weight:500;margin:24px 0 16px}.fancy-links{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.fancy-links a{font-size:16px;font-weight:600;border:1px solid var(--line);padding:11px 18px;border-radius:4px}.fancy-links a:hover{border-color:var(--blue);background:var(--light)}.technical-content .text-group .figure-grid{margin:24px 0}.site-header nav>a{font-size:16px}.brand small{font-size:16px}.topline,.hero .eyebrow{font-size:16px}.technical-content figure p{font-size:16px;line-height:1.4}.technical-content a:has(img):hover img{outline:2px solid var(--blue);outline-offset:3px}

/* Supplied landscape TSP logo, with its intrinsic proportions preserved. */
.site-header .brand { display: block; flex-shrink: 0; width: 400px; max-width: 100%; }
.site-header .brand img { display: block; width: 100%; height: auto; object-fit: contain; }
@media (min-width: 901px) and (max-width: 1200px) {
 .site-header { flex-wrap: wrap; row-gap: 20px; }
 .site-header nav { margin-left: auto; }
}
@media (max-width: 900px) { .site-header .brand { width: 360px; max-width: calc(100% - 90px); } }
@media (max-width: 520px) { .site-header .brand { width: 310px; } }

/* Keep heading connectors lowercase in the displayed text. */
.eyebrow, .nav-label, th, summary { text-transform: none; }

/* Align the homepage introduction with the top edge of its photograph. */
.hero { align-items: start; }
.hero > div > .eyebrow:first-child { margin-top: 0; }

/* Give the headline room and fill the adjacent column with the photograph. */
@media (min-width: 901px) {
 .hero { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: var(--space-md) 28px; align-items: stretch; }
}
.hero > div { min-width: 0; }
.hero .actions { flex-wrap: wrap; }
.hero figure { display: flex; flex-direction: column; }
.hero-photo { position: relative; flex: 1; min-height: 340px; overflow: hidden; }
.hero .hero-photo > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero figcaption { flex-shrink: 0; }
.hero .image-tag { z-index: 1; max-width: calc(100% - 40px); line-height: 1.4; }
@media (max-width: 900px) {
 .hero-photo { min-height: clamp(245px, 48vw, 370px); }
}

/* Make the specialist credentials easier to read above the main headline. */
.hero .eyebrow { font-size: 16px; line-height: 1.65; letter-spacing: .25px; font-weight: 700; margin-bottom: var(--space-md); }
.hero .hero-specialism { font-size: 22px; color: var(--deep); }
.hero .hero-experience { font-size: 16px; }
@media (max-width: 520px) {
 .hero .hero-specialism { font-size: 20px; }
 .hero .hero-experience { font-size: 16px; }
}

/* Homepage customer, capability and outcome sections. */
.home-support .machine-names { display:flex; flex-wrap:wrap; gap:16px 32px; color:var(--deep); font-size:19px; font-weight:600; }
.home-capabilities { background:var(--light); }
.home-capabilities .service-card img { object-fit:contain; background:white; }
.home-capabilities .service-card img.photo { object-fit:cover; }
.home-multibrand { margin:var(--space-md) 0 0 0; max-width:800px; }
.home-outcomes { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.home-reasons-grid p { border-top:3px solid var(--blue); padding-top:16px; }
.home-outcomes article { display:flex; flex-direction:column; min-width:0; padding:22px 20px; border:1px solid var(--line); border-top:3px solid var(--blue); background:var(--light); }
.home-outcomes h3 {font-size:21px;margin:0 0 14px;}
.home-outcomes p { font-size:16px; margin:0 0 22px; line-height:1.7; color:var(--ink); }
.home-outcomes .button { display:flex; align-items:center; justify-content:center; width:100%; min-height:48px; margin-top:auto; padding:11px 12px; background:var(--logo-navy); color:#fff; text-align:center; white-space:normal; line-height:1.4; }
.home-outcomes .button:hover { background:var(--blue); }
.home-outcomes .button:focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
.cta > .text-link { color:inherit; white-space:nowrap; }
@media(max-width:1100px) { .home-outcomes { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .home-outcomes { grid-template-columns:1fr; } }

/* Compact, connected introduction for the supported machine brands. */
.home-support { padding-top:32px; padding-bottom:32px; }
.home-support .section-heading { display:block; margin-bottom:20px; }
.home-support .section-heading h2 {margin:0 0 10px;}
.home-support .section-heading p { max-width:920px; margin:0; }
.home-support .machine-names { justify-content:flex-start; gap:12px 28px; }
@media(max-width:520px) { .home-support { padding-top:26px; padding-bottom:26px; } }

/* Group the support title and copy within a compact single-column block. */
.home-support { padding-top:24px; padding-bottom:24px; }
.home-support .support-intro { display:block; margin:0 0 20px; }
.home-support .support-intro h2 {font-size:clamp(30px,3vw,38px);font-weight:500;line-height:1.15;letter-spacing:-1px;margin:0 0 10px;}
.home-support .support-intro p { max-width:1000px; color:var(--ink); margin:0; font-size:16px; line-height:1.6; }
.home-support .machine-names { gap:10px 24px; font-size:18px; line-height:1.5; }
@media(max-width:520px) { .home-support { padding-top:20px; padding-bottom:20px; } }

/* Keep the capabilities introduction connected and compact. */
.home-capabilities { padding-top:30px; padding-bottom:30px; }
.home-capabilities .section-heading { display:block; margin-bottom:24px; }
.home-capabilities .section-heading h2 {margin:0 0 10px;}
.home-capabilities .section-heading p { max-width:1000px; margin:0; }
@media(max-width:520px) { .home-capabilities { padding-top:24px; padding-bottom:24px; } }

/* Compact outcome introduction above the ordered benefit tiles. */
.home-deliver { padding-top:30px; padding-bottom:30px; }
.home-deliver .section-heading { display:block; margin-bottom:24px; }
.home-deliver .section-heading h2 {margin:0 0 10px;}
.home-deliver .section-heading p { max-width:1000px; margin:0; }
@media(max-width:520px) { .home-deliver { padding-top:24px; padding-bottom:24px; } }

.top-contact { display:inline-flex; align-items:center; gap:9px; vertical-align:middle; white-space:nowrap; }
.top-contact .contact-icon { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; }
.top-contact .contact-icon img { display:block; width:19px; height:19px; }
.top-contact a:focus-visible { outline:2px solid white; outline-offset:3px; }

.barmag-catalogue { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:start; }
.barmag-catalogue figure { margin:0; border:1px solid var(--line); background:white; }
.technical-content .barmag-catalogue img { width:100%; height:auto; max-height:none; margin:0; }
.barmag-catalogue figcaption { padding:12px 16px; border-top:1px solid var(--line); font-size:16px; }
@media(max-width:600px) { .barmag-catalogue { grid-template-columns:1fr; } }

/* Display each Barmag catalogue sheet at the full available content width. */
.barmag-catalogue { grid-template-columns:minmax(0,1fr); gap:var(--space-md) 32px; }

/* Pair yarn cutter and sensor product sheets, with full-width tiles on phones. */
.barmag-catalogue.yarn-cutter-catalogue,.barmag-catalogue.yarn-sensor-catalogue{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md) 24px;align-items:stretch}
.yarn-cutter-catalogue figure,.yarn-sensor-catalogue figure{display:flex;flex-direction:column;min-width:0}
.yarn-cutter-catalogue figure>a,.yarn-sensor-catalogue figure>a{display:block}
.technical-content .yarn-cutter-catalogue figcaption,.technical-content .yarn-sensor-catalogue figcaption{margin-top:auto;padding:16px;font-family:Helvetica,Arial,sans-serif;font-size:var(--caption-size)!important;line-height:1.45}
@media(max-width:600px){.barmag-catalogue.yarn-cutter-catalogue,.barmag-catalogue.yarn-sensor-catalogue{grid-template-columns:minmax(0,1fr)}}

/* Larger, borderless Rieter Scragg product photographs. */
.technical-content .scragg-components { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-md) 20px; }
.technical-content .scragg-components figure,.technical-content .scragg-assembly { margin:0; padding:0; border:0; box-shadow:none; background:transparent; }
.technical-content .scragg-components img { display:block; width:100%; height:260px; max-height:none; object-fit:contain; margin:0; padding:0; border:0; border-radius:0; }
.technical-content .scragg-components figcaption { text-align:center; font-size:16px; line-height:1.45; font-weight:600; color:var(--muted); padding:12px 0 0; border:0; }
.technical-content .scragg-assembly img { width:100%; height:auto; max-height:none; border:0; margin:0; }
@media(max-width:1000px) { .technical-content .scragg-components { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .technical-content .scragg-components { grid-template-columns:1fr; } .technical-content .scragg-components img { height:auto;max-height:380px; } }

.bhagat-subnav{border-left:3px solid var(--blue);margin:0 10px 12px 16px}
.catalogue-nav .bhagat-subnav a{padding:10px 12px;font-size:16px;background:var(--light)}
.bhagat-category{border:1px solid var(--line);margin:0 0 14px;scroll-margin-top:24px}
.bhagat-category>summary{cursor:pointer;padding:18px 20px;background:var(--light);color:var(--deep);font-size:21px;font-weight:600}
.bhagat-category-content{padding:20px}.bhagat-category-content>p:first-child{margin-top:0}
@media(max-width:600px){.bhagat-category-content{padding:12px}.bhagat-category>summary{font-size:18px;padding:16px}}

.bhagat-assembly{margin:0 0 var(--space-md) 0;text-align:center}

.detail-section{padding-top:28px}@media(max-width:700px){.detail-section{padding-top:20px}}

.detail-head h1{letter-spacing:normal}
.detail-head-with-tagline{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 20px}
.detail-head-with-tagline .product-breadcrumbs{flex-basis:100%}
.detail-head-with-tagline .detail-tagline{margin:0;font-size:var(--body-size);font-weight:700;line-height:1.5;color:var(--logo-navy)}

/* Ceramic guide surface illustrations */
.ceramic-surface-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.ceramic-surface-grid figure{margin:0;border:1px solid var(--line);background:white}
.technical-content .ceramic-surface-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;max-height:none;padding:0;border:0;margin:0;background:white}
.ceramic-surface-grid figcaption{padding:18px 20px;border-top:1px solid var(--line)}
.technical-content .ceramic-surface-grid h3{margin:0 0 10px;font-size:20px;line-height:1.35;}
.ceramic-surface-grid figcaption p{font-size:16px;color:var(--muted);margin:0}
@media(max-width:800px){.ceramic-surface-grid{grid-template-columns:1fr}}

/* Readable material profiles */
.ceramic-material-profiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0 var(--space-md) 0}
.ceramic-material-profiles>section{min-width:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#fff;padding:0 0 8px}
.technical-content .ceramic-material-profiles .site-tile-heading{font-size:16px;font-weight:700;margin:0 0 20px;padding:18px 22px;background:var(--deep);color:#fff;line-height:1.4;letter-spacing:normal;}
.ceramic-material-profiles p{margin:0 22px 18px}
@media(max-width:760px){.ceramic-material-profiles{grid-template-columns:1fr;gap:20px}}

/* Use Helvetica throughout, with system fallbacks when it is not installed. */
html,body,body *{font-family:Helvetica,Arial,sans-serif!important}
body,p,li,dt,dd,table,th,td,caption,figcaption,label,input,select,textarea,button,small,
.topline,.site-footer,.footer-bottom,.company-details,.quote-note,.tech-note,
.text-group,.bullet-line,.service-intro,.trust,.catalogue-nav,.site-header nav,
.site-header nav>a,.catalogue-nav a,.catalogue-nav .bhagat-subnav a,
.button,.text-link,.tile-link,.fancy-links a,.brand-tile,.form-note,
.contact-channel strong,.contact-channel span{font-size:var(--body-size)!important}
.technical-content table :is(p,span,a,strong,em,small,li){font-size:var(--body-size)!important}

/* Matched surface-finish tiles and aligned illustration tops. */
.ceramic-surface-grid figure{min-width:0;display:flex;flex-direction:column}
.ceramic-surface-grid .surface-picture{display:block;padding:24px 16px 0;overflow:hidden}
.technical-content .surface-picture-matt img{transform:translateY(-1.85546875%)}
.ceramic-surface-grid figcaption{flex:1}
.technical-content .ceramic-surface-grid h3{min-height:2.7em;}
.technical-content .ceramic-surface-grid .surface-finish-range{margin:0 0 12px}
@media(max-width:800px){.technical-content .ceramic-surface-grid h3{min-height:0}}

/* Metal-sand technical content and responsive specification tables. */
.metal-sand-content h3{font-size:16px;font-weight:700;margin:var(--space-md) 0 12px 0;}
.technical-content .metal-sand-content .polymer-heading-group{margin:var(--space-md) 0 18px 0}
.technical-content .metal-sand-content .polymer-section-title{margin:0;font-size:var(--section-size)!important;font-weight:700;line-height:1.4;letter-spacing:normal;color:var(--logo-navy)}
.technical-content .metal-sand-content .polymer-section-subtitle{margin:6px 0 0;font-size:var(--body-size)!important;font-weight:400;line-height:1.5;letter-spacing:normal;color:var(--ink);max-width:none}
.metal-sand-content .metal-sand-figure{margin:24px 0}
.metal-sand-content .metal-sand-figure img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;margin:0}
.page-hero.polymer-product-hero>p:last-child{max-width:none}
.metal-sand-content :is(.metal-sand-product-photo,.metal-sand-particle-photo) img{width:50%;max-height:380px;margin:0 auto}
.metal-sand-content .metal-spin-pack-cutaway img{width:75%;max-height:570px;margin:0 auto}
.metal-sand-content figcaption{margin-top:10px;color:var(--muted);line-height:1.6}
.metal-table-scroll{overflow-x:auto;margin:20px 0;max-width:100%}
.metal-table-scroll table{width:100%;min-width:540px;margin:0}
.metal-table-scroll th,.metal-table-scroll td{overflow-wrap:normal}

.metal-sand-content table th,.metal-sand-content table td{text-align:center;vertical-align:middle}

/* Keep grade identifiers and positioning labels together. */
.metal-sand-content .metal-grade-table :is(th,td):nth-child(-n/**/+2),
.metal-sand-content .metal-composition-table :is(th,td):first-child{white-space:nowrap}
.metal-sand-content .metal-grade-table :is(th,td):nth-child(-n/**/+2){width:1%}
.metal-sand-content .metal-grade-table td:nth-child(3){text-align:left}

.technical-content table td.table-text-cell{text-align:left}

/* Consistent compact table rows across the website. */
.technical-content table th{text-align:center!important}
.technical-content table td{height:var(--header-min-height);padding:6px 12px;line-height:20px;vertical-align:middle}
.technical-content table td :is(p,div,span,a,strong,em,small,li){line-height:20px}
.technical-content table td p{margin:0}
.technical-content table td:first-child{white-space:nowrap;width:1%}

/* Candle brochure follows the established polymer catalogue typography. */
.candle-content figcaption{text-align:center}
.candle-filter-page .candle-half-photo img{width:50%;max-height:380px;margin:0 auto}
.technical-content .candle-filter-page .filtration-reference-table tbody tr>:first-child{text-align:center!important}
.technical-content .candle-filter-page .clean-diagram-card .clean-caption{font-size:var(--body-size)!important;font-weight:700}
.technical-content .metal-sand-content.candle-filter-page table thead th{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .candle-filter-page .filtration-reference-table tr>:first-child{width:132px;white-space:nowrap}

.candle-content .metal-table-scroll table{min-width:740px}
.candle-content table td:not(.table-text-cell){text-align:center}

.spin-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.spin-filter-grid .metal-sand-figure img{height:180px;object-fit:contain}.spin-filter-grid figcaption{font-weight:700}.spin-filter-grid p{margin-top:12px}@media(max-width:700px){.spin-filter-grid{grid-template-columns:1fr}}
.spin-pack-content .spin-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.spin-pack-content .spin-pack-body-photo img{width:75%;max-height:570px;margin:0 auto}
.spin-pack-content .spin-annular-photo img{width:56.25%;max-height:427.5px;margin:0 auto}
.spin-pack-content .spin-filter-grid .metal-sand-figure{margin:0 0 16px}
.technical-content .metal-sand-content.spin-pack-content table thead th{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.spin-pack-content table.filtration-reference-table{table-layout:fixed}
.technical-content .metal-sand-content.spin-pack-content .filtration-reference-table tr>:first-child{width:100px;text-align:center!important;white-space:nowrap}
.technical-content .metal-sand-content.spin-pack-content table.filtration-reference-table[data-filtration-columns="3"]{min-width:1100px}
.technical-content .metal-sand-content.spin-pack-content .filtration-reference-table[data-filtration-columns="3"] tr>:first-child{width:200px}
.technical-content .metal-sand-content.spin-pack-content .filtration-reference-table[data-filtration-columns="3"] tr>:nth-child(2){width:320px}
.technical-content .metal-sand-content.spin-pack-content .filtration-reference-table[data-filtration-columns="3"] tbody tr>:nth-child(3){white-space:nowrap}


.spinneret-content .spinneret-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.technical-content .metal-sand-content.spinneret-content .filtration-reference-table tr>:first-child{text-align:center!important}
.technical-content .metal-sand-content.spinneret-content table thead th{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}

/* Match content headings and table banners to the TSP logo navy. */
:root{--logo-navy:#002e6f}
.topline{background:var(--logo-navy);color:#fff}
main :is(h2,h3,h4){color:var(--logo-navy);}
table th,.technical-content table th{background:var(--logo-navy);color:#fff}
.technical-content .ceramic-material-profiles .site-tile-heading{background:var(--logo-navy);color:#fff;}

/* Mesh catalogues follow the existing polymer brochure layout. */
.technical-content :is(.dutch-weave-content,.woven-mesh-content,.filter-screens-content,.sintered-fibre-content,.photoetched-content,.leaf-disc-content,.gasket-content) table{table-layout:fixed;min-width:46.25rem}
.technical-content :is(.dutch-weave-content,.woven-mesh-content,.filter-screens-content,.sintered-fibre-content,.photoetched-content,.leaf-disc-content,.gasket-content) table td:first-child{width:auto}
.technical-content :is(.dutch-weave-content,.woven-mesh-content,.filter-screens-content,.sintered-fibre-content,.photoetched-content,.leaf-disc-content,.gasket-content) table th{padding:8px 12px;line-height:20px;white-space:nowrap}
.technical-content :is(.dutch-weave-content,.woven-mesh-content,.filter-screens-content,.sintered-fibre-content) :is(.dutch-weave-specs,.woven-mesh-specs,.filter-screen-examples,.sintered-fibre-specs) :is(th,td){text-align:center}
.dutch-weave-closeups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.dutch-weave-closeups figure{min-width:0}
.technical-content .dutch-weave-closeups img{display:block;width:100%;height:auto;aspect-ratio:6/5;object-fit:contain}
.technical-content .dutch-weave-content .dutch-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.technical-content .dutch-weave-content .dutch-weave-closeups figcaption,.technical-content .dutch-weave-content .dutch-weave-diagram figcaption{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.dutch-weave-content table.filtration-data-table tr>:is(th,td){text-align:center!important}
.technical-content .metal-sand-content.dutch-weave-content table thead th,.technical-content .metal-sand-content.dutch-weave-content table thead th .unit{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.dutch-weave-content table.filtration-data-table{min-width:960px;table-layout:fixed}
.dutch-application-overview{grid-column:1/-1}
@media(max-width:700px){.dutch-weave-closeups{grid-template-columns:1fr}}
.woven-mesh-formula{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 32px;padding:16px;background:var(--light);color:var(--logo-navy);font-weight:600;margin:20px 0}
.woven-mesh-formula>span{white-space:nowrap}
.woven-mesh-content .woven-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.technical-content .woven-mesh-content .woven-mesh-formula>span{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.woven-mesh-content table thead th{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.woven-mesh-content .filtration-data-table tr>:first-child{text-align:center!important}
.technical-content img.woven-weave-vector,.clean-image-dialog img.woven-weave-vector{display:block;width:100%;height:auto;max-height:none;margin:0;object-fit:contain}
.technical-content .woven-mesh-content .clean-diagram-card .clean-caption{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .filter-screens-content .filter-screen-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.technical-content .filter-screens-content .filter-screen-bowl-diagrams .clean-visual{width:75%;margin:0 auto}
/* Match the image areas to the bowl crop at 75% width so both text rows align. */
.filter-screen-bowl-diagrams .clean-image-button{aspect-ratio:818/225}
.technical-content .filter-screens-content .filter-screen-square-diagram .clean-visual{width:56.25%;max-width:534.375px;margin:0 auto}
.technical-content img.filter-screen-aperture-vector,.clean-image-dialog img.filter-screen-aperture-vector{display:block;width:100%;height:auto;max-height:none;margin:0;object-fit:contain}
.technical-content .filter-screens-content .clean-diagram-card .clean-caption,.technical-content .filter-screens-content .woven-mesh-formula>span{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.filter-screens-content table thead th,.technical-content .metal-sand-content.filter-screens-content table thead th .unit{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.filter-screens-content table.filtration-data-table tr>:first-child{text-align:center!important}
.filter-screen-profile-tiles .clean-image-button{height:250px;padding:0;border:0}
.filter-screen-profile-tiles .clean-image-window{width:min(100%,calc(250px * var(--image-ratio)))}
.filter-screen-application-overview{grid-column:1/-1}
.sintered-fibre-structure-images{display:grid;grid-template-columns:minmax(0,35fr) minmax(0,61fr);gap:4%;align-items:center}
.technical-content .sintered-fibre-content .sintered-fibre-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.technical-content .metal-sand-content.sintered-fibre-content table.filtration-data-table tr>:is(th,td){text-align:center!important}
.technical-content .metal-sand-content.sintered-fibre-content table thead th,.technical-content .metal-sand-content.sintered-fibre-content table thead th span{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.sintered-fibre-content table.filtration-data-table{min-width:960px;table-layout:fixed}
.sintered-depth-diagram{min-width:0;margin:24px 0}
.sintered-depth-visual{display:block;width:100%;max-width:1200px;text-align:center;font-family:Helvetica,Arial,sans-serif;color:var(--logo-navy)}
.sintered-depth-title,.sintered-depth-region{display:block;font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.sintered-depth-title{margin-bottom:16px}
.sintered-depth-regions{display:grid;grid-template-columns:1fr 1fr;width:71.6667%;margin:0 auto 6px;gap:8px}
.technical-content img.sintered-depth-vector,.clean-image-dialog img.sintered-depth-vector{display:block;width:100%;height:auto;max-height:none;margin:0;object-fit:contain}
.sintered-depth-caption,.sintered-depth-note{display:block;font-size:var(--body-size)!important;line-height:1.5;margin-top:10px}
.sintered-depth-note{color:var(--muted);margin-top:6px}
.sintered-fibre-test-tiles .filtration-card-heading{display:flex;align-items:center;justify-content:center;min-height:92px}
@media(max-width:700px){.sintered-fibre-structure-images{grid-template-columns:1fr;gap:20px}}
.technical-content .photoetched-content .photoetched-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.technical-content .metal-sand-content.photoetched-content table thead th,.technical-content .metal-sand-content.photoetched-content table thead th span{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.photoetched-profile-tiles .clean-image-button,.photoetched-geometry-tiles .clean-image-button{padding:0;border:0;aspect-ratio:871/535}
.photoetched-geometry-tiles .clean-image-button{aspect-ratio:879/570}
.photoetched-profile-tiles .clean-visual{height:100%}
.technical-content .photoetched-profile-tiles .clean-visual img{width:100%;height:100%;max-height:none;margin:0;object-fit:contain}
.technical-content .photoetched-profile-tiles .filtration-card-body p,.technical-content .photoetched-geometry-tiles .filtration-card-body p{margin-top:16px}
.photoetched-process-overview{grid-column:1/-1}
.technical-content .leaf-disc-configurations td:not(:nth-child(2)){text-align:center}
.leaf-disc-content .woven-mesh-formula>span{white-space:normal;text-align:center}
.technical-content .leaf-disc-content .leaf-disc-reduced-photo img{width:75%;max-height:570px;margin:0 auto}
.technical-content .metal-sand-content.leaf-disc-content table thead th,.technical-content .metal-sand-content.leaf-disc-content table thead th span{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .leaf-disc-content .woven-mesh-formula>span{font-size:var(--section-size)!important;font-weight:700;line-height:1.4}
.technical-content .metal-sand-content.leaf-disc-content .leaf-disc-configurations table.filtration-data-table{table-layout:fixed;min-width:1050px}
.technical-content .metal-sand-content.leaf-disc-content .leaf-disc-configurations table.filtration-data-table tr>:first-child{width:6%;text-align:center!important}
.technical-content .metal-sand-content.leaf-disc-content .leaf-disc-configurations table.filtration-data-table tr>:nth-child(2){width:32%}
.technical-content .metal-sand-content.leaf-disc-content .leaf-disc-configurations table.filtration-data-table tr>:nth-child(n+3){width:15.5%}
.leaf-disc-construction-overview{grid-column:1/-1}
.leaf-flow-diagram .clean-image-button,.leaf-dimension-diagrams .clean-image-button{padding:0;border:0}
.leaf-dimension-diagrams .clean-image-window{width:75%;max-width:calc(var(--image-native-width) * .75)}
.leaf-dimension-diagrams .clean-image-button{aspect-ratio:455/354.75;max-height:355px}
.technical-content .leaf-flow-diagram .filtration-card-body p,.technical-content .leaf-dimension-diagrams .filtration-card-body p{margin-top:16px}
.clean-diagram-key.diagram-key-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:20px 0}
.diagram-key-tiles>li{min-width:0;margin:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fff}
.technical-content .diagram-key-tiles .diagram-key-heading{position:relative;display:block;min-height:62px;margin:0;padding:16px 58px;background:var(--logo-navy);color:#fff;font:700 var(--section-size)/1.4 Helvetica,Arial,sans-serif;font-size:var(--section-size)!important;text-align:center}
.technical-content .diagram-key-tiles .diagram-key-number{position:absolute;left:16px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #ffffff80;border-radius:50%;font-size:var(--section-size)!important}
.technical-content .diagram-key-tiles .diagram-key-label{display:block;min-width:0;text-align:center}
.diagram-key-tiles>li>p{padding:16px;margin:0;font-size:var(--body-size)!important;line-height:1.65;text-align:left}
@media(max-width:800px){.clean-diagram-key.diagram-key-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.clean-diagram-key.diagram-key-tiles{grid-template-columns:1fr}}
.technical-content .gasket-materials table td:first-child{white-space:normal}
.technical-content .gasket-materials td img{width:100%;max-width:230px;max-height:200px}
.technical-content .gasket-materials td p+p{margin-top:8px}
.technical-content .gasket-content .gasket-reduced-photo img{width:56.25%;max-height:427.5px;margin:0 auto}
.gasket-profile-tiles .metal-sand-figure{margin:0 0 20px}
.technical-content .gasket-profile-tiles .metal-sand-figure img{width:75%;margin:0 auto;aspect-ratio:6/5;object-fit:contain}
.technical-content .gasket-profile-tiles .metal-sand-figure figcaption{font-size:var(--section-size)!important;font-weight:700;line-height:1.4;color:var(--logo-navy);text-align:center}
@supports(grid-template-rows:subgrid){
 .filtration-card-grid.gasket-profile-tiles{row-gap:0}
 .gasket-profile-tiles>.filtration-card{grid-row:span 8;grid-template-rows:subgrid;row-gap:0}
 .gasket-profile-tiles .filtration-card-body,.gasket-profile-tiles .filtration-card-body>dl{display:contents}
 .gasket-profile-tiles .metal-sand-figure{margin:20px 20px 0}
 .gasket-profile-tiles .filtration-card-body>dl>dt{margin:16px 20px 5px}
 .gasket-profile-tiles .filtration-card-body>dl>dd{margin:0 20px;padding-bottom:16px}
}
@media(max-width:680px){.filtration-card-grid.gasket-profile-tiles{row-gap:18px}.gasket-profile-tiles>.filtration-card{display:block;grid-row:auto}}

/* Equal-sized product headings stay in three columns when a catalogue opens. */
.polymer-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:6rem;gap:14px;margin-bottom:24px}
.polymer-menu-grid[hidden],.polymer-panels>.bhagat-category[hidden]{display:none}
.polymer-menu-button{display:flex;align-items:center;gap:8px;width:100%;height:100%;padding:12px 16px;border:1px solid var(--line);border-radius:0;background:var(--light);color:var(--deep);font-size:18px;font-weight:600;line-height:1.25;text-align:left}
.polymer-menu-label{min-width:0;overflow-wrap:normal;word-break:normal}
.polymer-menu-arrow{flex:0 0 auto;font-size:18px;line-height:1}
.polymer-menu-button:hover,.polymer-menu-button[aria-expanded="true"]{border-color:var(--logo-navy)}
.polymer-menu-button[aria-expanded="true"]>.polymer-menu-arrow{transform:rotate(90deg)}
.polymer-menu-layout.menus-ready>.polymer-panels>.bhagat-category>summary{display:none}
.polymer-panels>.bhagat-category{min-width:0;background:#fff}
@media(max-width:700px){.polymer-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.polymer-menu-grid{grid-template-columns:1fr}}

/* Match all paragraphs and section headings to the approved reference. */
p,p :is(span,a,strong,b,em,i,small),.text-group,.bullet-line{font-size:var(--body-size)!important}
body :is(h2,h3,h4,h5,h6),.bhagat-category>summary,.catalogue-nav>summary,.polymer-menu-button{font-size:var(--section-size)!important;font-weight:700!important;line-height:1.3;letter-spacing:normal!important;}
body :is(h2,h3,h4,h5,h6) :is(span,a,strong,b,em,i,small){font-size:inherit!important;}
.polymer-menu-button{gap:6px;padding:8px;line-height:1.2}

/* Separate, equal-sized boxes for the supported Rieter Scragg models. */
.technical-content .scragg-machine-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(72px,auto);gap:14px;list-style:none;padding:0;margin:24px 0 var(--space-md) 0}
.technical-content .scragg-machine-grid>li{display:flex;align-items:center;justify-content:center;min-width:0;margin:0;padding:16px 12px;border:1px solid var(--line);background:var(--light);color:var(--logo-navy);font-family:Helvetica,Arial,sans-serif;font-size:var(--section-size)!important;font-weight:700;line-height:1.3;text-align:center}
@media(max-width:600px){.technical-content .scragg-machine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.technical-content .scragg-machine-grid{grid-template-columns:1fr}}

/* Show both ceramic surface illustrations across the full catalogue tile width. */
.product-tile .ceramic-tile-picture{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:0;padding:0;background:#fff}
.product-tile .ceramic-tile-picture img{display:block;width:100%;height:auto;aspect-ratio:3/2;max-height:none;object-fit:contain;margin:0;padding:0;transform:none}

/* Balanced application columns with centred recommended materials. */
.technical-content table.ceramic-application-table{table-layout:fixed}
.technical-content table.ceramic-application-table :is(th,td){width:50%;white-space:normal}
.technical-content table.ceramic-application-table td:nth-child(2){text-align:center}

/* Show only populated catalogue cells, retaining the original pictures and labels. */
.ceramic-guide-catalogue{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:16px;margin:0 0 var(--space-md) 0;align-items:stretch}
.technical-content .ceramic-guide-product{display:flex;flex-direction:column;min-width:0;margin:0;padding:8px 8px 0;border:1px solid var(--line);border-radius:5px;background:#fff;overflow:hidden}
.ceramic-guide-photo-stage{display:flex;align-items:center;justify-content:center;height:150px;flex:none;min-width:0;background:#fff}
.ceramic-guide-photo-stage>.ceramic-guide-window{flex:none;width:min(100%,calc(150px * var(--catalogue-photo-ratio)));max-width:100%}
.ceramic-guide-window{position:relative;overflow:hidden;width:100%;background:#fff}
.technical-content .ceramic-guide-window img{position:absolute;display:block;max-width:none;max-height:none;height:auto;margin:0;padding:0;border:0;object-fit:fill}
.technical-content .ceramic-guide-product figcaption{margin-top:auto;padding:6px 4px;text-align:center;color:var(--logo-navy);font-family:Helvetica,Arial,sans-serif}
.technical-content .ceramic-guide-product figcaption h3{min-height:2.6em;margin:0 0 8px;color:var(--logo-navy);font-size:21px;font-weight:700;line-height:1.3;}
.technical-content .ceramic-guide-product figcaption p{margin:0;color:var(--ink);font-size:16px;line-height:1.4}
.technical-content .ceramic-catalogue-heading{margin:0 0 20px}

/* Barmag guides: three equal cards, with each photograph and original drawing. */
.barmag-guide-catalogue{grid-template-columns:repeat(3,minmax(0,1fr))}
.technical-content .barmag-guide-product{padding:8px}
.technical-content .barmag-guide-product>h3{min-height:0;margin:0 0 6px;overflow-wrap:anywhere;text-align:center;color:var(--logo-navy);font-family:Helvetica,Arial,sans-serif;}
.technical-content .barmag-guide-product figcaption{margin-top:auto;padding:6px 0 0}
.barmag-guide-visuals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:center}
.barmag-guide-photo-frame{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;background:#fff}
.barmag-guide-photo{flex:none}
.barmag-guide-drawing{min-width:0;filter:brightness(1.08)}
.catalogue-annotation-cover{position:absolute;display:block;background:#fff;pointer-events:none}
@media(max-width:700px){.barmag-guide-catalogue{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.barmag-guide-catalogue{grid-template-columns:1fr}}

/* Ceramic friction disc brochure: profile tiles and full-width photography. */
.ceramic-disc-content .ceramic-disc-intro{color:var(--ink);font-weight:700}
.ceramic-disc-content figure{margin:var(--space-md) 0 var(--space-md) 0}
.technical-content .ceramic-disc-content figure img{display:block;width:100%;height:auto;max-height:none;margin:0;object-fit:contain}
.ceramic-disc-content figure>a{display:block}
.ceramic-disc-content figcaption{margin:12px 0 0;text-align:center;color:var(--muted);font-size:16px;line-height:1.5}
.ceramic-disc-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:var(--space-md) 0 var(--space-md) 0}
.ceramic-disc-profile-tile{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid var(--line);border-radius:5px;background:#fff}
.technical-content .ceramic-disc-profile-tile h3{margin:0 0 12px;color:var(--logo-navy);font-family:Helvetica,Arial,sans-serif;font-size:21px;font-weight:700;}
.technical-content .ceramic-disc-profile-tile p{margin:0 0 20px;font-size:16px}
.ceramic-disc-content .ceramic-disc-profile-tile figure{margin:auto 0 0;min-width:0}
.technical-content .ceramic-disc-profile-tile figure img{width:100%;height:150px;max-width:320px;margin:0 auto;padding:0}
.ceramic-disc-content li{margin-bottom:12px}
.ceramic-disc-content li strong{color:var(--logo-navy)}
@media(max-width:680px){.ceramic-disc-profile-grid{grid-template-columns:1fr;gap:18px}.ceramic-disc-profile-tile{padding:20px}}

/* Friction disc overview and product navigation. */
.disc-nav-parent{display:flex;align-items:stretch;border-top:1px solid var(--line)}
.catalogue-nav .disc-nav-parent>a{flex:1;min-width:0;border-top:0}
.disc-nav-parent button{flex:0 0 42px;border:0;border-left:1px solid var(--line);padding:8px;background:var(--light);color:var(--logo-navy);font:700 21px Helvetica,Arial,sans-serif;cursor:pointer}
.disc-nav-parent button[aria-expanded="false"] span{display:block;transform:rotate(-90deg)}
.catalogue-nav .disc-subnav a{padding:11px 14px 11px 28px;background:var(--light);font-size:16px;line-height:1.4}
.catalogue-nav .disc-subnav a.active{background:var(--logo-navy);color:white;font-weight:700}
.disc-subnav[hidden],.disc-nav-parent button[hidden]{display:none}
.disc-nav-parent button:focus-visible{outline:2px solid var(--logo-navy);outline-offset:-4px}
.disc-page-links a:focus-visible{outline:3px solid #e8a92e;outline-offset:3px}
.disc-page-links{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.disc-page-links a,.disc-page-links a:visited{display:block;padding:10px 14px;border:1px solid var(--logo-navy);border-radius:4px;background:var(--logo-navy);color:#fff;font-size:16px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none}
.disc-page-links a:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.disc-page-links a[aria-current="page"]{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.disc-overview{min-width:0}

.disc-overview .detail-head{margin-bottom:20px}
.tsp-disc-comparison{font-family:Helvetica,Arial,sans-serif;font-size:16px;line-height:1.65}
.tsp-disc-comparison .disc-subtitle{color:var(--logo-navy);font-size:21px;font-weight:700;line-height:1.3;margin:0 0 12px}
.disc-product-grid,.disc-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
.disc-product-grid{margin:var(--space-md) 0 var(--space-md) 0}
.disc-product-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:white}
.disc-product-photo{display:block}
.technical-content .disc-product-photo img{display:block;width:100%;height:210px;max-height:none;margin:0;object-fit:cover}
.technical-content .disc-product-photo .disc-photo-polyurethane{filter:brightness(1.04) contrast(1.1) saturate(.9)}
.technical-content .disc-product-photo .disc-photo-ceramic{filter:brightness(1.1) contrast(1.06) saturate(.92)}
.disc-product-info{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:22px}
.technical-content .disc-product-info h2{margin:0 0 12px;color:var(--logo-navy);}
.disc-product-info p{margin:0 0 20px}
.disc-product-info .button{margin-top:auto;white-space:normal}
.disc-comparison-heading{margin:0 0 var(--space-md) 0}
.technical-content .disc-comparison-heading h2{margin:0 0 12px;color:var(--logo-navy);}
.disc-comparison{margin:0 0 var(--space-md) 0;scroll-margin-top:30px}
.technical-content .disc-comparison h2{margin:0 0 14px;color:var(--logo-navy);}
.disc-tile{padding:22px;min-width:0;background:var(--light);border:1px solid var(--line);border-radius:5px}
.technical-content .disc-tile h3{margin:0 0 12px;color:var(--logo-navy);}
.disc-tile p{margin:0}
.disc-guidance{margin:var(--space-md) 0 var(--space-md) 0}
.technical-content .disc-guidance h2{margin:0 0 14px;color:var(--logo-navy);}
.disc-guidance li{margin-bottom:12px;padding-left:4px}
.disc-guidance ol{padding-left:24px}
.tsp-disc-comparison .disc-contact-photo{margin:var(--space-md) 0 var(--space-md) 0}
.technical-content .disc-contact-photo img{display:block;width:100%;height:auto;max-height:none;margin:0}
.disc-contact-photo figcaption{text-align:center;color:var(--muted);margin-top:10px}
.disc-selection-enquiry{padding:24px;border:1px solid var(--line);border-radius:5px;background:var(--light)}
@media(max-width:680px){.disc-product-grid,.disc-tiles{grid-template-columns:1fr;gap:14px}.disc-tile,.disc-product-info,.disc-selection-enquiry{padding:20px}.technical-content .disc-product-photo img{height:200px}.disc-page-links{gap:8px}.disc-page-links a{padding:10px 12px}}
@media print{.disc-page-links{display:none}.disc-product-card,.disc-tile{break-inside:avoid}}

/* Selection matrix uses editable text and the shared website typography. */
.technical-content .disc-selection-matrix{margin:var(--space-md) 0 var(--space-md) 0;padding:12px 12px 0 0;max-width:100%}
.disc-matrix-layout{display:grid;grid-template-columns:70px minmax(0,1fr);column-gap:16px;row-gap:14px}
.disc-matrix-y{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:0 0 4px;color:var(--logo-navy)}
.disc-matrix-y .disc-matrix-axis-title{writing-mode:vertical-rl;transform:rotate(180deg)}
.disc-matrix-axis-title{font-size:var(--section-size)!important;font-weight:700;line-height:1.3;color:var(--logo-navy)}
.disc-matrix-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-left:3px solid var(--logo-navy);border-bottom:3px solid var(--logo-navy)}
.disc-matrix-grid::before{content:"";position:absolute;left:-8px;top:-9px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:12px solid var(--logo-navy)}
.disc-matrix-grid::after{content:"";position:absolute;right:-9px;bottom:-8px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:12px solid var(--logo-navy)}
.disc-matrix-cell{min-width:0;min-height:205px;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:24px;text-align:center}
.disc-matrix-cell:nth-child(even){border-left:2px dashed var(--line)}
.disc-matrix-cell:nth-child(n+3){border-top:2px dashed var(--line)}
.technical-content .disc-matrix-cell :is(h4,p){margin:0}
.disc-matrix-cell h4{line-height:1.3}
.disc-matrix-cell p{line-height:1.65}
.disc-matrix-x{grid-column:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;color:var(--logo-navy)}
.disc-matrix-x>span:last-child{text-align:right}
.disc-matrix-state{display:none}
.technical-content .disc-selection-matrix figcaption{margin-top:20px;text-align:left}
@media(max-width:680px){
 .technical-content .disc-selection-matrix{padding:0}
 .disc-matrix-layout{display:block}
 .disc-matrix-x,.disc-matrix-y{display:none}
 .disc-matrix-grid{grid-template-columns:minmax(0,1fr);gap:18px;border:0}
 .disc-matrix-grid::before,.disc-matrix-grid::after{display:none}
 .disc-matrix-cell:nth-child(n){min-height:0;border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:5px;padding:20px;text-align:left}
 .disc-matrix-state{display:block;font-size:var(--caption-size)!important;color:var(--muted)}
}

/* Ceramic discs: product identification, sizing and matched trial comparisons. */
.disc-section-nav{display:flex;flex-wrap:wrap;gap:10px 22px;margin:var(--space-md) 0 var(--space-md) 0;padding:16px 0;border-block:1px solid var(--line)}
.disc-section-nav a{color:var(--logo-navy);font-weight:700}
.disc-range-grid,.disc-trial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.disc-product-tile,.disc-trial-tile{min-width:0;border:1px solid var(--line);border-radius:5px;padding:16px;background:#fff}
.technical-content .disc-product-tile h3,.technical-content .disc-trial-tile h3{margin:0 0 18px;color:var(--logo-navy);font-size:21px;font-weight:700;}
.disc-product-media{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12px}
.technical-content .disc-product-media img{width:100%;height:150px;object-fit:contain;padding:0;margin:0;min-width:0;background:transparent}
.technical-content .disc-product-tile p{margin:12px 0 0;color:var(--ink);text-align:center}
.disc-table-scroll{max-width:100%;overflow-x:auto;margin:16px 0 24px}
.technical-content .disc-size-table,.technical-content .disc-trial-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:16px;margin:0}
.technical-content .disc-size-table th,.technical-content .disc-size-table td,.technical-content .disc-trial-table th,.technical-content .disc-trial-table td{border:1px solid var(--line);padding:12px 10px;vertical-align:middle;text-align:center;line-height:1.45;overflow-wrap:normal;word-break:normal}
.technical-content .disc-size-table thead th,.technical-content .disc-trial-table thead th{background:var(--logo-navy);color:white;font-weight:700;padding-block:17px}
.technical-content .disc-size-table tbody th,.technical-content .disc-trial-table tbody th{font-weight:400;background:inherit;color:inherit}
.technical-content .disc-size-table tbody tr:nth-child(even),.technical-content .disc-trial-table tbody tr:nth-child(even){background:var(--light)}
.technical-content .disc-size-table th{width:20%}
.technical-content .disc-trial-table th:first-child{width:56%}
.technical-content .disc-trial-table thead th{text-align:center!important}
.technical-content .disc-trial-table tbody th:first-child{text-align:left!important}
.technical-content .disc-trial-table th:not(:first-child){width:22%}
.technical-content .disc-trial-table{min-width:380px}
.technical-content .disc-trial-table th,.technical-content .disc-trial-table td{white-space:nowrap;padding-inline:8px}
.technical-content .disc-trial-dimensions{font-weight:700;color:var(--ink);margin-top:0}
.ceramic-disc-content [id]{scroll-margin-top:110px}
@media(max-width:1000px){.disc-trial-grid{grid-template-columns:1fr}}
@media(max-width:680px){.disc-range-grid{grid-template-columns:1fr;gap:18px}.disc-product-tile,.disc-trial-tile{padding:16px}.technical-content .disc-size-table{min-width:420px}.technical-content .disc-product-media img{height:150px}}

/* Keep action labels visible against filled buttons inside technical content. */
.technical-content a.button,.technical-content a.button:visited{background:var(--logo-navy);color:#fff;text-decoration:none;overflow-wrap:normal}
.technical-content a.button:hover,.technical-content a.button:focus-visible,.technical-content a.button:active{background:var(--blue);color:#fff}
.technical-content .ceramic-disc-supply-heading{font-family:Helvetica,Arial,sans-serif;font-size:21px;font-weight:700;line-height:1.4;color:var(--logo-navy)}
.ceramic-disc-content>figure:first-child{margin-top:0}

/* Full-width yarn contact photograph with half its natural displayed height. */
.technical-content .ceramic-disc-content .disc-contact-banner img{width:100%;height:auto;aspect-ratio:3202 / 667;object-fit:cover;object-position:center}

/* Five equal action buttons in one row; scroll on narrow screens. */
.ceramic-disc-content .disc-section-nav{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:8px;overflow-x:auto;margin:var(--space-md) 0 var(--space-md) 0;padding:0 0 6px;border:0}
.technical-content .disc-section-nav a.button{display:flex;align-items:center;justify-content:center;min-height:64px;padding:10px 12px;font-size:16px;line-height:1.35;text-align:center;font-weight:700;color:#fff;background:var(--logo-navy);text-decoration:none}
.technical-content .disc-section-nav a.button:hover,.technical-content .disc-section-nav a.button:focus-visible{background:var(--blue);color:#fff}

/* Match the visible PU disc diameter to the adjacent guide disc. */
.technical-content .disc-product-media img.pu-working-disc-photo{transform:translateY(-0.5%) scale(1.0915);transform-origin:center}

.technical-content .pu-disc-content table tr > :last-child{text-align:center!important}

/* PU application guidance: matched tiles and dot-based selection tables. */
.technical-content .pu-disc-content :is(h2,h3){color:var(--logo-navy);}
.ceramic-disc-content .pu-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.ceramic-disc-content .pu-info-tile{min-width:0;padding:20px;border:1px solid var(--line);border-radius:5px;background:#fff}
.technical-content .ceramic-disc-content .pu-info-tile h3{margin:0 0 12px;color:var(--logo-navy);font-size:21px;font-weight:700;letter-spacing:normal;}
.technical-content .ceramic-disc-content .pu-info-tile p:last-child{margin-bottom:0}
.technical-content .disc-guidance-grid h4{margin:0 0 12px;color:var(--logo-navy);line-height:1.3}
.disc-guidance-grid>.pu-info-tile:last-child:nth-child(odd){grid-column:1/-1}
.pu-disc-content .pu-formula{padding:18px 20px;background:var(--light);color:var(--logo-navy);font-weight:700;text-align:center}
.technical-content .ceramic-disc-content :is(.pu-selection-table,.ceramic-selection-table,.pu-hardness-table){width:100%;table-layout:fixed;font-size:16px;margin:0}
.technical-content .pu-disc-content .pu-selection-table{min-width:680px}
.pu-selection-table .pu-thickness-col,.ceramic-selection-table .disc-thickness-col{width:100px}
.pu-selection-table .pu-combination-col,.ceramic-selection-table .disc-combination-col{width:130px}
.technical-content .ceramic-disc-content :is(.pu-selection-table,.ceramic-selection-table,.pu-hardness-table) :is(th,td){padding:10px 8px;line-height:1.4;text-align:center!important;vertical-align:middle;white-space:normal;width:auto}
.technical-content .ceramic-disc-content :is(.pu-selection-table,.ceramic-selection-table,.pu-hardness-table) thead th{background:var(--logo-navy);color:#fff;padding-block:14px}
.technical-content .ceramic-disc-content :is(.pu-selection-table,.ceramic-selection-table,.pu-hardness-table) tbody th{background:inherit;color:inherit;font-weight:400}
.technical-content .ceramic-disc-content :is(.pu-selection-table,.ceramic-selection-table,.pu-hardness-table) tbody td{background:transparent}
.technical-content .ceramic-disc-content :is(.pu-selection-table,.ceramic-selection-table,.pu-hardness-table) tbody tr{background:#fff}
.technical-content .ceramic-disc-content :is(.pu-selection-table,.ceramic-selection-table,.pu-hardness-table) tbody tr:nth-child(even){background:var(--light)}
.technical-content .pu-disc-content .pu-hardness-table thead th{width:33.3333%}
.technical-content .ceramic-disc-content .pu-selection-dot{display:inline-block;color:var(--logo-navy);font-size:24px!important;line-height:1;font-weight:700;vertical-align:middle}
.ceramic-disc-content .pu-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:680px){.ceramic-disc-content .pu-info-grid{grid-template-columns:1fr;gap:18px}.ceramic-disc-content .pu-info-tile{padding:16px}}

/* Compact PU hardness table with a single-line scale heading. */
.technical-content .pu-disc-content .pu-hardness-table{min-width:570px}
.technical-content .pu-disc-content .pu-hardness-table thead th{height:var(--header-min-height);padding:10px 8px;line-height:20px;white-space:nowrap}
.technical-content .pu-disc-content .pu-hardness-table tbody tr{height:var(--header-min-height)}
.technical-content .pu-disc-content .pu-hardness-table tbody td{height:var(--header-min-height);line-height:20px}

/* Numbered production trial tiles follow a continuous arrow sequence. */
.technical-content .ceramic-disc-content .pu-production-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:48px;list-style:none;padding:0;margin:24px 0 32px}
.technical-content .ceramic-disc-content .pu-production-steps>li{position:relative;min-width:0;margin:0;padding:20px;border:1px solid var(--line);border-radius:5px;background:#fff}
.pu-production-steps>li:nth-child(1){grid-column:1;grid-row:1}
.pu-production-steps>li:nth-child(2){grid-column:2;grid-row:1}
.pu-production-steps>li:nth-child(3){grid-column:2;grid-row:2}
.pu-production-steps>li:nth-child(4){grid-column:1;grid-row:2}
.technical-content .ceramic-disc-content .pu-production-steps h4{margin:0 0 12px;color:var(--logo-navy);font-size:21px;font-weight:700;}
.technical-content .ceramic-disc-content .pu-production-steps p{margin:0}
.pu-production-steps .pu-step-arrow{position:absolute;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--logo-navy);font-size:32px!important;line-height:1;font-weight:700;pointer-events:none}
.pu-production-steps>li:nth-child(1) .pu-step-arrow{left:calc(100% + 8px);top:calc(50% - 16px)}
.pu-production-steps>li:nth-child(2) .pu-step-arrow{left:calc(50% - 16px);top:calc(100% + 8px);transform:rotate(90deg)}
.pu-production-steps>li:nth-child(3) .pu-step-arrow{right:calc(100% + 8px);top:calc(50% - 16px);transform:rotate(180deg)}
@media(max-width:680px){
 .technical-content .ceramic-disc-content .pu-production-steps{grid-template-columns:1fr;grid-auto-rows:auto;gap:48px}
 .pu-production-steps>li:nth-child(n){grid-column:auto;grid-row:auto}
 .technical-content .ceramic-disc-content .pu-production-steps>li{padding:16px}
 .pu-production-steps>li:nth-child(n) .pu-step-arrow{left:calc(50% - 16px);right:auto;top:calc(100% + 8px);transform:rotate(90deg)}
}

/* Wider expertise tiles keep each service point concise and readable. */
@media(max-width:980px){.expertise-grid{grid-template-columns:1fr}}

/* Distinct sections for consultancy expertise, services and the working method. */
.consultancy-page{padding-top:28px}
.consultancy-page h2{margin:0 0 18px;}
.consultancy-page h3{margin:0 0 12px;}
.consultancy-page p{color:var(--ink);margin:0;line-height:1.7}
.consultancy-page p+p{margin-top:14px}
.consultancy-page .button{max-width:100%;white-space:normal;text-align:center;line-height:1.5}
.consultancy-service p{max-width:960px}
.consultancy-service .button{margin-top:20px}
.consultancy-block{margin-top:var(--space-md);padding-top:28px;border-top:1px solid var(--line)}
.consultant-profile{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,2fr);gap:var(--space-md) 28px;padding:24px;border-left:3px solid var(--logo-navy);background:var(--light)}
.consultant-profile .consultant-role{color:var(--logo-navy)}
.consultancy-expertise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md) 28px;margin-top:24px}
.consultancy-expertise-grid>article{min-width:0}
.consultancy-services .expertise-card{min-width:0;background:#fff;border:1px solid var(--line);border-top:3px solid var(--blue);padding:24px}
.consultancy-services .expertise-card h3{margin:0 0 16px;}
.consultancy-services .expertise-card li>span{overflow-wrap:break-word}
.consultancy-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;list-style:none;counter-reset:consultancy-step;margin:0;padding:0}
.consultancy-steps>li{position:relative;min-width:0;counter-increment:consultancy-step;padding:24px 24px 24px 64px;background:var(--light)}
.consultancy-steps>li:before{content:counter(consultancy-step);position:absolute;top:24px;left:22px;color:var(--logo-navy);font-size:21px;font-weight:700;line-height:1.3}
.consultancy-deliverable-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:20px;margin-top:20px}
.consultancy-deliverable-grid>article{min-width:0;padding:24px;border-top:3px solid var(--blue);background:var(--light)}
.consultancy-deliverable-grid h3{margin-bottom:12px;}
.consultancy-enquiry{margin-top:var(--space-md)}
.consultancy-enquiry p{max-width:980px;margin-bottom:20px}
@media(max-width:980px){.consultancy-page{padding-top:24px}.consultant-profile{grid-template-columns:1fr;gap:16px}.consultancy-expertise-grid,.consultancy-steps{grid-template-columns:1fr}.consultancy-deliverable-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.consultancy-page .consultancy-service,.consultant-profile,.consultancy-services .expertise-card,.consultancy-enquiry,.consultancy-deliverable-grid>article{padding:20px}.consultancy-block{margin-top:var(--space-md);padding-top:24px}.consultancy-steps>li{padding:20px 20px 20px 54px}.consultancy-steps>li:before{top:20px;left:20px}.consultancy-deliverable-grid{grid-template-columns:1fr;grid-auto-rows:auto}}

/* Friction disc catalogue photo uses the full tile width. */
.product-tile figure.friction-unit-tile-picture{padding:0;height:auto;min-height:175px}
.product-tile .friction-unit-tile-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:520px){.product-tile figure.friction-unit-tile-picture{min-height:140px}}

/* Rubber cots and apron belts use the established two-column information tiles. */
.section.apron-cot-page{padding-top:16px}
.apron-cot-page .detail-head{margin-bottom:18px}
.apron-cot-nav+section>h2{margin-top:20px;}
.apron-cot-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.apron-cot-content .apron-cot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.apron-cot-content .apron-cot-tile{min-width:0;margin:0;padding:20px;border:1px solid var(--line);border-radius:5px;background:#fff}
.technical-content .apron-cot-tile :is(h3,h4){margin:0 0 12px;color:var(--logo-navy);font-size:21px;font-weight:700;letter-spacing:normal;}
.technical-content .apron-cot-tile p:last-child{margin-bottom:0}
.apron-cot-content figure.apron-cot-photo{display:flex;flex-direction:column;align-self:start;gap:0;padding:0;overflow:hidden}
.apron-cot-photo>a{display:block;width:100%}
.technical-content .apron-cot-photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;margin:0}
.apron-cot-photo figcaption{padding:12px 16px 16px;text-align:center;color:var(--muted);font-weight:700}
.technical-content .apron-cot-checks{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.technical-content .apron-cot-checks li{position:relative;padding-left:27px;margin:0}
.apron-cot-checks li::before{content:"";position:absolute;top:.6em;left:2px;width:11px;height:6px;border-left:2px solid var(--logo-navy);border-bottom:2px solid var(--logo-navy);transform:rotate(-45deg)}
.apron-cot-specs{margin:0;display:grid;gap:14px}
.apron-cot-specs dt{font-weight:700;color:var(--logo-navy)}
.apron-cot-specs dd{margin:0}
.technical-content .apron-cot-brands{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0;list-style:none}
.technical-content .apron-cot-brands li{margin:0;padding:6px 10px;border-radius:3px;background:var(--light);color:var(--logo-navy)}
.apron-cot-content section+section{margin-top:var(--space-md)}
.technical-content .apron-cot-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}
.apron-cot-content [id]{scroll-margin-top:110px}
@media(max-width:680px){.apron-cot-content .apron-cot-grid,.technical-content .apron-cot-benefits{grid-template-columns:1fr;gap:18px}.apron-cot-content .apron-cot-tile{padding:16px}}

/* Show one nip roller and one apron belt across the complete catalogue tile. */
/* Pair the first two cutter/sensor photographs across the complete tile. */
.product-tile figure.yarn-pair-tile-picture{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;align-items:center;width:100%;height:auto;aspect-ratio:2/1;padding:0;background:#fff}
.product-tile .yarn-tile-photo{min-width:0}
.product-tile figure.autodoff-menu-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:center;width:100%;height:auto;aspect-ratio:2/1;padding:16px;background:#fff}
.autodoff-menu-photos>a{display:flex;align-items:center;min-width:0;height:100%;border-radius:4px}
.product-tile .autodoff-menu-photo img{position:absolute;display:block;max-width:none;max-height:none;height:auto;margin:0;padding:0;border:0;object-fit:fill}
.autodoff-brand-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:auto 20px 20px}
.autodoff-brand-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;border:1px solid var(--blue);border-radius:4px;color:var(--blue);background:#fff;font-size:16px;font-weight:700;text-align:center}
.autodoff-brand-link:hover{color:#fff;background:var(--blue)}
.autodoff-menu-tile a:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
#autodoff-parts{scroll-margin-top:130px}
.product-tile .yarn-tile-photo img{position:absolute;display:block;max-width:none;max-height:none;height:auto;margin:0;padding:0;border:0;object-fit:fill}

.product-tile figure.apron-cot-tile-picture{padding:0;height:auto;min-height:175px;background:#fff}
.product-tile .apron-cot-tile-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:520px){.product-tile figure.apron-cot-tile-picture{min-height:140px}}

/* Equal photo areas align the cutter, sensor and dye tube headings. */
.product-tile.yarn-tile,.product-tile.dye-tube-tile{container-type:inline-size}
.product-tile.yarn-tile figure.yarn-pair-tile-picture,.product-tile.dye-tube-tile figure.dye-tube-tile-picture{height:62cqw;min-height:0;aspect-ratio:auto;flex:0 0 auto;overflow:hidden}
.product-tile figure.dye-tube-tile-picture{width:100%;padding:0;background:#fff}
.product-tile .dye-tube-tile-image{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}

/* Clear product categories and an accessible link to Heberlein's English site. */
.technical-content .heberlein-product-range{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:18px 0 24px}
.technical-content .heberlein-product-range li{margin:0;padding:16px;background:var(--light);border:1px solid var(--line);border-radius:4px;color:var(--logo-navy);font-weight:700;line-height:1.4}
.technical-content .heberlein-website-link{display:block;margin:24px 0 0;border-radius:4px;text-decoration:none}
.technical-content .heberlein-website-link img{display:block;width:100%;height:auto;max-height:none;margin:0}
.heberlein-website-link span{display:block;margin-top:14px;font-weight:700}
.heberlein-website-link:hover span{text-decoration:underline}
.heberlein-website-link:focus-visible{outline:3px solid var(--blue);outline-offset:7px}
@media(max-width:680px){.technical-content .heberlein-product-range{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:400px){.technical-content .heberlein-product-range{grid-template-columns:1fr}}

/* Match the cutter-sheet layout and typography in proportion to each tile. */
.take-up-tabs a[aria-selected="true"]{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.take-up-panel[hidden]{display:none}
.take-up-panel{min-width:0;scroll-margin-top:100px}
.technical-content .take-up-panel>h2{margin:0 0 20px;font-family:Helvetica,Arial,sans-serif;font-size:21px;font-weight:700;color:var(--logo-navy);}
.barmag-catalogue.take-up-sheet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md) 24px;align-items:start}
.take-up-sheet-grid figure{min-width:0;overflow:hidden;border-radius:5px}
.take-up-sheet-grid figure>a{display:block}
.technical-content .take-up-sheet-grid img{display:block;width:100%;height:auto;max-height:none;margin:0;object-fit:contain}
.product-tile figure.take-up-pair-tile-picture{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:0;width:100%;height:auto;aspect-ratio:2/1;padding:0;background:#fff}
.product-tile figure.take-up-pair-tile-picture img{display:block;width:100%;height:100%;max-height:none;min-width:0;margin:0;padding:0;object-fit:contain}
.product-tile figure.take-up-pair-tile-picture .take-up-tile-photo img{position:absolute;display:block;max-width:none;max-height:none;height:auto;margin:0;padding:0;border:0;object-fit:fill}
@media(max-width:600px){.barmag-catalogue.take-up-sheet-grid{grid-template-columns:minmax(0,1fr)}}

.spindle-brand-section{margin:var(--space-md) 0 var(--space-md) 0;scroll-margin-top:110px}
.spindle-catalogue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:var(--space-md) 24px;align-items:stretch;width:100%;min-width:0;max-width:100%}
.spindle-product-card{display:flex;flex-direction:column;gap:0;width:100%;min-width:0;max-width:100%;height:auto;padding:2.4%;border:1px solid #adbdd4;border-radius:6px;background:#fff;color:var(--ink);font-family:Helvetica,Arial,sans-serif;container-type:inline-size;container-name:spindle-card;overflow-wrap:anywhere}
.spindle-product-card>*{min-width:0;max-width:100%;flex-shrink:0}
.spindle-product-card>*+*{margin-top:1.5cqw}
.technical-content .spindle-product-card :is(p,li,span,th,td,strong,b,em,small){font-family:Helvetica,Arial,sans-serif;font-size:var(--body-size)!important;line-height:1.3}
.spindle-sheet-heading{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(0,1fr);gap:2cqw;align-items:start}
.spindle-sheet-heading>*,.spindle-photo-features>*{min-width:0;max-width:100%}
.spindle-content .spindle-catalogue{grid-auto-rows:auto;margin-bottom:24px}
.spindle-content .spindle-sheet-heading,.spindle-content .spindle-bearing-heading{display:block;min-height:72px;text-align:left}
.technical-content .uniform-spindle-card :is(.spindle-sheet-heading,.spindle-bearing-heading) :is(h2,h3){margin:0 0 .6cqw;font-size:16px!important;font-weight:700!important;line-height:1.4;letter-spacing:normal;text-transform:none;color:var(--logo-navy)}
.spindle-content .spindle-photo-frame{display:flex;align-items:center;justify-content:center;width:100%;height:100cqw;border:1px solid #adbdd4;border-radius:6px;overflow:hidden;background:#fff}
.spindle-content .spindle-photo-frame .spindle-photo{width:min(100%,calc(100cqw * var(--crop-ratio)));border:0;border-radius:0}
.spindle-content .spindle-drawing-frame{display:flex;align-items:center;justify-content:center;height:42cqw;border-radius:6px}
.spindle-content .spindle-drawing-frame>.spindle-drawing{width:100%;flex:none}
.spindle-content .spindle-drawing-only-frame{height:143.5cqw}

.technical-content .spindle-content .spindle-spec-table thead th{height:var(--header-min-height);padding:6px 4px;line-height:18px;overflow-wrap:normal}
:is(.pulley-content,.nip-bearing-content) .spindle-sheet-heading{grid-template-columns:minmax(0,1fr)}
.pulley-content .pulley-photo-frame{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border:1px solid #adbdd4;border-radius:6px;overflow:hidden;background:#fff}
.pulley-content .pulley-photo-frame .spindle-photo{width:100%;border:0;border-radius:0}
.pulley-content .spindle-drawing-frame{display:flex;align-items:center;justify-content:center;aspect-ratio:12/5;height:41.666667cqw}
.pulley-content .spindle-drawing-frame>.pulley-dimensional-drawing{width:100%;height:100%}

.technical-content :is(.pulley-content,.nip-bearing-content) .spindle-spec-table thead th{height:var(--header-min-height);padding:6px 4px;line-height:18px;overflow-wrap:normal}
.technical-content :is(.pulley-content,.nip-bearing-content) .spindle-spec-table thead th span{line-height:inherit}
.technical-content .spindle-product-card h3{margin:0 0 .6cqw;font-family:Helvetica,Arial,sans-serif;font-size:var(--section-size)!important;font-weight:900;line-height:1.04;letter-spacing:-.1cqw;text-transform:none;color:var(--logo-navy);}
.technical-content .spindle-product-card .spindle-part-number{margin:0 0 .7cqw;font-family:Helvetica,Arial,sans-serif;font-size:var(--section-size)!important;line-height:1;font-weight:700;font-stretch:normal;white-space:nowrap;letter-spacing:normal}
.technical-content .spindle-product-card .spindle-sheet-subtitle,.technical-content .spindle-bearing-heading p{margin:0;font-size:var(--body-size)!important;line-height:1.2;color:var(--ink)}
.spindle-quality-badges{display:grid;gap:3.5cqw;padding-top:1cqw}
.spindle-quality-badges>div{display:flex;gap:2cqw;align-items:center}
.technical-content .spindle-quality-badges span{min-width:0;font-size:var(--body-size)!important;line-height:1.25}
.spindle-quality-icon{display:block;flex:0 0 7.5cqw;width:7.5cqw;height:8cqw;color:var(--logo-navy)}
.spindle-photo-features{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:1.5cqw;align-items:center}
.spindle-photo{border:1px solid #adbdd4;border-radius:2cqw}
.spindle-features{padding:1cqw 0}
.technical-content .spindle-features h4{margin:0 0 1.8cqw;font-family:Helvetica,Arial,sans-serif;font-size:var(--section-size)!important;line-height:1.05;font-weight:900;letter-spacing:-.1cqw;text-transform:none;color:var(--logo-navy);}
.technical-content .spindle-features ul{margin:0;padding-left:2.6cqw;display:grid;gap:2cqw}
.technical-content .spindle-features li{margin:0;padding:0;font-size:var(--body-size)!important;line-height:1.3}
.spindle-drawing-frame{width:100%;border:1px solid #adbdd4;border-radius:2cqw;overflow:hidden}
.technical-content .spindle-product-card .ceramic-guide-window img{position:absolute;display:block;max-width:none;max-height:none;height:auto;margin:0;padding:0;object-fit:fill}
.spindle-specification-wrap{width:100%;min-width:0}
.technical-content .spindle-spec-table{width:100%;min-width:0;max-width:100%;table-layout:fixed;margin:0;border-collapse:collapse}
.spindle-description-column{width:58%}.spindle-value-column{width:42%}
.technical-content .spindle-spec-table :is(th,td){height:auto;min-height:0;padding:1.25cqw 1.5cqw;white-space:normal;overflow-wrap:anywhere;word-break:normal;font-size:var(--body-size)!important;line-height:1.25}
.technical-content .spindle-spec-table :is(span,strong,b,em,small){font-size:inherit!important;line-height:inherit}
.technical-content .spindle-spec-table td:first-child{width:auto;white-space:normal;overflow-wrap:anywhere;text-align:left}
.technical-content .spindle-spec-table thead th{padding:1.6cqw 1.2cqw;background:var(--logo-navy);color:#fff;text-align:center;font-size:var(--body-size)!important;line-height:1.15;text-transform:none}
.technical-content .spindle-spec-table thead .unit{text-transform:none}
.technical-content .spindle-spec-table td:last-child{text-align:center}
.technical-content .spindle-spec-table .spindle-overall-length td{background:var(--light);color:var(--ink);font-weight:700}
.spindle-sheet-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:2.4cqw;border-top:1px solid #adbdd4}
.spindle-sheet-benefits>div{display:flex;gap:2cqw;align-items:flex-start;min-width:0;padding:2.5cqw 1.4cqw}
.spindle-sheet-benefits>div:nth-child(odd){border-right:1px solid #adbdd4}
.spindle-sheet-benefits>div:nth-child(n/**/+3){border-top:1px solid #adbdd4}
.technical-content .spindle-sheet-benefits :is(p,span,strong){font-size:var(--body-size)!important;line-height:1.2}
.technical-content .spindle-sheet-benefits p{margin:0;min-width:0}
.spindle-sheet-benefits strong,.spindle-sheet-benefits span{display:block}
.spindle-sheet-benefits strong{margin-bottom:.8cqw}
.spindle-sheet-benefits:is(.pulley-benefits,.nip-bearing-benefits,.roller-benefits,.spindle-benefits){grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px;border:0}
.spindle-sheet-benefits:is(.pulley-benefits,.nip-bearing-benefits,.roller-benefits,.spindle-benefits)>div{flex-direction:column;align-items:center;gap:14px;padding:20px 16px;border:1px solid var(--line);border-radius:8px;background:var(--light);text-align:center}
:is(.pulley-benefits,.nip-bearing-benefits,.roller-benefits,.spindle-benefits) .spindle-quality-icon{flex:0 0 44px;width:44px;height:44px}
:is(.pulley-benefits,.nip-bearing-benefits,.roller-benefits,.spindle-benefits) strong{margin-bottom:8px;color:var(--logo-navy);font-weight:700}
@media(max-width:760px){.spindle-sheet-benefits:is(.pulley-benefits,.nip-bearing-benefits,.roller-benefits,.spindle-benefits){grid-template-columns:1fr}}
.spindle-bearing-heading{text-align:center}
.technical-content .spindle-bearing-table tbody th{background:var(--light);color:var(--ink);text-align:left;width:30%}
.technical-content .spindle-bearing-table tbody td{text-align:left}
.technical-content .spindle-bearing-caption{margin:1.5cqw 0 0;font-size:var(--caption-size)!important;line-height:1.3}
.product-tile figure.spindle-pair-tile-picture{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;align-items:center;width:100%;height:auto;aspect-ratio:2/1;padding:0;background:#fff}
.product-tile .spindle-tile-photo{min-width:0}
.product-tile .spindle-tile-photo img{position:absolute;display:block;max-width:none;max-height:none;height:auto;margin:0;padding:0;border:0;object-fit:fill}

/* Full-width filtration photo and equal photo areas keep the first three headings level. */
.product-tile.filtration-row-tile{container-type:inline-size}
.product-tile.filtration-row-tile figure{height:50cqw;min-height:0;aspect-ratio:auto;flex:0 0 auto;overflow:hidden}
.product-tile figure.filtration-tile-picture{width:100%;padding:0;background:#fff}
.product-tile .filtration-tile-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.product-tile.filtration-row-tile .tile-link{margin-top:auto}

/* A shared photo area aligns the roller headings and links at every width. */
.product-tile.roller-tile{container-type:inline-size}
.product-tile.roller-tile figure{height:62cqw;min-height:0;aspect-ratio:auto;flex:0 0 auto;overflow:hidden}
.product-tile.roller-tile h3{min-height:2.6em;}
.product-tile.roller-tile .tile-link{margin-top:auto}
.product-tile.nip-bearing-tile .spindle-tile-photo{transform:scale(1.13);transform-origin:center}
@media(max-width:600px){.spindle-catalogue{grid-template-columns:minmax(0,1fr)}}

/* Pulley drawings retain the full tile width; labels never control their size. */
.pulley-dimensional-drawing{display:block;width:100%;max-width:100%;height:auto;background:#fefefe}
.pulley-dimensional-drawing text{font-family:Helvetica,Arial,sans-serif;font-weight:400;font-stretch:normal;letter-spacing:normal}
.technical-content .pulley-dimension-table :is(th,td){padding:1.5cqw .7cqw;text-align:center}
.technical-content .pulley-dimension-table td:first-child{width:auto;text-align:center}
.technical-content .spindle-product-card .pulley-dimension-note{font-size:var(--body-size)!important;margin-bottom:0}

/* Compact spare-parts introduction with full-width text. */
.page-hero.spare-parts-hero{padding-top:20px;padding-bottom:22px}

.spare-parts-hero .eyebrow{margin:0 0 7px;line-height:1.4}
.spare-parts-hero h1{margin:0 0 10px}
.page-hero.spare-parts-hero>p:last-child{max-width:none;line-height:1.4}
.spare-parts-hero+.product-index{padding-top:22px}
.spare-parts-hero+.product-index .manufacturer-selector .section-heading{margin-bottom:16px}
.spare-parts-hero+.product-index .manufacturer-selector .manufacturer-intro{margin-top:6px;line-height:1.4}
@media(min-width:1100px){.spare-parts-hero h1,.spare-parts-hero>p{white-space:nowrap}}

/* Keep the component introduction beside its heading when space permits. */
.product-index .component-heading-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 24px}
.product-index .component-heading-line>h2,.product-index .component-heading-line>p{margin:0}
.product-index .component-heading-line>p{max-width:none}

/* Manufacturer navigation: aligned names and clear full-tile links. */
.manufacturer-selector .section-heading{margin-bottom:24px}
.manufacturer-selector .manufacturer-intro{max-width:none;margin:10px 0 0;color:var(--ink);font-weight:400}
.manufacturer-selector .brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:16px}
.manufacturer-selector .brand-tile{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:7px;min-width:0;min-height:78px;padding:7px 20px;border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:5px;background:#fff;color:var(--logo-navy);font-family:Helvetica,Arial,sans-serif;line-height:1.4;transition:background-color .15s ease,border-color .15s ease}
.manufacturer-selector .manufacturer-name{display:block;min-height:1.4em;font-size:14pt;font-weight:700;overflow-wrap:normal}
.manufacturer-selector .manufacturer-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;font-size:1rem;font-weight:400}
.manufacturer-selector .manufacturer-action>span{flex-shrink:0}
.manufacturer-selector .brand-tile:hover,.manufacturer-selector .brand-tile:focus-visible{border-color:var(--logo-navy);background:var(--light);color:var(--logo-navy)}
.manufacturer-selector .brand-tile:focus-visible{outline:2px solid var(--logo-navy);outline-offset:3px}
@media(max-width:1099px){.manufacturer-selector .brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.manufacturer-selector .brand-grid{grid-template-columns:minmax(0,1fr)}.manufacturer-selector .manufacturer-name{min-height:0}.manufacturer-selector .brand-tile{gap:7px}}
@media(prefers-reduced-motion:reduce){.manufacturer-selector .brand-tile{transition:none}}

/* Individual machine parts: five photos across with live Helvetica captions. */
/* Polymer product navigation follows the manufacturer tile style. */
.polymer-product-menu{grid-auto-rows:1fr;gap:16px}
.polymer-filtration-menu{grid-template-columns:repeat(2,minmax(0,1fr))}
.polymer-product-menu .polymer-menu-button{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:7px;min-width:0;min-height:78px;padding:7px 20px;border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:5px;background:#fff;color:var(--logo-navy);font-family:Helvetica,Arial,sans-serif;line-height:1.4;transition:background-color .15s ease,border-color .15s ease}
.polymer-product-menu .polymer-menu-label{display:block;min-height:2.8em;font-size:21px;font-weight:700}
.polymer-product-menu a.polymer-menu-button{text-decoration:none;scroll-margin-top:120px}
.ceramic-manufacturer-menu .polymer-menu-label{min-height:1.4em}
.machine-component-menu{grid-template-columns:repeat(3,minmax(0,1fr))}
/* Navigation tiles share the approved compact brand-tile proportions. */
.machine-component-menu .polymer-menu-button{min-height:78px;padding-block:7px;gap:7px}
@layer tsp-header-standard{
 html body main .polymer-product-menu .polymer-menu-label.site-tile-heading{min-height:0!important;padding-block:0!important}
 html body main .manufacturer-selector .manufacturer-name.site-tile-heading{min-height:0!important;padding-block:0!important;font-size:1.166667rem!important;font-weight:700!important}
}
.technical-content .machine-category-heading{margin:0 0 16px}
@media(max-width:1099px){.machine-component-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.machine-component-menu{grid-template-columns:minmax(0,1fr)}}
.polymer-product-menu .polymer-menu-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;font-size:16px;font-weight:400;line-height:1.4}
.polymer-product-menu .polymer-menu-action-arrow{flex-shrink:0}
.polymer-product-menu .polymer-menu-button:hover,.polymer-product-menu .polymer-menu-button:focus-visible,.polymer-product-menu .polymer-menu-button[aria-expanded="true"]{border-color:var(--logo-navy);background:var(--light);color:var(--logo-navy)}
.polymer-product-menu .polymer-menu-button:focus-visible{outline:2px solid var(--logo-navy);outline-offset:3px}
.polymer-product-menu .polymer-menu-button[aria-expanded="true"] .polymer-menu-action-arrow{transform:rotate(90deg)}
@media(max-width:480px){.polymer-product-menu .polymer-menu-label{min-height:0}}
@media(prefers-reduced-motion:reduce){.polymer-product-menu .polymer-menu-button{transition:none}}

.machine-parts-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:stretch;--part-photo-height:150px}
.technical-content .machine-parts-grid .machine-part-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:8px 8px 6px;border:1px solid var(--line);border-radius:5px;background:#fff;container-type:inline-size;container-name:machine-part}
.machine-part-photo{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;height:var(--part-photo-height);flex:0 0 auto;overflow:hidden;background:#fff}
.machine-part-photo:focus-visible{outline:2px solid var(--logo-navy);outline-offset:3px}
.machine-part-crop{display:block;position:relative;flex:none;width:min(100%,calc(var(--part-photo-height) * var(--part-photo-ratio)));max-width:100%;overflow:hidden;background:#fff}
.machine-parts-grid .machine-part-crop{transform:scale(var(--part-photo-scale,1))}
.machine-assembly-photo{--part-photo-height:294px;height:320px;padding:12px;border:1px solid var(--line);border-radius:4px}
.assembly-label-mask{position:absolute;display:block;background:#fff;pointer-events:none}
.technical-content .machine-assembly-photo:hover img{outline:0}
.technical-content .machine-part-crop img{display:block;position:absolute;max-width:none;max-height:none;height:auto;margin:0;border:0;object-fit:fill}
.technical-content .machine-part-description{margin:6px 0 0;padding:0;font-family:Helvetica,Arial,sans-serif;font-size:var(--caption-size)!important;font-weight:700;line-height:1.45;color:var(--ink);text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:normal;hyphens:none}
.technical-content .machine-part-description .part-primary{display:block;font-size:var(--caption-size)!important;font-weight:700!important;line-height:1.45}
.technical-content .machine-part-description .part-reference{display:block;margin-top:2px;font-size:var(--caption-size)!important;font-weight:400!important;line-height:1.45}
.technical-content .machine-part-description .indian-part-caption{display:block;text-wrap:balance}
.technical-content .machine-part-description .indian-part-caption :is(.part-primary,.part-reference){display:inline;margin-top:0;font-weight:700!important}
.technical-content .machine-part-description .part-type{white-space:nowrap}
.technical-content .machine-part-description .part-measurement{display:inline;white-space:nowrap;font-size:inherit!important;font-weight:inherit!important}
.technical-content .ceramic-guide-product h3{font-size:var(--section-size)!important;font-weight:700!important;line-height:1.45;}
.technical-content .ceramic-guide-product figcaption p{font-size:var(--caption-size)!important;font-weight:400;line-height:1.45}
.brand-parts-sheet{margin:0 0 var(--space-md) 0}
.technical-content .brand-parts-sheet>h3{margin:0 0 16px;}
.machine-part-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100vh - 32px);padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--logo-navy);--part-photo-height:min(62vh,520px)}
.machine-part-dialog::backdrop{background:rgba(7,28,49,.65)}
.machine-part-dialog-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}
.machine-part-dialog-close{padding:9px 16px;border:1px solid var(--logo-navy);border-radius:4px;font-family:Helvetica,Arial,sans-serif;font-size:16px;color:var(--logo-navy);background:#fff;cursor:pointer}
.technical-content .machine-part-dialog .machine-part-description{margin-top:18px}
@media(max-width:1100px){.machine-parts-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.machine-parts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;--part-photo-height:140px}}
@media(max-width:650px){.machine-assembly-photo{--part-photo-height:214px;height:240px}}
@media(max-width:380px){.machine-parts-grid{grid-template-columns:minmax(0,1fr);--part-photo-height:150px}}

/* Fancy yarn layouts: one full-width, uncropped PNG or photo per row. */
.technical-content.fancy-yarn-gallery .figure-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md) 32px}
.technical-content.fancy-yarn-gallery .figure-grid figure{width:100%;margin:0}
.technical-content.fancy-yarn-gallery .figure-grid img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;padding:0;border:0;background:#fff;margin:0}

/* Compact spacing between the Fancy Yarns introduction and gallery sections. */
.page-hero.fancy-yarns-hero{padding-top:24px;padding-bottom:24px}

.section.fancy-yarns-section{padding-top:28px;padding-bottom:28px}
.fancy-yarns-section>.service-intro{max-width:none;margin-bottom:16px}
.fancy-yarns-section>.service-intro+.service-intro{margin-bottom:24px}
.fancy-navigation{margin-bottom:24px}
.fancy-navigation>h2{margin:0 0 12px;font-size:var(--section-size);font-weight:700;line-height:1.4}
.fancy-navigation>.fancy-links{margin-bottom:0}
.fancy-yarns-section>.gallery-title{margin:24px 0 16px}
.fancy-yarns-section .fancy-yarn-gallery .figure-grid{gap:24px;margin:16px 0}
.fancy-yarns-section>.product-cta{margin-top:24px}
@media(max-width:520px){.section.fancy-yarns-section{padding-top:24px;padding-bottom:24px}}

/* Machine control specifications follow the TSP catalogue typography and spacing. */
.technical-content .machine-control-content h2{font-size:21px;font-weight:700;line-height:1.4;letter-spacing:normal;color:var(--logo-navy);}
.technical-content .machine-control-content>h2:first-child{margin-top:0;margin-bottom:12px;}
.control-drive-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}
.control-drive-comparison figure{min-width:0;margin:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#fff}
.control-drive-comparison a{display:block}
.technical-content .control-drive-comparison img{display:block;width:100%;height:auto;max-height:none;margin:0;object-fit:contain}
.control-drive-comparison figcaption{padding:12px 16px;text-align:center;font-weight:700;color:var(--muted);line-height:1.5}
.control-system-panel{min-width:0;margin:24px 0;padding:20px;border:1px solid var(--line);border-radius:5px;background:#fff}
.technical-content .control-system-panel h2{margin:0 0 12px;}
.technical-content .control-system-panel p{margin:0 0 14px}
.control-spec-list{margin:0}
.control-spec-list>div{display:grid;grid-template-columns:minmax(150px,.85fr) minmax(0,2fr);gap:20px;align-items:start;padding:12px 0;border-top:1px solid var(--line)}
.control-spec-list dt{min-width:0;margin:0;color:var(--logo-navy);font-weight:700;line-height:1.6;text-align:left}
.control-spec-list dd{min-width:0;margin:0;line-height:1.6;overflow-wrap:break-word;text-align:left}
.control-spec-list>div:last-child{padding-bottom:0}
.technical-content .control-system-panel>p:last-child{margin-bottom:0}
.machine-control-content .control-system-panel:last-child{margin-bottom:0}
@media(max-width:650px){.control-drive-comparison{grid-template-columns:1fr;gap:16px}.control-system-panel{padding:16px}.control-spec-list>div{grid-template-columns:1fr;gap:4px}}

/* Single cabinet photograph uses the same framing as the control comparison. */
.control-system-photo{width:100%;max-width:400px;margin:24px auto;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#fff}
.control-system-photo a{display:block}
.technical-content .control-system-photo img{display:block;width:100%;height:auto;max-height:none;margin:0;object-fit:contain}
.control-system-photo figcaption{padding:12px 16px;text-align:center;font-weight:700;color:var(--muted);line-height:1.5}
.equal-length-schematic{max-width:none}
.equal-length-schematic .diagram-scroll{overflow-x:auto}
.technical-content .equal-length-schematic img{min-width:800px}
.equal-length-schematic figcaption a{display:inline;color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.spandex-yarn-photo{max-width:none}
.pin-twist-comparison .filtration-card>a{display:block;min-width:0}
.technical-content .pin-twist-comparison img{display:block;width:100%;height:auto;aspect-ratio:2/3;max-height:none;margin:0;object-fit:contain}
.pin-twist-machine-rows{grid-template-columns:1fr}
.pin-twist-machine-rows .pin-panorama-frame{position:relative;overflow:hidden;aspect-ratio:var(--photo-ratio)}
.technical-content .pin-twist-machine-rows .pin-panorama-frame img{position:absolute;left:var(--photo-left);top:var(--photo-top);width:var(--photo-width);height:var(--photo-height);max-width:none;max-height:none;object-fit:fill}
.hot-plate-photo{max-width:none}
.hot-pin-product-views .filtration-card>a{display:block;min-width:0}
.technical-content .hot-pin-product-views img{display:block;width:100%;height:auto;aspect-ratio:2/3;max-height:none;margin:0;object-fit:contain}
.hot-pin-fabric-tiles .fabric-sample-frame{display:block;position:relative;overflow:hidden;aspect-ratio:603/727}
.technical-content .hot-pin-fabric-tiles .fabric-sample-frame img{position:absolute;left:var(--sample-left);top:-2.75103164%;width:223.21724710%;height:105.08940853%;max-width:none;max-height:none;margin:0;object-fit:fill}
.cooling-tube-photo{max-width:560px}
.cooling-track-product-photo{max-width:none}
.technical-content .cooling-track-content .cooling-track-data-scroll{margin:16px 0}
.technical-content .cooling-track-data-table{font-size:16px;line-height:1.5;min-width:560px;table-layout:fixed}
.technical-content .cooling-track-data-table tr>:is(th,td){width:33.333333%}
.technical-content .cooling-track-data-table thead th{background:var(--logo-navy);color:#fff;font-size:var(--section-size)!important;font-weight:700}
.technical-content .cooling-track-data-table thead th .unit{font-size:inherit!important;font-weight:inherit}
.technical-content .cooling-track-data-table tbody th{background:transparent;color:var(--ink);font-weight:600}
.technical-content .cooling-track-data-table tr>:first-child{text-align:left!important}
.technical-content .cooling-track-data-table tr>:not(:first-child){text-align:center!important;font-variant-numeric:tabular-nums}
.technical-content .cooling-track-data-table th,.technical-content .cooling-track-data-table td{padding:10px 12px}
.technical-content .cooling-track-comparison img{aspect-ratio:3/2;object-fit:contain}
.cooling-track-content .control-system-panel>.control-drive-comparison:last-child{margin-bottom:0}
/* Level the support beams and crop the rotated corners within the photo frame. */
.cooling-tube-rotation{display:block;aspect-ratio:1106/1422;overflow:hidden}
.product-tile .cooling-tube-rotation{height:100%;width:auto}
.technical-content .cooling-tube-rotation img,.product-tile .cooling-tube-rotation img{display:block;width:100%;height:auto;max-width:none;max-height:none;transform:rotate(25deg) scale(1.47);transform-origin:center}

/* Eco Heater uses the shared feature rows with readable numeric comparisons. */
.technical-content .primary-heater-content .heater-data-scroll{margin:16px 0}
.technical-content .primary-heater-content .heater-data-table{font-size:16px;line-height:1.5;min-width:560px}
.technical-content .primary-heater-content .heater-data-table thead th{background:var(--logo-navy);color:#fff}
.technical-content .primary-heater-content .heater-data-table tbody th{background:transparent;color:var(--ink);text-align:left;font-weight:600}
.technical-content .primary-heater-content .heater-data-table td{font-variant-numeric:tabular-nums;white-space:nowrap}
.technical-content .primary-heater-content table tr>:first-child{text-align:left!important}
.technical-content .primary-heater-content table tr>:not(:first-child){text-align:center!important}
.technical-content .primary-heater-content .heater-data-table th,.technical-content .primary-heater-content .heater-data-table td{padding:10px 12px}
.technical-content .primary-heater-content .heater-comparison-list dd p{margin:0 0 8px}
.technical-content .primary-heater-content .heater-comparison-list dd p+p{border-top:1px solid var(--line);padding-top:8px}
.technical-content .primary-heater-content .heater-comparison-list dd p:last-child{margin-bottom:0}
.short-heater-profile{max-width:none}
.short-heater-yarn-path{max-width:550px}
.technical-content>p.high-shrinkage-intro{max-width:none}
.high-shrinkage-illustrations .clean-image-button{border:0;border-radius:0;padding:12px;height:100%}
.high-shrinkage-illustrations .clean-visual{height:auto;aspect-ratio:516/694}
.technical-content .high-shrinkage-illustrations img.clean-standalone{display:block;width:100%;height:100%;max-height:none;object-fit:contain;margin:0}
@media(max-width:680px){.high-shrinkage-illustrations .clean-visual{height:auto;aspect-ratio:auto}.technical-content .high-shrinkage-illustrations img.clean-standalone{height:auto;max-height:none}}
.technical-content .positorq-assembly-views img{aspect-ratio:1;object-fit:contain}
.technical-content .positorq-disc-views img{aspect-ratio:779/520;object-fit:contain}
.technical-content .control-system-panel p.positorq-panel-note{margin-top:16px}
.positorq-conversion-content .control-system-panel>.control-drive-comparison:last-child,.positorq-conversion-content .control-system-panel>.control-system-photo:last-child{margin-bottom:0}
.technical-content .apron-conversion-data-scroll{margin:16px 0}
.technical-content .apron-conversion-lifetime-table{font-size:16px;line-height:1.5;min-width:0}
.technical-content .apron-conversion-lifetime-table thead th{background:var(--logo-navy);color:#fff;font-size:var(--section-size)!important;font-weight:700}
.technical-content .apron-conversion-lifetime-table tbody th{background:transparent;color:var(--ink);font-weight:600}
.technical-content .apron-conversion-lifetime-table tr>:first-child{text-align:left!important;width:45%}
.technical-content .apron-conversion-lifetime-table tr>:not(:first-child){text-align:center!important;font-variant-numeric:tabular-nums}
.technical-content .apron-conversion-lifetime-table th,.technical-content .apron-conversion-lifetime-table td{padding:10px 12px}
.technical-content .control-system-panel p.short-heater-support{margin-top:16px}

/* Consistent rows grow with the content and remain readable at every width. */
main :is(.control-spec-list,.apron-cot-specs){display:grid;grid-auto-rows:auto}
main .control-spec-list>div{min-height:var(--header-min-height);align-items:center;align-content:center;padding-top:6px;padding-bottom:6px}
main .control-spec-list>div:last-child{padding-bottom:6px}
main .apron-cot-specs>div{min-height:var(--header-min-height);align-content:center}

/* Enlarged upgrade photographs share one frame size, keeping each row of titles aligned. */
.product-tile.upgrade-tile{container-type:inline-size}
.product-tile.upgrade-tile>figure,.product-tile.upgrade-tile>.no-image{width:100%;height:clamp(240px,80cqw,360px);flex:0 0 auto;padding:8px}
.product-tile.upgrade-tile>figure>img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.product-tile.upgrade-tile>figure.pin-spindle-menu-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:center}
@media(max-width:520px){.product-grid:has(>.upgrade-tile){grid-template-columns:1fr}}

/* Electronic repairs: original technical photographs, readable captions and compact panels. */
.repair-service-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0 24px;border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:4px;background:var(--light)}
.repair-service-facts>div{padding:16px 18px;border-right:1px solid var(--line)}
.repair-service-facts>div:last-child{border-right:0}
.repair-service-facts strong,.repair-service-facts span{display:block;line-height:1.6}
.repair-service-facts strong{color:var(--logo-navy);margin-bottom:4px}
.electronic-repair-content>section{margin-top:24px;margin-bottom:24px}
.technical-content .repair-equipment-section>h2,.technical-content .repair-gallery-section>h2{margin:0 0 12px;}
.electronic-repair-content .repair-test-equipment{margin:16px 0 0}
.technical-content .repair-test-equipment .repair-test-stage{display:flex;height:340px;align-items:center;justify-content:center;padding:16px;background:var(--light)}
.technical-content .repair-test-equipment img{width:auto;height:auto;max-height:100%;max-width:100%;margin:0;padding:0;border:0;object-fit:contain}
.repair-test-equipment figcaption{border-top:1px solid var(--line);text-align:center;padding:14px 18px}
.repair-gallery-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:16px 0 20px}
.repair-gallery-links>a{border-bottom:1px solid var(--line);padding:5px 0;font-weight:600;color:var(--blue)}
.repair-photo-group{margin:24px 0}
.repair-photo-group h3{margin:0 0 12px;scroll-margin-top:24px;}
.repair-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.repair-photo-grid figure{display:flex;flex-direction:column;margin:0;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:5px;background:#fff}
.repair-photo-stage{--repair-photo-height:230px;display:flex;align-items:center;justify-content:center;height:calc(var(--repair-photo-height) + 28px);padding:14px;background:#fff}
.repair-photo-fit{width:min(100%,calc(var(--repair-photo-height) * var(--repair-photo-ratio)))}
.repair-photo-grid figcaption{display:grid;flex:1;min-height:78px;height:auto;padding:12px 14px;border-top:1px solid var(--line);background:var(--light);font-weight:600;line-height:1.6;color:var(--muted);text-align:center}
.repair-paired-caption{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.repair-photo-grid figure a:focus-visible,.repair-test-equipment a:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
.repair-photo-group:last-child{margin-bottom:0}
.repair-reference-tables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.repair-reference-tables>.table-wrap{margin:0;min-width:0}
.technical-content .repair-reference-table{min-width:0;width:100%;margin:0;font-size:16px;line-height:1.5;table-layout:fixed}
.technical-content .repair-reference-table th,.technical-content .repair-reference-table td{text-align:left!important;padding:12px;overflow-wrap:anywhere}
.technical-content .repair-reference-table thead th{background:var(--logo-navy);color:#fff}
.technical-content .repair-reference-table tbody th{background:transparent;color:var(--ink);font-weight:600}
.technical-content .repair-reference-table tr>:first-child{width:35%}
@media(max-width:760px){
 .repair-service-facts{grid-template-columns:1fr}
 .repair-service-facts>div{border-right:0;border-bottom:1px solid var(--line);padding:12px 16px}
 .repair-service-facts>div:last-child{border-bottom:0}
 .repair-reference-tables{grid-template-columns:1fr;gap:16px}
 .repair-photo-grid{grid-template-columns:1fr;gap:16px}
 .technical-content .repair-test-equipment .repair-test-stage{height:310px}
}
@media(max-width:420px){
 .repair-photo-stage{--repair-photo-height:170px;padding:10px;height:calc(var(--repair-photo-height) + 20px)}
 .repair-photo-grid figcaption{padding:12px;gap:12px}
 .technical-content .repair-reference-table th,.technical-content .repair-reference-table td{padding:10px 8px}
 .technical-content .repair-test-equipment .repair-test-stage{height:290px;padding:12px}
}

/* Homepage overview reflects the current product and service pages. */
.home-support-refreshed{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:var(--space-md) 32px;align-items:center;padding-top:24px;padding-bottom:24px}
.home-support-refreshed .support-intro{margin:0}
.home-support-refreshed .support-intro h2{font-size:30px;line-height:1.2;margin:0 0 10px;}
.home-support-refreshed .support-intro p{margin:0 0 12px}
.home-support-refreshed .support-copy-line{display:block}
.home-support-refreshed .support-intro .text-link{display:inline-block;color:var(--blue);line-height:1.5}
/* Equal brand columns take only the width needed by the longest label. */
.home-brand-list{display:grid;grid-template-columns:repeat(3,minmax(max-content,1fr));grid-auto-rows:1fr;gap:16px;margin:0;padding:0;list-style:none;background:transparent;border:0;border-radius:0}
.home-brand-list li{display:flex;min-width:0;margin:0;padding:0;text-align:left;color:var(--logo-navy)}
.home-brand-list .brand-tile{flex:1;justify-content:center;text-decoration:none}
.home-solutions{padding-top:26px;padding-bottom:26px}
.home-solutions .section-heading{margin-bottom:20px}
.home-solutions .section-heading h2{font-size:30px;line-height:1.2;margin:0 0 10px;}
.home-solutions .section-heading p{max-width:1000px;line-height:1.6}
.home-solutions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.home-solution-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:4px;overflow:hidden;background:#fff;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.home-solution-card:hover{color:var(--ink);border-color:var(--blue);box-shadow:0 5px 18px rgb(0 46 111 / 7%)}
.home-solution-card:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.home-solution-media{--home-media-height:210px;display:flex;align-items:center;justify-content:center;width:100%;height:var(--home-media-height);flex-shrink:0;padding:10px;background:#fff;overflow:hidden;border-bottom:1px solid var(--line)}
.home-solution-media>img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%;margin:0}
.home-solution-media--components{padding:12px}
.home-solution-media--plant,.home-solution-media--fabric{padding:0}
.home-solution-media--plant>img{object-fit:cover}
.home-solution-media--fabric>img{object-fit:cover;object-position:center;transform:scale(1.025)}
.home-solution-copy{display:flex;flex-direction:column;flex:1;padding:18px 20px 20px;min-width:0}
.home-solution-copy h3{font-size:21px;font-weight:700;line-height:1.35;letter-spacing:normal;text-align:center;color:var(--logo-navy);margin:0 0 12px;}
.home-solution-copy p{font-size:16px;line-height:1.6;color:var(--ink);margin:0 0 16px}
.home-solution-link{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line);color:var(--blue);font-size:16px;font-weight:600;line-height:1.5}
.home-reasons{margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line)}
.home-reasons>h3{font-size:21px;font-weight:700;line-height:1.35;margin:0 0 12px;color:var(--logo-navy);}
.home-reasons-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.home-reasons-grid p{margin:0;font-size:16px;line-height:1.6}
.home-reasons-grid strong,.home-reasons-grid span{display:block}
.home-reasons-grid strong{color:var(--logo-navy);margin-bottom:4px}
.home-reasons-grid span{color:var(--ink)}
@media(max-width:1199px){.home-support-refreshed{grid-template-columns:1fr;gap:18px}.home-brand-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.home-solutions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-reasons-grid{gap:18px}.home-solution-media{--home-media-height:220px}}
@media(max-width:650px){.home-solutions-grid{grid-template-columns:1fr;gap:16px}.home-brand-list{grid-template-columns:repeat(2,minmax(0,1fr))}.home-brand-list a{padding:12px 8px}.home-reasons-grid{grid-template-columns:1fr;gap:12px}.home-solutions,.home-support-refreshed{padding-top:22px;padding-bottom:22px}.home-solution-copy{padding:16px 18px 18px}}

/* Readable catalogue text keeps its size as tiles become narrower. */
.spindle-sheet-heading{gap:16px}
.spindle-quality-badges{gap:12px}
.spindle-quality-badges>div{gap:10px}
.technical-content .spindle-product-card h3,.technical-content .spindle-features h4{line-height:1.3;letter-spacing:normal;}
.technical-content .spindle-product-card .spindle-part-number{white-space:normal;overflow-wrap:anywhere;line-height:1.3}
.technical-content .spindle-features ul{padding-left:20px;gap:8px}
.technical-content .spindle-spec-table :is(th,td){padding:8px 10px;line-height:1.4}
.technical-content .spindle-sheet-benefits :is(p,span,strong){line-height:1.5}
@container spindle-card (max-width:420px){
 .spindle-sheet-heading,.spindle-photo-features{grid-template-columns:1fr;gap:14px}
 .spindle-quality-badges{grid-template-columns:repeat(2,minmax(0,1fr))}
 .spindle-photo-features .spindle-features{padding-top:0}
}
@container spindle-card (max-width:330px){
 .spindle-quality-badges,.spindle-sheet-benefits{grid-template-columns:1fr}
 .spindle-sheet-benefits>div:nth-child(odd){border-right:0}
 .spindle-sheet-benefits>div+div{border-top:1px solid #adbdd4}
}

/* Enlarge the artwork while retaining the logo's original row height. */
.site-header .brand{
 --logo-original-width:400px;
 position:relative;
 width:calc(var(--logo-original-width) * 1.25);
 height:calc(var(--logo-original-width) * .1650390625);
}
.site-header .brand img{
 position:absolute;
 top:50%;
 left:0;
 transform:translateY(-50%);
}

/* Compact service dropdown restores the main navigation beside the TSP logo. */
.site-header{position:relative;z-index:20}
.solutions-nav{position:relative;flex:none}
.solutions-nav>summary{display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer;padding:12px 0;font-size:16px;font-weight:600;line-height:1.65;white-space:nowrap}
.solutions-nav>summary::-webkit-details-marker{display:none}
.solutions-nav>summary::marker{content:""}
.solutions-nav>summary:hover,.solutions-nav[open]>summary,.solutions-nav.is-current>summary{color:var(--blue)}
.nav-chevron{display:block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.solutions-nav[open] .nav-chevron{transform:rotate(225deg);margin-top:4px}
.solutions-menu{position:absolute;top:calc(100% + 8px);left:0;width:270px;max-width:calc(100vw - 32px);padding:6px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:0 0 4px 4px;box-shadow:0 10px 24px rgb(0 46 111 / 10%);z-index:30}
.solutions-menu>a{display:block;padding:12px 14px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600;line-height:1.65;color:var(--logo-navy);white-space:normal}
.solutions-menu>a:last-child{border-bottom:0}
.solutions-menu>a:hover,.solutions-menu>a:focus-visible,.solutions-menu>a[aria-current=page]{background:var(--light);color:var(--blue)}
@media(min-width:1151px){
 .expertise-nav .solutions-menu{left:auto;right:0;width:300px}
 .site-header{flex-wrap:nowrap;gap:clamp(18px,2vw,28px);padding-top:20px;padding-bottom:20px}
 .site-header .brand{--logo-original-width:clamp(345px,30vw,400px)}
 .site-header nav{display:flex;flex:0 0 auto;width:auto;margin:0 0 0 auto;padding:0;border:0;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:clamp(14px,1.4vw,24px)}
 .site-header nav>.button{margin:0;padding:12px 18px}
 .site-header .menu-toggle{display:none}
}
@media(max-width:1150px){
 .site-header{position:relative;flex-wrap:wrap;gap:0;padding:17px 5%;min-height:84px}
 .site-header .brand{--logo-original-width:min(400px,calc(90vw - 104px));max-width:calc(100% - 104px)}
 .site-header .menu-toggle{display:block;padding:10px 12px}
 .site-header nav{display:none;flex-basis:100%;width:100%;margin:0;padding:15px 0 0;border:0;flex-direction:column;align-items:stretch;gap:0}
 .site-header nav.open{display:flex}
 .site-header nav>a{padding:13px 4px;border-top:1px solid var(--line)}
 .site-header nav>.button{padding:12px 20px;margin:10px 0 0;border:0;align-self:start}
 .solutions-nav{width:100%}
 .solutions-nav>summary{padding:13px 4px;border-top:1px solid var(--line);justify-content:space-between}
 .solutions-menu{position:static;width:100%;max-width:none;margin:0 0 10px;padding:4px 8px;border:0;border-left:3px solid var(--blue);border-radius:0;box-shadow:none}
}

/* Shared catalogue sidebar: calm groups, clear current page, full-width targets. */
.catalogue-layout{grid-template-columns:280px minmax(0,1fr);gap:var(--space-md) 32px}
.catalogue-nav{min-width:0;max-height:none;overflow:visible;border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:5px;background:#fff;font-family:Helvetica,Arial,sans-serif}
.catalogue-nav summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:12px;list-style:none;background:transparent;color:var(--logo-navy);line-height:1.45;cursor:pointer}
.catalogue-nav summary::-webkit-details-marker{display:none}
.catalogue-nav summary::after{content:"";display:block;flex:0 0 7px;width:7px;height:7px;margin-right:3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}
.catalogue-nav details[open]>summary::after{transform:rotate(45deg)}
.catalogue-nav .catalogue-title{padding:20px;font-size:var(--section-size)!important;font-weight:700;line-height:1.3;border-radius:3px}
.catalogue-overview{padding:0 9px 14px}
.catalogue-group{border-top:1px solid var(--line)}
.catalogue-nav .catalogue-group>summary{padding:15px 20px;font-size:16px;font-weight:700}
.catalogue-group-links{padding:0 9px 14px}
.catalogue-upgrade-links{padding:10px 9px 14px;border-top:1px solid var(--line)}
.catalogue-nav a,.catalogue-nav .catalogue-subgroup>summary{position:relative;display:block;min-height:46px;padding:11px 12px;border:0;border-radius:3px;background:transparent;color:var(--ink);font-size:16px;font-weight:400;line-height:1.45;text-align:left;overflow-wrap:break-word}
.catalogue-nav .catalogue-subgroup>summary{display:flex}
.catalogue-nav a:hover,.catalogue-nav summary:hover{background:var(--light);color:var(--logo-navy)}
.catalogue-nav .catalogue-subnav{margin:1px 0 7px 12px;padding-left:12px;border-left:1px solid var(--line)}
.catalogue-nav .catalogue-subnav a{min-height:44px;padding-top:10px;padding-bottom:10px}
.catalogue-nav a.active,.catalogue-nav a[aria-current]{background:var(--light);color:var(--logo-navy);font-weight:700}
.catalogue-nav a[aria-current]::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:2px;background:var(--blue)}
.catalogue-nav :is(a,summary):focus-visible{outline:2px solid var(--logo-navy);outline-offset:-2px}
@media(min-width:851px) and (max-width:1100px){.catalogue-layout{grid-template-columns:250px minmax(0,1fr);gap:24px}}
@media(max-width:850px){.catalogue-layout{grid-template-columns:minmax(0,1fr);gap:24px}.catalogue-nav .catalogue-title{padding:16px 20px}}
@media(prefers-reduced-motion:reduce){.catalogue-nav summary::after{transition:none}}
@media print{.catalogue-layout{display:block}}

/* Product navigation: one level of categories, a clear location and direct links. */
.product-navigation{border-top:1px solid var(--line);overflow:hidden}
.product-navigation .catalogue-title{background:var(--logo-navy);color:#fff;border-radius:4px 4px 0 0;padding:16px 20px}
.product-navigation .catalogue-title:hover{background:var(--logo-navy);color:#fff}
.product-navigation .catalogue-title-text{display:block;min-width:0}
.product-navigation .catalogue-current-page{display:block;margin-top:6px;font-size:16px;font-weight:700;line-height:1.4;overflow-wrap:break-word}
.product-navigation,.product-navigation .catalogue-menu-body{scrollbar-width:auto;scrollbar-color:var(--logo-navy) var(--light)}
.product-navigation::-webkit-scrollbar,.product-navigation .catalogue-menu-body::-webkit-scrollbar{width:16px}
.product-navigation::-webkit-scrollbar-track,.product-navigation .catalogue-menu-body::-webkit-scrollbar-track{background:var(--light)}
.product-navigation::-webkit-scrollbar-thumb,.product-navigation .catalogue-menu-body::-webkit-scrollbar-thumb{background:var(--logo-navy);border:3px solid var(--light);border-radius:8px;min-height:40px}
.catalogue-mobile-label{display:none}
.product-navigation .catalogue-overview{padding:8px 9px}
.product-navigation .catalogue-group-links{padding:0 10px 12px 18px}
.product-navigation .catalogue-group>summary{padding:14px 20px;min-height:52px}
.product-navigation .catalogue-group>summary::after{transform:rotate(45deg);margin-top:-4px}
.product-navigation .catalogue-group[open]>summary::after{transform:rotate(225deg);margin-top:4px}
.product-navigation .catalogue-category-link{border-top:1px solid var(--line)}
.product-navigation .catalogue-category-link>a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:14px 20px;font-weight:700;color:var(--logo-navy);border-radius:0}
.product-navigation .catalogue-category-link>a>span{font-size:22px;line-height:1}
#machine-components{scroll-margin-top:24px}
.product-navigation a{min-height:44px;padding:10px 12px}
.product-navigation a.active,.product-navigation a[aria-current]{background:var(--logo-navy);color:#fff;font-weight:700}
.product-navigation a[aria-current]::before{display:none}
.product-navigation .catalogue-expertise{padding:10px 9px;border-top:1px solid var(--line)}
.product-navigation .catalogue-expertise a{color:var(--logo-navy);font-weight:700}
.product-navigation :is(a,summary):focus-visible{outline:3px solid #ba8317;outline-offset:-3px}
.product-breadcrumbs{margin:0 0 16px;font:400 14px/1.5 Helvetica,Arial,sans-serif;color:var(--muted)}
.product-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 10px;list-style:none;margin:0;padding:0}
.product-breadcrumbs li{display:flex;align-items:baseline;gap:10px;min-width:0}
.product-breadcrumbs li+li::before{content:"›";color:var(--muted)}
.product-breadcrumbs a{color:var(--logo-navy);text-decoration:underline;text-underline-offset:3px}
.product-breadcrumbs a:hover{color:var(--blue)}
.product-breadcrumbs [aria-current]{color:var(--ink);font-weight:700}
.polymer-product-body,.product-index-body{min-width:0}
.polymer-product-section .catalogue-layout{align-items:start}
@media(min-width:851px){
 .product-navigation{position:sticky;top:16px;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
 .product-navigation .catalogue-title{position:sticky;top:0;z-index:2;cursor:default}
 .product-navigation .catalogue-title::after{display:none}
 .product-index-body .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
 .catalogue-desktop-label{display:none}
 .catalogue-mobile-label{display:inline}
 .product-navigation .catalogue-menu[open]>.catalogue-menu-body{max-height:65dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
 .product-breadcrumbs{margin-bottom:12px}
}
@media print{.product-breadcrumbs{display:none}}

/* Contact enquiry and direct contact details. */
.contact-page .contact-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--space-md) 40px;align-items:start}
.contact-page .contact-layout h2{margin:0 0 14px;font-size:21px;font-weight:700;line-height:1.3;color:var(--logo-navy);}
.contact-page .contact-form>p{margin:0 0 24px;max-width:600px;font-size:16px}
.contact-page .form-grid{gap:18px 20px;align-items:start}
.contact-page .form-field{min-width:0;gap:7px}
.contact-page .form-field label{font-weight:700}
.contact-page .form-field :is(input,select,textarea){width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #bfced6;border-radius:4px;background:#fff;color:var(--ink);font-family:Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}
.contact-page .form-field textarea{min-height:140px;resize:vertical}
.contact-page .field-hint{color:var(--muted);font-size:16px;line-height:1.4}
.contact-page .contact-machine-details{margin:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.contact-page .contact-machine-details>summary{padding:14px 0;color:var(--logo-navy);font-size:16px;font-weight:700;cursor:pointer}
.contact-page .contact-machine-details>summary span{font-weight:400;color:var(--muted)}
.contact-page .contact-machine-details .form-grid{padding:3px 0 20px}
.contact-page .contact-attachments{margin-top:20px;font-size:16px;line-height:1.5}
.contact-page .contact-attachments strong{color:var(--logo-navy)}
.contact-page .contact-attachments p{margin:4px 0 0;color:var(--muted)}
.contact-page .form-actions{margin-top:22px;gap:12px}
.contact-page .form-actions button{min-height:46px}
.contact-page .form-actions button:disabled{opacity:.6;cursor:default}
.contact-page .form-note{margin:14px 0 0;color:var(--muted)}
.contact-page [hidden]{display:none!important}
.contact-page .contact-card{padding:22px;background:var(--light);border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:5px}
html body main .contact-page .contact-card .site-tile-heading{min-height:0!important;padding-block:0!important}
.contact-page .contact-card>h2{margin-bottom:8px}
.contact-page .contact-channel{padding:10px 0;border-bottom:1px solid var(--line)}
.contact-page .contact-channel-label{display:block;margin:0 0 4px;font-size:16px;font-weight:700;color:var(--logo-navy);line-height:1.5;letter-spacing:normal;text-transform:none}
.contact-page .contact-value{display:block;color:var(--ink);font-size:16px;overflow-wrap:anywhere}
.contact-page .contact-value:hover{color:var(--blue);text-decoration:underline}
.contact-page .contact-address{padding-top:14px}
.contact-page .contact-address h3{margin:0 0 8px;font-size:21px;color:var(--logo-navy);}
.contact-page .contact-address strong{display:block;margin-bottom:4px;font-size:16px}
.contact-page .contact-address address{font-style:normal;font-size:16px;color:var(--ink);line-height:1.5}
.contact-page .company-details{margin-top:20px;font-size:16px;line-height:1.7}
.contact-page .contact-qr{margin:16px 0 0;text-align:center}
.contact-page .contact-qr img{display:block;width:100%;max-width:217.5px;height:auto;margin:0 auto}
.contact-page .contact-qr a{display:inline-block;max-width:100%}
.contact-page .contact-qr .contact-qr-save{display:block;margin:6px auto 0;color:var(--blue);font-size:16px;font-weight:700}
@media(max-width:900px){.contact-page .contact-layout{gap:var(--space-md) 28px}}
@media(max-width:760px){.contact-page .contact-layout{grid-template-columns:minmax(0,1fr)}.contact-page .contact-card{padding:22px}}
@media(max-width:480px){.contact-page .form-grid{grid-template-columns:minmax(0,1fr)}}

/* Twist generation guide, using the shared TSP typography and blue rules. */
.expertise-twist-measurement{margin:0 0 var(--space-md) 0;padding:24px 0;border-top:3px solid var(--blue);border-bottom:1px solid var(--line)}
.expertise-twist-measurement h2{margin:0 0 12px;font-size:21px;font-weight:700;line-height:1.3;color:var(--logo-navy);}
.expertise-twist-measurement p{margin:0 0 16px}
.expertise-twist-measurement>p:last-child{margin-bottom:0}
.expertise-tester-figure{width:50%;margin:18px auto}
.expertise-tester-figure .twist-tester-stage{min-width:0}
@media(max-width:900px){.expertise-tester-figure{width:100%}}
.twist-tester-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;background:#fff}
.twist-tester-stage{position:relative;min-width:760px;aspect-ratio:1775/640;overflow:hidden;background:#fff}
.twist-tester-image-link{position:absolute;inset:0;display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.twist-tester-stage img{position:absolute;left:0;top:-28.125%;display:block;width:100%;height:auto;max-height:none;margin:0;border:0;object-fit:contain}
.twist-tester-leaders,.twist-tester-yarn-geometry{position:absolute;inset:0;width:100%;height:100%;color:var(--blue);pointer-events:none}
.twist-tester-label{position:absolute;left:var(--label-x);top:var(--label-y);transform:translate(-50%,-50%);padding:3px 7px;background:#fff;color:var(--logo-navy);font-family:Helvetica,Arial,sans-serif;font-size:16px;font-weight:700;line-height:1.35;white-space:nowrap}
.twist-tester-dialog{width:min(1380px,calc(100% - 32px));max-height:calc(100vh - 32px);padding:18px;border:1px solid var(--line);border-radius:5px;background:#fff}
.twist-tester-dialog::backdrop{background:rgba(7,28,49,.65)}
.twist-tester-dialog-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}
.twist-guide-content{font-size:16px;line-height:1.65}
.twist-section+ .twist-section{margin-top:var(--space-md);padding-top:28px}
.twist-guide-content h2{margin:0 0 18px;color:var(--logo-navy);font-size:21px;font-weight:700;line-height:1.3;}
.twist-guide-content h3{margin:0 0 10px;color:var(--logo-navy);font-size:21px;font-weight:700;line-height:1.3;}
.twist-guide-content p{margin:0 0 16px}
.twist-guide-content p:last-child{margin-bottom:0}
.twist-calculations{display:flex;flex-wrap:wrap;align-items:center;gap:10px 48px;margin:18px 0;padding:18px 22px;border-left:3px solid var(--blue);background:var(--light)}
.twist-guide-content .twist-calculations p{margin:0}
.twist-guide-content .twist-calculations p+p{margin-top:0}
.twist-calculations strong{color:var(--logo-navy)}
.twist-formation-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);align-items:start;gap:var(--space-md) 32px}
.twist-formation-copy{display:grid;gap:18px;min-width:0}
.twist-explanation-tile{padding:20px 24px;border-top:3px solid var(--blue);background:var(--light)}
.twist-disc-figure{align-self:center;margin:0;text-align:center}
.twist-disc-figure a{display:block}
.twist-disc-figure img{display:block;width:auto;max-width:100%;height:auto;max-height:744px;margin:0 auto}
.twist-guide-content figcaption{margin-top:12px;font-size:16px;color:var(--muted);line-height:1.5}
.twist-detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.twist-detail-figure{display:flex;flex-direction:column;min-width:0;margin:0;border-top:3px solid var(--blue);background:var(--light)}
.twist-detail-figure img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:1627/967;object-fit:contain;background:#fff}
.twist-guide-content .twist-detail-figure figcaption{flex:1;margin:0;padding:16px 20px;color:var(--logo-navy);font-weight:700;text-align:center}
@media(max-width:900px){.twist-detail-gallery{grid-template-columns:minmax(0,1fr);gap:18px}}
.twist-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md) 28px}
.twist-outcomes article{min-width:0;padding:24px;border-top:3px solid var(--blue);background:var(--light)}
.twist-outcomes h3{min-height:2.6em;}
.twist-parameters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;gap:24px;margin:20px 0}
.twist-parameters>div{min-height:400px;padding:24px;border-top:3px solid var(--blue);background:var(--light)}
.twist-parameters dt{font-size:var(--section-size)!important;line-height:1.3;color:var(--logo-navy);font-weight:700;margin:0 0 12px}
.twist-parameters dd{margin:0}
.twist-parameters dd p{margin:0 0 14px}
.twist-parameters dd p:last-child{margin-bottom:0}
.twist-parameters>div.twist-parameter-image-tile{display:flex;flex-direction:column;padding:24px 0 0;min-width:0}
.twist-parameter-image-tile dt{padding-inline:24px}
.twist-parameter-image-tile dd{flex-grow:1}
.yarn-angle-content{display:flex;flex-direction:column}
.twist-parameters .twist-parameter-photo{display:block;width:100%;max-width:100%;height:auto;max-height:none;margin:0}
.yarn-angle-open{display:block;flex:none;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.yarn-angle-open:focus-visible{outline-offset:-5px}
.yarn-angle-actions{flex-shrink:0;padding:20px 24px 24px;text-align:center}
.yarn-angle-zoom-label{max-width:100%;padding:9px 13px;border:0;border-radius:4px;background:var(--logo-navy);color:#fff;font-size:14px;font-weight:700;line-height:1.4}
.yarn-angle-zoom-label:hover{background:var(--blue)}
.yarn-angle-dialog{width:fit-content;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);padding:18px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--logo-navy)}
.yarn-angle-dialog::backdrop{background:rgba(7,28,49,.65)}
.yarn-angle-dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.yarn-angle-dialog-toolbar h3{margin:0;}
.yarn-angle-close{padding:8px 16px;border:0;flex-shrink:0}
.yarn-angle-detail{display:block;width:min(560px,calc(100vw - 70px),calc(100dvh - 155px));height:auto;max-width:100%;margin:0 auto}
.twist-related-links{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:20px;color:var(--blue)}
.technical-content .twist-guide-link{border-top:3px solid var(--blue);padding-top:20px;margin:24px 0}
.twist-guide-link .button{line-height:1.5;max-width:100%}
@media(max-width:900px){.twist-formation-layout{gap:24px;grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr)}.twist-outcomes{grid-template-columns:minmax(0,1fr)}.twist-outcomes h3{min-height:0}.twist-parameters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.twist-formation-layout,.twist-outcomes,.twist-parameters{grid-template-columns:minmax(0,1fr)}.twist-disc-figure img{max-height:516px}.twist-formation-copy{margin-top:4px}.twist-outcomes{gap:22px}.twist-section+ .twist-section{margin-top:var(--space-md);padding-top:24px}}

/* Shared controls, readable specifications and touch targets. Body copy is 16px; secondary captions and references are 14px. */
body :is(h1,h2,h3,h4,h5,h6){color:var(--logo-navy)}
:is(.cta,.site-footer) :is(h2,h3,h4){color:#fff}
:is(input,select,textarea),.button,.menu-toggle,.site-header nav>a{font-size:16px!important}
:is(a,button).button{min-height:44px;background:var(--logo-navy);color:#fff;border:1px solid var(--logo-navy);border-radius:4px}
:is(a,button).button:hover{background:var(--blue);border-color:var(--blue)}
.fancy-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr}
.fancy-links a,.fancy-links a:visited{background:#fff;color:var(--logo-navy);border:1px solid var(--logo-navy);font-size:16px;font-weight:700;min-width:0;min-height:52px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}
.fancy-links a:hover,.fancy-links a:focus-visible{background:var(--logo-navy);border-color:var(--logo-navy);color:#fff}
.fancy-links a:focus-visible{outline:2px solid var(--logo-navy);outline-offset:3px}
@media(max-width:700px){.fancy-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.fancy-links{grid-template-columns:minmax(0,1fr)}}
.accessible-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.image-specifications{padding:16px;border:1px solid var(--line);margin:16px 0;background:#fff;text-align:left}
.image-specifications summary{font-weight:700;color:var(--logo-navy);cursor:pointer;min-height:44px;display:list-item}
.image-specifications table{width:100%;border-collapse:collapse}
.image-specifications :is(th,td){padding:10px;text-align:left;border:1px solid var(--line);white-space:normal}
.image-specifications thead th{background:var(--logo-navy);color:#fff}
.image-specifications tbody th{background:transparent;color:var(--ink)}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
button:disabled{opacity:.65;cursor:wait}
.form-note[data-error=true]{color:#a31818}
.component-index{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 24px}
.component-index a{padding:12px 16px;border:1px solid var(--line);border-radius:4px;color:var(--logo-navy);text-decoration:underline}
.take-up-sheet-grid figcaption{padding:16px;text-align:left;line-height:1.65}
:is(main,.technical-content,.contact-form,.form-grid,.spindle-product-card){min-width:0}
:where(p,li,td,th,figcaption){overflow-wrap:break-word}
@media(max-width:520px){.product-grid{grid-template-columns:1fr}.brand-grid{grid-template-columns:1fr 1fr}.button{max-width:100%;white-space:normal}.site-header .brand{max-width:calc(100% - 92px)}.take-up-tabs{flex-wrap:wrap}.twist-parameters{grid-template-columns:1fr}}

.spindle-photo-features.photo-only{grid-template-columns:1fr}.family-features{padding:24px;background:var(--light);margin:24px 0}body :is(h1,h2,h3,h4,h5,h6){overflow-wrap:anywhere}

/* Secondary text uses a shared scale; headings within captions keep their heading size. */
body :is(caption,figcaption,small,.part-reference,.spindle-bearing-caption,.tech-note,.form-note,.footer-bottom),
body :is(caption,figcaption,small,.part-reference,.spindle-bearing-caption,.tech-note,.form-note,.footer-bottom) :is(p,li,span,a,strong,b,em,i,small):not(:is(h2,h3,h4,h5,h6) *){font-size:var(--caption-size)!important;line-height:1.5}

/* Keep the enquiry link on the contact line and free the main menu's right edge. */
.topline{align-items:center;gap:16px 24px}
.topline-location{min-width:0;flex:1;text-align:left;line-height:1.4}
.topline-actions{display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-left:auto;min-width:0}
.topline-actions .topline-right{min-width:0}
.topline-cta{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;min-height:40px;padding:6px 14px;border:1px solid #fff;border-radius:4px;color:#fff;font-size:16px;font-weight:700;line-height:1.4;white-space:nowrap}
.topline-cta:hover{background:#fff;color:var(--logo-navy)}
.topline-cta:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:850px){.topline{gap:16px}.topline-location{flex:1}.topline-actions{gap:0}}
/* Product photographs and drawings retain their source pixels; labels are HTML. */
.clean-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.clean-product-card{min-width:0;padding:20px;border:1px solid var(--line);border-radius:5px;background:#fff}
.technical-content .clean-product-card>h2,.technical-content .clean-product-card>h3{text-align:center;font-size:21px;margin:0 0 20px;line-height:1.4}
.clean-product-visuals{display:grid;grid-template-columns:1fr;gap:14px}
.technical-content .clean-image-figure{margin:0;border:0;background:#fff;min-width:0;padding:0}
.clean-image-button{display:flex;align-items:center;justify-content:center;width:100%;padding:10px;border:1px solid var(--line);border-radius:4px;background:#fff;color:inherit;font:inherit;cursor:zoom-in}
.clean-image-button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.clean-visual{display:flex;align-items:center;justify-content:center;min-width:0;width:100%}
.clean-image-window{position:relative;display:block;flex:none;width:100%;max-width:min(100%,var(--image-native-width));overflow:hidden;background:#fff}
.technical-content .clean-image-window img,.clean-image-window img{position:absolute;display:block;max-width:none!important;max-height:none!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;object-fit:initial!important}
.product-photograph .clean-image-button{height:280px}
.product-photograph .clean-image-window{width:min(100%,calc(250px * var(--image-ratio)))}
.product-drawing .clean-image-button{height:230px}
.product-drawing .clean-image-window{width:min(100%,calc(200px * var(--image-ratio)))}
.technical-content .clean-image-figure .clean-caption{padding:10px 0 4px;text-align:center;font:400 14px/1.5 Helvetica,Arial,sans-serif;color:var(--muted);background:none;border:0}
.clean-product-card .product-summary{margin:18px 0;line-height:1.7}
.clean-specifications{margin:18px 0 0;min-width:0}
.clean-specifications table{width:100%;font-size:16px!important;table-layout:fixed}
.clean-specifications th,.clean-specifications td{white-space:normal!important;overflow-wrap:anywhere;padding:11px 12px!important;font-size:16px!important;line-height:1.5!important}
.clean-specifications th:first-child{width:62%;text-align:left!important}
.clean-specifications td{text-align:center!important}
.clean-fancy-sheet{padding:24px;margin:var(--space-md) 0 var(--space-md) 0;border:1px solid var(--line);border-radius:5px;background:#fff}
.technical-content .clean-fancy-sheet>h2{text-align:center;font-size:21px;margin:0 0 10px}
.clean-fancy-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-md) 28px;align-items:start}
.clean-fancy-layout .clean-specifications{margin:0}
.clean-fancy-layout .fancy-diagram{position:sticky;top:16px}
.clean-fancy-layout .fancy-diagram .clean-visual{aspect-ratio:980/1190}
.clean-fancy-layout .clean-standalone{display:block;width:100%;height:100%;max-height:none;object-fit:contain;margin:0}
.fabric-sample .clean-image-button{padding:0}
.fancy-fabric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:var(--space-md) 0 var(--space-md) 0}
.fancy-fabric-grid .fancy-fabric-tile{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:0;margin:0;padding:0;overflow:hidden}
.technical-content .fancy-fabric-tile>.site-tile-heading{margin:0;padding-inline:18px;background:var(--logo-navy);color:#fff;font-size:21px;font-weight:700;line-height:1.4}
.fancy-fabric-tile .clean-image-button{border:0;border-radius:0}
@media(max-width:700px){.fancy-fabric-grid{grid-template-columns:minmax(0,1fr);row-gap:20px}.fancy-fabric-grid .fancy-fabric-tile{grid-row:auto;grid-template-rows:auto auto}}
.clean-image-dialog{width:min(1080px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--logo-navy);font:16px/1.6 Helvetica,Arial,sans-serif}
.clean-image-dialog::backdrop{background:rgba(7,28,49,.7)}
.clean-image-dialog-toolbar{display:flex;justify-content:flex-end;margin-bottom:16px}
.clean-image-dialog-toolbar button{padding:9px 16px;border:1px solid var(--logo-navy);border-radius:4px;background:white;color:inherit;font:inherit;cursor:pointer}
.clean-image-dialog .clean-visual{max-width:100%;margin:auto;width:auto}
.clean-image-dialog .clean-image-window{width:min(100%,calc(65vh * var(--image-ratio)));max-width:min(100%,var(--image-native-width))}
.clean-image-dialog img.clean-standalone{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain}
.clean-image-dialog .repair-photo-fit{width:min(100%,calc(65vh * var(--repair-photo-ratio)));max-width:min(850px,var(--repair-native-width,850px))}
.clean-image-dialog .clean-caption{display:block;text-align:center;font:400 16px/1.6 Helvetica,Arial,sans-serif;margin:18px 0 0}
.clean-image-dialog .repair-paired-caption{display:flex;gap:24px;justify-content:space-around}
.repair-photo-stage.clean-image-button{border:0;border-radius:0}
.repair-test-equipment img{filter:brightness(1.025) contrast(1.025)}
.photo-tonal-cleanup{filter:brightness(1.055) contrast(1.025)}
.machine-part-dialog .machine-part-crop{max-width:min(100%,var(--part-native-width,100%))}
@media(max-width:900px){.clean-product-grid,.clean-fancy-layout{grid-template-columns:1fr}.clean-fancy-layout .fancy-diagram{position:static}}
@media(max-width:550px){.clean-product-card,.clean-fancy-sheet{padding:15px}.clean-product-grid{gap:18px}.product-photograph .clean-image-button{height:250px}.product-photograph .clean-image-window{width:min(100%,calc(220px * var(--image-ratio)))}.product-drawing .clean-image-button{height:auto;min-height:150px}.clean-image-dialog{padding:14px}.clean-specifications th,.clean-specifications td{padding:9px!important}}
.clean-filtration-figures{display:grid;grid-template-columns:repeat(var(--diagram-columns),minmax(0,1fr));gap:18px;margin:22px 0}
.clean-diagram-card{min-width:0;border:1px solid var(--line);border-radius:4px;padding:14px;background:#fff}
.clean-diagram-card .clean-image-button{padding:0;border:0}
.technical-content .clean-diagram-card .clean-caption{font-size:16px;font-weight:700;padding:12px 0 0;line-height:1.5}
.clean-diagram-card p{font-size:16px;line-height:1.65;margin:10px 0 0}
.clean-diagram-group{margin:22px 0}
.clean-filtration-figures[style*="columns:1"] .clean-image-window{max-width:950px}
.clean-diagram-key{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 28px;padding-left:28px;font-size:16px}
.clean-label-cover{position:absolute;display:flex;align-items:center;justify-content:center;z-index:1}
.clean-callout{display:inline-flex;align-items:center;justify-content:center;flex:none;width:22px;height:22px;border-radius:50%;color:white;background:var(--logo-navy);font:700 14px/1 Helvetica,Arial,sans-serif}
@media(max-width:1000px){.clean-filtration-figures{grid-template-columns:repeat(2,minmax(0,1fr))}.clean-filtration-figures[style*="columns:1"]{grid-template-columns:1fr}}
@media(max-width:650px){.clean-filtration-figures{grid-template-columns:1fr}.clean-diagram-key{grid-template-columns:1fr 1fr}.clean-diagram-card .clean-image-window{max-width:540px}}
.candle-connection-photos .clean-filtration-figures{align-items:start}
.candle-connection-photos .clean-diagram-card{height:100%}
.technical-content .candle-connection-photos .clean-caption{min-height:60px;display:flex;align-items:center;justify-content:center}
.clean-chart{border:1px solid var(--line);border-radius:5px;padding:22px;margin:24px 0;background:#fff}
.technical-content .clean-chart h3{text-align:center;font-size:21px;margin:0 0 12px}
.chart-conditions,.chart-legend{text-align:center;font-size:16px}
.chart-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:20px}
.chart-key-blue:before,.chart-key-gold:before{content:"";display:inline-block;width:14px;height:14px;background:#0864b9;margin-right:9px;vertical-align:middle}
.chart-key-gold:before{background:#ffca0a;border:1px solid #d4a400}
.chart-axis-heading{font-size:16px;font-weight:700;margin:20px 0 12px}
.clean-chart-frame{padding:6px 14px 36px 55px}
.clean-chart-plot{position:relative}
.technical-content .clean-chart-plot-image{display:block;width:100%;height:auto;max-height:none;margin:0;border:0;padding:0}
.chart-y-tick{position:absolute;right:calc(100% + 10px);transform:translateY(-50%);font-size:14px;white-space:nowrap;font-weight:400;line-height:1}
.chart-x-ticks{position:absolute;top:calc(100% + 12px);width:100%;font-size:14px;line-height:1}
.chart-x-ticks span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.chart-axis-footer{text-align:center;font-size:16px;font-weight:700;margin:10px 0 16px}
.chart-old-legend-cover{position:absolute;left:49.1%;top:34.1%;width:25%;height:8%;background:white}
.chart-reference-table{width:100%;font-size:16px}
.chart-reference-table th,.chart-reference-table td{font-size:16px!important;padding:10px!important;white-space:normal!important}
.technical-content .spin-pack-components-table tbody :is(th,td){text-align:left!important}
.technical-content .spin-pack-components-table thead th{text-align:center!important}
.technical-content .metal-sand-content .spin-pack-components-table tbody tr>:first-child{text-align:center!important}
.technical-content .metal-trial-table tbody td:nth-child(2){text-align:left!important}
.technical-content .metal-trial-table thead th{text-align:center!important}
.metal-bed-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.metal-bed-tile{min-width:0;padding:22px;border:1px solid var(--line);border-top:3px solid var(--logo-navy);border-radius:4px;background:#fff}
.technical-content .metal-bed-tile :is(h2,h3,h4){margin:0 0 16px;text-align:center;color:var(--logo-navy);font-size:21px;font-weight:700;line-height:1.4;letter-spacing:normal}
.metal-bed-tile p:last-child{margin-bottom:0}
@media(max-width:700px){.metal-bed-grid{grid-template-columns:1fr;gap:18px}.metal-bed-tile{padding:18px}}
.technical-content .metal-particle-table{min-width:1000px;table-layout:auto}
.technical-content .metal-particle-table tr>:first-child{width:18%;min-width:165px;white-space:nowrap}
.technical-content .metal-particle-table th{white-space:nowrap;padding:6px 12px;line-height:20px}
.atomisation-diagram{max-width:620px;margin:24px auto}
.atomisation-diagram .clean-image-button{padding:12px;overflow-x:auto;justify-content:flex-start}
.atomisation-diagram .clean-visual{min-width:340px}
.atomisation-visual{position:relative;display:block;width:100%;padding-left:148px}
.atomisation-label{position:absolute;left:0;width:138px;transform:translateY(-50%);text-align:right;color:var(--logo-navy);font:400 16px/1.25 Helvetica,Arial,sans-serif}
.clean-image-dialog .atomisation-visual{max-width:760px;margin:auto}
.clean-image-dialog .atomisation-image{width:100%}
@media(max-width:550px){.atomisation-diagram .clean-image-button{padding:8px}.atomisation-visual{padding-left:120px}.atomisation-label{width:110px;font-size:14px}}
@media(max-width:550px){.clean-chart{padding:14px}.clean-chart-frame{padding-left:45px;padding-right:10px}.chart-y-tick,.chart-x-ticks{font-size:12px}.chart-reference-table th,.chart-reference-table td{font-size:14px!important;padding:8px!important}}

/* Polymer filtration: descriptive cards and compact numerical comparisons. */
.filtration-card-grid{display:grid;gap:22px;margin:24px 0;align-items:stretch}
.filtration-columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.filtration-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.filtration-card{min-width:0;border:1px solid var(--line);border-radius:4px;background:#fff;overflow:hidden}
@supports(grid-template-rows:subgrid){.filtration-card{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0}}
.technical-content .filtration-card .filtration-card-heading{margin:0;padding:16px 18px;background:var(--logo-navy);color:#fff;font:700 21px/1.4 Helvetica,Arial,sans-serif;text-align:center;letter-spacing:normal;overflow-wrap:normal}
.filtration-card-body{padding:20px;color:var(--ink)}
.filtration-card-body p,.filtration-card-body dd{font-size:16px;line-height:1.65;text-align:left;margin:0 0 14px;overflow-wrap:break-word}
.filtration-card-body>:last-child,.filtration-card-body p:last-child{margin-bottom:0}
.filtration-card-body .filtration-card-subtitle{text-align:center;font-size:16px;font-weight:700;color:var(--logo-navy);min-height:52px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.filtration-card-body dl{margin:0}
.filtration-card-body dt{margin:16px 0 5px;font-size:14px;line-height:1.5;font-weight:700;color:var(--logo-navy)}
.filtration-card-body dt:first-child{margin-top:0}
.filtration-card-body dd{margin-left:0}
.filtration-card-body dd:last-child{margin-bottom:0}
.technical-content .filtration-material-detail img{width:100%;height:185px;max-height:185px;object-fit:contain;margin:0 0 18px}
.filtration-material-detail+.filtration-material-detail{margin-top:16px}
.filtration-material-detail p:has(>strong:only-child){margin-bottom:5px;color:var(--logo-navy)}
.technical-content .metal-sand-content table.filtration-data-table,.technical-content .metal-sand-content table.filtration-reference-table{width:100%;min-width:600px;table-layout:auto;font-size:16px}
.technical-content .metal-sand-content table.filtration-data-table[data-filtration-columns="2"]{min-width:420px}
.technical-content .metal-sand-content table.filtration-data-table[data-filtration-columns="3"]{min-width:560px}
.technical-content .metal-sand-content table.filtration-data-table[data-filtration-columns="5"]{min-width:840px}
.technical-content .metal-sand-content table.filtration-data-table[data-filtration-columns="6"]{min-width:880px}
.technical-content .metal-sand-content table.metal-particle-table{min-width:1000px}
.technical-content .metal-sand-content .filtration-data-table :is(th,td),.technical-content .metal-sand-content .filtration-reference-table :is(th,td){height:var(--header-min-height);padding:8px 12px;font-size:16px;line-height:20px;vertical-align:middle}
.technical-content .metal-sand-content .filtration-data-table thead th,.technical-content .metal-sand-content .filtration-reference-table thead th{text-align:center!important;white-space:normal;background:var(--logo-navy);color:#fff}
.technical-content .metal-sand-content .filtration-data-table tbody th,.technical-content .metal-sand-content .filtration-reference-table tbody th{background:transparent;color:var(--ink);font-weight:400;text-align:left!important;width:auto;white-space:normal}
.technical-content .metal-sand-content .filtration-data-table tbody td{text-align:center!important;white-space:nowrap;font-variant-numeric:tabular-nums}
.technical-content .metal-sand-content .filtration-reference-table tbody .filtration-reference-cell,.technical-content .metal-sand-content .filtration-data-table tbody .filtration-note-cell{text-align:left!important;white-space:normal}
.technical-content .metal-sand-content .filtration-reference-table tbody th{width:64px;white-space:nowrap}
.technical-content .metal-sand-content .filtration-data-notes th:first-child{width:30%}
.technical-content .metal-sand-content .filtration-data-notes th:nth-child(2){width:22%}
.technical-content .metal-sand-content .filtration-composition-table{table-layout:fixed}
.technical-content .metal-sand-content .filtration-composition-table tr>:first-child{width:25%;white-space:nowrap}
.technical-content .metal-sand-content .metal-composition-table tr>:is(th,td){width:25%}
.technical-content .metal-sand-content.metal-sand-page .filtration-card .filtration-card-heading{display:flex;align-items:center;justify-content:center;min-height:84px;font-size:21px!important;line-height:1.4;padding:12px 18px}
.technical-content .metal-sand-content.metal-sand-page table thead th{height:84px;font-size:21px!important;line-height:1.4;padding:12px;white-space:normal}

.technical-content .metal-sand-content .metal-particle-table tr>:first-child{width:18%;min-width:165px;white-space:nowrap}
.technical-content .metal-sand-content .metal-particle-table thead th{white-space:nowrap}
.technical-content .metal-sand-content table.metal-particle-table{table-layout:fixed}
.technical-content .metal-sand-content .metal-particle-table tr>:is(th,td),.technical-content .metal-sand-content .metal-particle-table tr>:first-child{width:20%;min-width:0;text-align:center!important}
.technical-content .metal-sand-content .metal-particle-table thead th{white-space:normal}

@media(max-width:1000px){.filtration-columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.filtration-card-grid{grid-template-columns:1fr;gap:18px}.filtration-card-body{padding:18px}.filtration-card-body .filtration-card-subtitle{min-height:0}}

/* Filtration specifications fit the content width; small panels show labelled rows. */
.technical-content .filtration-table-container{width:100%;min-width:0;max-width:100%;overflow:visible;container:filtration-table / inline-size}
.technical-content .metal-sand-content table.filtration-responsive-table{width:100%;min-width:0!important;max-width:100%;table-layout:fixed}
.technical-content .metal-sand-content .filtration-responsive-table tr>:is(th,td){width:auto!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere;padding-inline:8px}
.technical-content .metal-sand-content .filtration-responsive-table.filtration-reference-table tr>:first-child{width:16%!important}
.filtration-cell-value{min-width:0;max-width:100%;overflow-wrap:anywhere}
.technical-content .metal-sand-content.leaf-disc-content table.filtration-data-table tbody tr>:nth-child(2){text-align:left!important}
@container filtration-table (min-width:641px){
 .technical-content .dutch-weave-specs table.filtration-responsive-table tr>:is(th,td){padding-inline:6px}
 .technical-content .dutch-weave-specs table.filtration-responsive-table tr>:is(:first-child,:last-child){width:31%!important}
 .technical-content .dutch-weave-specs table.filtration-responsive-table tr>:nth-child(2){width:23%!important}
 .technical-content .dutch-weave-specs table.filtration-responsive-table tr>:nth-child(3){width:15%!important}
 .technical-content .leaf-disc-configurations table.filtration-responsive-table tr>:is(th,td){padding-inline:4px}
 .technical-content .leaf-disc-configurations table.filtration-responsive-table tr>:first-child{width:7%!important}
 .technical-content .leaf-disc-configurations table.filtration-responsive-table tr>:nth-child(2){width:38%!important;padding-inline:8px}
 .technical-content .leaf-disc-configurations table.filtration-responsive-table tr>:is(:nth-child(3),:nth-child(4),:nth-child(5)){width:13%!important}
 .technical-content .leaf-disc-configurations table.filtration-responsive-table tr>:nth-child(6){width:16%!important}
 .technical-content .metal-sand-content table.filtration-responsive-table.spin-pack-components-table tr>:first-child{width:7%!important}
 .technical-content .metal-sand-content table.filtration-responsive-table.spin-pack-components-table tr>:nth-child(2){width:28%!important}
 .technical-content .metal-sand-content table.filtration-responsive-table.spin-pack-components-table tr>:nth-child(3){width:65%!important}
}
@container filtration-table (max-width:640px){
 .technical-content .metal-sand-content table.filtration-responsive-table{display:block;border:0}
 .technical-content .metal-sand-content .filtration-responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .technical-content .metal-sand-content .filtration-responsive-table tbody{display:grid;gap:16px}
 html body main .technical-content .metal-sand-content table.filtration-responsive-table tbody tr{display:block;height:auto!important;border:1px solid var(--line);border-radius:4px;overflow:hidden}
 .technical-content .metal-sand-content table.filtration-responsive-table tbody tr>:is(th,td){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:center;width:100%!important;height:auto!important;min-height:var(--header-min-height);padding:10px 12px;border:0;border-bottom:1px solid var(--line);text-align:center!important}
 .technical-content .metal-sand-content table.filtration-responsive-table tbody tr>:first-child{min-height:var(--header-min-height);background:var(--logo-navy);color:#fff;font-weight:700;line-height:1.4}
 .technical-content .metal-sand-content table.filtration-responsive-table tbody tr>:last-child{border-bottom:0}
 .filtration-responsive-table tbody :is(th,td)::before{content:attr(data-column-label);min-width:0;font-weight:700;line-height:1.4;text-align:left}
}

/* Product summaries and comparisons share the site's body size and blue headings. */
.product-specifications{margin:18px 0 0;border-top:1px solid var(--line);font-size:16px;line-height:1.5}
.product-specifications>div{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:center;min-height:var(--header-min-height);border-bottom:1px solid var(--line);padding:8px 12px;gap:16px}
.product-specifications>div:nth-child(even){background:var(--light)}
.product-specifications dt{margin:0;font-weight:400;text-align:left;overflow-wrap:break-word}
.product-specifications dd{margin:0;text-align:center;font-variant-numeric:tabular-nums;overflow-wrap:break-word}
.technical-content .clean-specifications thead th{text-align:center!important}
.technical-content :is(.yarn-product-grid,.roller-product-grid) :is(.yarn-specifications,.roller-specifications){border-collapse:collapse;width:100%;min-width:0;max-width:100%;table-layout:fixed}
.technical-content :is(.yarn-product-grid,.roller-product-grid) :is(.yarn-specifications,.roller-specifications) :is(th,td){border:1px solid var(--line);vertical-align:middle}
.technical-content :is(.yarn-product-grid,.roller-product-grid) :is(.yarn-specifications,.roller-specifications) th:first-child{width:58%}
.technical-content :is(.yarn-product-grid,.roller-product-grid) :is(.yarn-specifications,.roller-specifications) thead th{height:var(--header-min-height);padding:6px 8px!important;font-size:16px!important;line-height:18px!important;text-transform:none;background:var(--logo-navy);color:#fff;font-weight:700}

.technical-content :is(.yarn-product-grid,.roller-product-grid) :is(.yarn-specifications,.roller-specifications) tbody tr{background:#fff}
.technical-content :is(.yarn-product-grid,.roller-product-grid) :is(.yarn-specifications,.roller-specifications) tbody tr:nth-child(even){background:var(--light)}
.technical-content :is(.yarn-product-grid,.roller-product-grid) :is(.yarn-specifications,.roller-specifications) tbody :is(th,td){color:var(--ink)}
.technical-content table.comparison-data-table{font-size:16px;line-height:1.5}
.technical-content .comparison-data-table :is(th,td){padding:8px 12px;vertical-align:middle;font-size:16px;line-height:1.5}
.technical-content .comparison-data-table thead th{text-align:center!important;white-space:normal;background:var(--logo-navy);color:#fff}
.technical-content .comparison-data-table tbody th{text-align:left!important;font-weight:400;background:transparent}
.technical-content .comparison-data-table tbody td{text-align:center!important;font-variant-numeric:tabular-nums}

.comparison-scroll{margin:16px 0}
.comparison-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 0}
.comparison-card{min-width:0;border:1px solid var(--line);border-radius:4px;background:#fff;overflow:hidden}
.technical-content .comparison-card>.site-tile-heading,.technical-content .ceramic-material-profiles .site-tile-heading{margin:0;padding:16px 20px;background:var(--logo-navy);color:#fff;font:700 21px/1.4 Helvetica,Arial,sans-serif;text-align:center;letter-spacing:normal}
.comparison-card>p{margin:18px 20px;font-size:16px;line-height:1.65}
.material-summary-list{margin:0 22px 20px;font-size:16px;line-height:1.5}
.material-summary-list>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:16px;min-height:var(--header-min-height);padding:9px 0;border-bottom:1px solid var(--line)}
.material-summary-list dt{font-weight:600;margin:0}
.material-summary-list dd{margin:0;text-align:left}
.technical-content .ceramic-properties-table{min-width:740px;table-layout:fixed}
.technical-content .ceramic-properties-table tr>:is(th,td){width:20%}
.technical-content .ceramic-properties-table tbody td{white-space:nowrap}
.comparison-conditions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin:18px 0 var(--space-md) 0;font-size:16px;line-height:1.5}
.comparison-conditions>div{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:16px;align-items:center;border-bottom:1px solid var(--line);min-height:var(--header-min-height);padding:10px 0}
.comparison-conditions dt{font-weight:400;margin:0}
.comparison-conditions dd{margin:0;text-align:center;font-variant-numeric:tabular-nums}
.technical-content .comparison-key-value{text-align:center;margin:22px 20px}
.comparison-key-value strong{display:block;color:var(--logo-navy);font-size:28px;line-height:1.35;font-variant-numeric:tabular-nums}
.comparison-key-value span{display:block;max-width:290px;margin:7px auto 0;font-size:16px;line-height:1.5}
.heater-result-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}
.heater-result-card>h3{grid-column:1/-1}
.technical-content .heater-result-card>.comparison-key-value{min-width:0;margin:18px 12px}
.heater-result-card .comparison-key-value span{text-align:left}
.technical-content .comparison-note{font-size:16px;line-height:1.6;color:var(--ink)}
.technical-content .comparison-total-row{background:#e8f3f7!important}
.technical-content .comparison-total-row :is(th,td){font-weight:700!important}
.disc-trial-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 16px;margin:0 0 12px}
.technical-content .disc-trial-meta :is(.disc-trial-yarn,.disc-trial-dimensions){text-align:center;margin:0;font-size:16px;white-space:nowrap}
.technical-content .disc-trial-table.comparison-data-table :is(th,td){padding:8px;white-space:normal}
.technical-content .disc-trial-table.comparison-data-table tbody td{white-space:nowrap}
.clean-fancy-sheet{scroll-margin-top:120px}
.fancy-overview{margin:var(--space-md) 0 var(--space-md) 0}
.about-details{gap:24px}
.about-details>div{padding:0;border:1px solid var(--line);border-radius:4px;background:#fff;overflow:hidden}
.about-details .site-tile-heading{margin:0;padding-inline:20px;background:var(--logo-navy);color:#fff;text-align:center}
.about-details p{padding:20px}
.about-introduction{align-items:start}
.about-introduction h2{margin-top:0}
.about-introduction img{display:block}
.torqtex-render-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:var(--space-md) 0 var(--space-md) 0}
.torqtex-response{margin:var(--space-md) 0 var(--space-md) 0;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fff}
.technical-content .torqtex-response>.site-tile-heading{margin:0;padding-inline:20px;background:var(--logo-navy);color:#fff;text-align:center;font-size:21px;font-weight:700;letter-spacing:normal}
.torqtex-response-conditions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px}
.torqtex-response-conditions>div{padding:14px 18px;background:var(--light);border-radius:4px;min-width:0}
.torqtex-response-conditions dt{font-size:16px;margin:0 0 4px;color:var(--ink)}
.torqtex-response-conditions dd{font-size:21px!important;line-height:1.4;font-weight:700;margin:0;color:var(--logo-navy)}
.torqtex-response-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr);gap:24px;padding:0 24px;align-items:start}
.technical-content .torqtex-response-plot{min-width:0;margin:0;padding:0;border:0;background:#fff}
.technical-content .torqtex-response-plot figcaption{font-size:16px!important;font-weight:700;line-height:1.5;color:var(--logo-navy);margin:0;padding:0;text-align:left;background:none;border:0}
.technical-content .torqtex-response-plot img{display:block;width:100%;height:auto;max-height:none;margin:0;border:0;padding:0}
.technical-content .torqtex-response-readings table{min-width:0;width:100%;table-layout:fixed;margin:0}
.torqtex-response-readings caption{font-size:16px!important;font-weight:700;color:var(--logo-navy);text-align:left;line-height:1.5;padding:0 0 12px}
.technical-content .torqtex-response-readings :is(th,td){text-align:center;padding:9px 12px;font-size:16px;font-variant-numeric:tabular-nums}
.technical-content .torqtex-response-readings thead th{font-size:21px!important;font-weight:700;background:var(--logo-navy);color:#fff}
.technical-content .torqtex-response-note{margin:18px 24px 22px;font-size:16px;color:var(--muted);line-height:1.5}
@media(max-width:1000px){.torqtex-response-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.torqtex-response-conditions{grid-template-columns:1fr;margin:16px;gap:10px}.torqtex-response-conditions>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.torqtex-response-conditions dt{margin:0}.torqtex-response-layout{padding:0 12px;gap:18px}.technical-content .torqtex-response-note{margin:16px}}
.torqtex-render-card{min-width:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fff}
.technical-content .torqtex-render-card>.site-tile-heading{margin:0;padding-inline:18px;background:var(--logo-navy);color:#fff;text-align:center;font-size:21px;font-weight:700;letter-spacing:normal}
.torqtex-render-card .clean-image-button{padding:0;border:0;border-radius:0}
.torqtex-render-card .clean-visual{display:block;width:100%}
.technical-content .torqtex-render-card img.torqtex-render-image{display:block;width:100%;height:auto;aspect-ratio:1;max-height:none;object-fit:contain;margin:0}
@media(max-width:650px){.torqtex-render-grid{grid-template-columns:1fr}}
.about-profile>h2,.about-working-approach>h2{margin:0 0 20px;font-size:27px;font-weight:700;line-height:1.3;color:var(--logo-navy)}
.about-profile-grid{display:grid;grid-template-columns:repeat(5,minmax(max-content,1fr));gap:16px;margin:0}
.about-profile-grid>div{min-width:0;padding:20px 16px;background:var(--light);border-radius:4px}
.about-profile-grid :is(dt,dd){white-space:nowrap}
.about-profile-grid dt{margin:0 0 8px;font-size:var(--body-size);color:var(--ink)}
.about-profile-grid dd{margin:0;font-size:1.166667rem!important;font-weight:700;line-height:1.4;color:var(--logo-navy)}
.about-working-approach .about-details{margin-top:0}
.about-method-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1050px){.about-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-method-grid{grid-template-columns:1fr}}
@media(max-width:520px){.about-profile-grid{grid-template-columns:1fr;gap:12px}}
.fancy-requirement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:24px 0 0}
.fancy-requirement-card{min-width:0;display:grid;grid-row:span 5;grid-template-rows:subgrid;row-gap:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;margin-bottom:24px;background:#fff;font-size:var(--body-size);line-height:1.6}
.clean-fancy-layout>.fancy-requirement-card{grid-row:auto;grid-template-rows:auto;margin:0;align-self:start}
.technical-content .fancy-requirement-card>.site-tile-heading{margin:0;padding-inline:16px;font-size:var(--body-size);font-weight:700;letter-spacing:normal;text-align:center;background:var(--logo-navy);color:#fff}
.technical-content .fancy-requirement-card>.site-tile-heading a{display:block;color:inherit;text-decoration:none;overflow-wrap:normal}
.technical-content .fancy-requirement-card>.site-tile-heading a:hover{text-decoration:underline;text-underline-offset:3px}
.fancy-requirement-card>h3 a:focus-visible{outline-offset:2px}
.fancy-requirement-card>dl{display:grid;grid-template-columns:minmax(0,36fr) minmax(0,64fr);gap:16px;margin:0;padding:14px 20px;min-width:0;align-content:start}
.fancy-requirement-card>dl:nth-of-type(even){background:var(--light)}
.fancy-requirement-card dt{min-width:0;font-weight:700;color:var(--logo-navy);margin:0}
.fancy-requirement-card dd{min-width:0;margin:0}
.technical-content .fancy-requirement-attachments ul,main table ul{list-style:none;padding:0;margin:0}
.technical-content .fancy-requirement-attachments li,main table ul li{margin:0 0 6px;padding:0}
.technical-content .fancy-requirement-attachments li:last-child,main table ul li:last-child{margin-bottom:0}
.technical-content .fancy-requirement-attachments li{display:grid;grid-template-columns:1em minmax(0,1fr);gap:8px;align-items:start}
.requirement-tick{color:var(--logo-navy);font-weight:700}
@media(max-width:760px){.fancy-requirement-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:420px){.fancy-requirement-card>dl{padding:12px;gap:12px}}
.overview-item{display:block;margin-bottom:5px}
.overview-item:last-child{margin-bottom:0}
@media(max-width:760px){.comparison-card-grid,.comparison-conditions{grid-template-columns:1fr}.comparison-card-grid{gap:18px}.comparison-conditions>div{min-height:var(--header-min-height)}.comparison-key-value strong{font-size:26px}}
@media(max-width:550px){.product-specifications>div{padding:8px;gap:12px}.material-summary-list{margin-inline:18px}.material-summary-list>div{gap:12px}.technical-content .comparison-card>.site-tile-heading,.technical-content .ceramic-material-profiles .site-tile-heading{padding:16px 18px}}

/* Shared text roles keep technical information legible across every catalogue. */
.technical-content table tbody :is(th,td){color:var(--ink)}
.technical-content table tbody th[scope="row"]{background:transparent}
.technical-content table thead th :is(p,span,strong,b,em,small,a){color:inherit}
.technical-content table tbody :is(th,td) :is(p,span,strong,b,em,small){color:inherit}
main :is(p,dd,td) a:not(.button),main .text-link:not(.button),.twist-related-links>a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
main :is(p,dd,td) a:not(.button):hover,main .text-link:not(.button):hover,.twist-related-links>a:hover{color:var(--logo-navy)}
:is(.cta,.site-footer) :is(p,small,.footer-bottom){color:#fff}

/* Individual product titles share the compact, bold catalogue heading size. */
.technical-content :is(
 .clean-product-card>h2,.clean-product-card>h3,
 .ceramic-guide-product h3,
 .spindle-sheet-heading h3,.spindle-bearing-heading h3,
 .spindle-product-card .spindle-part-number,
 .disc-product-tile>h3
){font-size:var(--body-size)!important;font-weight:700!important;line-height:1.4;color:var(--logo-navy)}

/* Shared headers: 14pt Helvetica bold, 48px for one line, growing naturally when wrapped.
   Layered important declarations supersede legacy page-specific header rules
   without changing the established colours or text alignment. */
:root{--header-min-height:48px;--header-font-size:1.166667rem}
@layer tsp-header-standard{
main :is(.site-tile-heading,.site-header-cell),:is(a,button).button,.site-action-control{
 font-size:var(--header-font-size)!important;
 font-weight:700!important;
 line-height:1.4!important;
}
main :is(.site-tile-heading,.site-header-cell) :is(p,span,strong,b,em,i,small,a),:is(.button,.site-action-control) :is(span,strong,b,em,i,small){
 font-size:inherit!important;
 font-weight:inherit!important;
 line-height:inherit!important;
}
html body main .site-tile-heading{
 min-height:var(--header-min-height)!important;
 height:auto!important;
 max-height:none!important;
 padding-block:calc((var(--header-min-height) - 1lh)/2)!important;
 line-height:1.4!important;
 align-content:center;
}
html body main .site-tile-heading :is(span,strong,b,em,small,a){line-height:inherit!important}
html body main table.site-header-table thead tr.site-header-row{
 height:auto!important;
}
html body main table.site-header-table thead tr.site-header-row>.site-header-cell{
 height:var(--header-min-height)!important;
 padding-block:calc((var(--header-min-height) - 1lh - 1px)/2)!important;
 line-height:1.4!important;
 vertical-align:middle!important;
 white-space:normal!important;
}
html body main table.site-header-table thead .site-header-cell :is(p,span,strong,b,em,small,a){line-height:inherit!important}
html body main table.site-header-table thead .site-header-cell p{margin-block:0!important}
:is(a,button).button,.site-action-control{
 min-height:var(--header-min-height)!important;
 height:auto!important;
 padding-block:calc((var(--header-min-height) - 1lh - 2px)/2)!important;
}
}
/* The title itself supplies the height, including on the spindle cards. */
.spindle-content :is(.spindle-sheet-heading,.spindle-bearing-heading){min-height:0}

/* Machine control features use the same blue-header cards as the catalogues. */
.control-feature-section{min-width:0;margin:var(--space-md) 0 var(--space-md) 0}
.technical-content .control-feature-section>h2{margin:0 0 12px}
.control-feature-section>.control-feature-grid{margin:18px 0 0}
.control-feature-section>.control-feature-grid .filtration-card-body p:last-child{margin:0}
.product-grid.upgrade-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.product-grid.upgrade-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.product-grid.upgrade-product-grid{grid-template-columns:1fr}}

/* Keep twist values and their comparison bars in one responsive table. */
.positorq-twist-comparison{container-type:inline-size}
.positorq-comparison-wrap{max-width:100%;overflow:visible;margin:20px 0}
.technical-content table.positorq-comparison-table{width:100%;min-width:0;table-layout:fixed}
.technical-content .positorq-comparison-table tr>:nth-child(1){width:9%}
.technical-content .positorq-comparison-table tr>:nth-child(2){width:31%}
.technical-content .positorq-comparison-table tr>:nth-child(3){width:24%}
.technical-content .positorq-comparison-table tr>:nth-child(4){width:36%}
.technical-content .positorq-comparison-table :is(th,td){white-space:normal;overflow-wrap:normal;padding:12px;font-size:var(--body-size);text-align:center;vertical-align:middle}
.technical-content .positorq-comparison-table thead th{font-size:var(--section-size)!important;font-weight:700}
.technical-content .positorq-comparison-table td.twist-unit-name{text-align:left}
.technical-content .positorq-comparison-table .tsp-twist-row{background:#e9f2fb}
.technical-content .positorq-comparison-table .tsp-twist-row :is(th,td){font-weight:700;color:var(--logo-navy)}
.technical-content .positorq-comparison-table .twist-value-track{display:block;height:7px;margin:6px auto 0;border-radius:3px;background:#e4eaf0;overflow:hidden}
.technical-content .positorq-comparison-table .twist-value-track>span{display:block;height:100%;background:#d7ad28;border-radius:3px}
.technical-content .positorq-comparison-table .tsp-twist-row .twist-value-track>span{background:#0864b9}
@container (max-width:600px){
 .technical-content .positorq-comparison-table,.technical-content .positorq-comparison-table tbody{display:block}
 .technical-content .positorq-comparison-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .technical-content .positorq-comparison-table tbody tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 16px;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#fff}
 .technical-content .positorq-comparison-table tbody tr>:nth-child(n){width:auto;min-width:0;height:auto;border:0;padding:12px;text-align:center!important}
 .technical-content .positorq-comparison-table tbody tr>:nth-child(1),.technical-content .positorq-comparison-table tbody tr>:nth-child(2){display:flex;align-items:center;justify-content:center;min-height:var(--header-min-height);background:var(--logo-navy);color:#fff;font-weight:700;line-height:1.4}
 .technical-content .positorq-comparison-table tbody tr>:nth-child(1){grid-column:1;flex-direction:column;padding:8px}
 .technical-content .positorq-comparison-table tbody tr>:nth-child(2){grid-column:2 / -1;justify-content:flex-start;text-align:left!important}
 .technical-content .positorq-comparison-table tbody tr>:nth-child(3),.technical-content .positorq-comparison-table tbody tr>:nth-child(4){grid-column:span 2}
 .technical-content .positorq-comparison-table [data-label]::before{content:attr(data-label);display:block;font-size:14px;font-weight:700;line-height:1.4;margin-bottom:6px}
 .technical-content .positorq-comparison-table .tsp-twist-row>:nth-child(-n+2){background:#0864b9}
 .technical-content .positorq-comparison-table .tsp-twist-row>:nth-child(n+3){background:#e9f2fb}
}
.catalogue-search { margin: 24px 0; padding: 12px 16px; border: 1px solid var(--line); border-radius: 8px; }
.catalogue-search[hidden], .catalogue-search-results[hidden] { display: none; }
.catalogue-search label { display: block; margin-bottom: 8px; font-weight: 700; }
.catalogue-search-fields { display: flex; gap: 10px; align-items: stretch; }
.catalogue-search-fields input { min-width: 0; min-height: 44px; flex: 1; padding: 8px 12px; font: inherit; line-height: 1.4; border: 1px solid var(--line); border-radius: 4px; }
.catalogue-search-fields button { min-height: 44px; padding: 8px 16px; font: inherit; line-height: 1.4; cursor: pointer; }
.technical-content .catalogue-search-count { margin: 8px 0 0; }
.catalogue-search-results { margin-top: 12px; max-height: 420px; overflow-y: auto; }
.catalogue-search-result { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 16px; align-items: start; padding: 10px 0; border-top: 1px solid var(--line); }
.catalogue-search-result a { overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 3px; }
.part-enquiry-link { display: block; margin-top: auto; padding: 4px 0; text-align: center; font-size: 12px; line-height: 1.4; white-space: nowrap; text-decoration: underline; text-underline-offset: 3px; }
.catalogue-search-result .part-enquiry-link { padding: 0; margin: 0; white-space: nowrap; }
[data-catalogue-item] { scroll-margin-top: 120px; }
@media (max-width: 520px) { .catalogue-search { padding: 12px; } .catalogue-search-result { gap: 10px; } }

/* Detailed consultancy services, matching TSP tile typography and colours. */
.consultant-services-link{margin-top:16px;max-width:100%;white-space:normal;text-align:center}
.consultancy-document-section{margin:0 0 var(--space-md) 0}
.consultancy-document-section>h2{color:var(--logo-navy);margin:var(--space-md) 0 18px 0}
.consultancy-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
.consultancy-document-card{min-width:0;background:var(--light);border-radius:4px;overflow:hidden}
@supports(grid-template-rows:subgrid){.consultancy-document-card{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0}}
.consultancy-document-card>.site-tile-heading{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-height:var(--header-min-height);margin:0;padding:14px 18px;background:var(--logo-navy);color:#fff;font-size:var(--header-font-size);font-weight:700;line-height:1.4;text-align:center}
.consultancy-document-card>div{padding:20px 24px}
.consultancy-document-card p{margin:0 0 14px;line-height:1.65;font-size:var(--body-size,16px);color:var(--ink);overflow-wrap:break-word}
.consultancy-document-card p:last-child{margin-bottom:0}
.consultancy-document-card-wide{grid-column:1/-1}
.consultancy-document-card a{color:var(--logo-navy);text-underline-offset:3px}
@media(max-width:760px){.consultancy-document-grid{grid-template-columns:1fr}.consultancy-document-card>div{padding:18px}.consultancy-document-card-wide{grid-column:auto}}

/* TSP framed narrative panels complement the consultancy service tiles. */
.consultancy-document .consultancy-narrative{box-sizing:border-box;min-width:0;margin:0 0 24px;padding:24px;border:1px solid var(--line);border-radius:4px;background:#fff}
.consultancy-document .consultancy-narrative>h2{margin:0 0 16px;color:var(--logo-navy)}
.consultancy-document .consultancy-narrative p{max-width:none;margin:0 0 16px;font-size:var(--body-size,16px);line-height:1.65;color:var(--ink);overflow-wrap:break-word}
.consultancy-document .consultancy-narrative p:last-child{margin-bottom:0}
.consultancy-document .consultancy-narrative a:not(.button){color:var(--logo-navy);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.consultancy-document .consultancy-assignment-step{margin-top:24px}
.consultancy-document .consultancy-assignment-step h3{margin:0 0 8px;font-size:16px;line-height:1.5;color:var(--logo-navy)}
.consultancy-document .consultancy-assignment-step h3 span{display:inline-block;margin-right:10px;font-weight:700}
.consultancy-document .consultancy-narrative .button{white-space:normal;max-width:100%;text-align:center}
@media(max-width:760px){.consultancy-document .consultancy-narrative{padding:18px}}

/* Audit refinements retain the established TSP palette and typography. */
.site-catalogue-search{border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin-block:var(--space-md);scroll-margin-top:120px}
.site-catalogue-search h2{margin:0 0 8px;line-height:1.4}
.all-parts-search-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
.site-catalogue-search label{display:block;font-weight:700;margin:0;max-width:100%}
.all-parts-search-field{position:relative;flex:1 1 280px;min-width:0;max-width:100%}
.site-catalogue-search input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:8px 12px 8px 44px;font:inherit;line-height:1.4;color:inherit;border:1px solid var(--line);border-radius:4px;background:white}
.all-parts-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--logo-navy);pointer-events:none}
.all-parts-status:empty{margin:0}
.site-catalogue-search .all-parts-status:not(:empty){margin:12px 0 0}
.all-parts-result{padding:12px 0;border-top:1px solid var(--line);display:grid;gap:4px;overflow-wrap:anywhere}
.all-parts-result a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.all-parts-result span{font-size:.9em}
.all-parts-more[hidden]{display:none}
.section-jump-links{display:flex;flex-wrap:wrap;gap:10px 18px;padding:16px;border:1px solid var(--line);border-radius:6px;margin:16px 0 24px}
.section-jump-links strong{flex-basis:100%}
.section-jump-links a{text-decoration:underline;text-underline-offset:3px}
main [id]{scroll-margin-top:110px}
.machine-part-dialog .machine-part-crop{transform:none;max-width:min(100%,var(--part-native-width,100%));margin-inline:auto}
.contact-attachments input{max-width:100%;font:inherit}

/* Shared TSP benefit tiles: three across, with product-specific copy and icons. */
html body main .tsp-product-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:var(--space-md) 0 0 0;padding:0;border:0;width:100%}
html body main .tsp-benefit-card{display:flex;flex-direction:column;align-items:center;min-width:0;padding:20px 16px;border:1px solid var(--line);border-radius:8px;background:var(--light);text-align:center}
html body main .tsp-benefit-icon{display:block;flex:none;width:48px;height:48px;margin:0 0 10px;color:var(--logo-navy)}
html body main .tsp-benefit-card :is(h2,h3){display:flex;align-items:center;justify-content:center;min-height:52px;height:auto;margin:0 0 6px;padding:4px 0;width:100%;font-size:16px!important;font-weight:700;line-height:1.4;letter-spacing:normal;background:none;color:var(--logo-navy);border:0;text-align:center;overflow-wrap:normal}
html body main .tsp-benefit-card p{margin:0;padding:0;width:100%;max-width:none;font-size:var(--body-size);font-weight:400;line-height:1.6;color:var(--ink);text-align:center}
@media(max-width:760px){html body main .tsp-product-benefits{grid-template-columns:1fr}html body main .tsp-benefit-card{padding:20px}}
@layer tsp-header-standard{
 html body main .tsp-benefit-card>.site-tile-heading{font-size:1rem!important;min-height:52px!important;padding:4px 0!important;margin:0 0 6px!important}
}
@supports(grid-template-rows:subgrid){
 @media(min-width:761px){
  html body main .tsp-product-benefits{row-gap:0}
  html body main .tsp-benefit-card{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:0;justify-items:center;align-items:start}
  html body main .tsp-benefit-card>.site-tile-heading{align-self:stretch}
 }
}

/* Keep the desktop contact strip on one line, including WhatsApp. */
@media(min-width:851px){
 .topline{flex-wrap:nowrap;gap:16px;padding-left:3%;padding-right:3%}
 .topline-actions{flex-wrap:nowrap;gap:14px}
 .topline-actions .topline-right{white-space:nowrap}
 .top-contact{gap:6px}
}
@media(min-width:851px) and (max-width:1399px){
 .topline,.topline-cta{font-size:14px}
 .topline-cta{padding-left:12px;padding-right:12px}
}

/* Shared vertical rhythm: 24px between sections, 16px within text, 8–12px below titles. */
main.section,main .section{padding-block:var(--space-md)}
main .technical-content :is(h2,h3):not(.site-tile-heading){margin-block:var(--space-md) 12px}
main .technical-content :is(h2,h3):not(.site-tile-heading):first-child{margin-top:0}
main .technical-content :is(p,ul,ol):last-child{margin-bottom:0}
main :is(.filtration-card-body,.consultancy-document-card>div,.consultancy-narrative) p:not(:last-child){margin-bottom:var(--space-sm)}
main .technical-content :is(.disc-product-tile,.disc-trial-tile)>.site-tile-heading{margin:0 0 8px}
main .technical-content :is(.table-scroll,.metal-table-scroll,.disc-table-scroll,.comparison-scroll){margin-block:var(--space-sm)}
main .technical-content :is(.table-scroll,.metal-table-scroll,.disc-table-scroll,.comparison-scroll):last-child{margin-bottom:0}
main .technical-content .disc-trial-tile>.disc-table-scroll{margin-block:0}
main .twist-section+.twist-section{margin-top:var(--space-md);padding-top:0}
main .twist-parameters>div{min-height:0}

/* Body rows share the 48px header baseline. Content may grow, never clip. */
@layer tsp-header-standard{
 html body main table tbody tr{height:auto!important}
 html body main table tbody tr>:is(th,td){
  height:var(--header-min-height)!important;
  padding-block:3px!important;
  line-height:20px!important;
  vertical-align:middle!important;
 }
 html body main table tbody tr>:is(th,td) :is(p,div,span,a,strong,em,small,li){line-height:inherit!important}
 html body main .ceramic-disc-content:not(.pu-disc-content) table :is(th,td){text-align:center!important}
 /* Disc comparisons keep parameter labels left-aligned on both disc pages. */
 html body main .ceramic-disc-content table.disc-trial-table tbody tr>:first-child{text-align:left!important}
 /* Mobile table cards retain all of their labelled fields. */
 @container filtration-table (max-width:640px){
  html body main table.filtration-responsive-table tbody tr>:is(th,td){height:auto!important;min-height:var(--header-min-height);padding-block:6px!important}
 }
 @container (max-width:600px){
  html body main table.positorq-comparison-table tbody tr>:is(th,td){height:auto!important;min-height:var(--header-min-height);padding-block:6px!important}
 }
}

/* Match menus, links and section headings to the approved brand tiles.
   Main page titles retain their original responsive h1 typography. */
@layer tsp-header-standard{
 html body :is(h2,h3,h4,h5,h6,th,button,summary,[role="heading"],
  .site-tile-heading,.site-header-cell,.site-action-control,.nav-label,.eyebrow,
  .polymer-menu-label,.polymer-menu-action,.manufacturer-name,.manufacturer-action,
  .tile-link,.text-link){
  font-family:Helvetica,Arial,sans-serif!important;
  font-size:var(--header-font-size)!important;
  font-weight:700!important;
  line-height:1.4!important;
  letter-spacing:normal!important;
 }
 html body :is(h2,h3,h4,h5,h6,th,button,summary,[role="heading"],
  .site-tile-heading,.site-header-cell,.site-action-control,.nav-label,.eyebrow,
  .polymer-menu-label,.polymer-menu-action,.manufacturer-name,.manufacturer-action,
  .tile-link,.text-link) :is(span,strong,b,em,i,small){
  font-family:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:normal!important;
 }
 html body :is(h2,h3,h4,h5,h6,.site-tile-heading,.site-header-cell){
  white-space:normal!important;
  overflow-wrap:break-word;
 }
}
/* Navigation keeps the reference navy colour; long labels can wrap naturally. */
.catalogue-nav :is(a,summary),.site-header nav>a,.solutions-nav>summary{color:var(--logo-navy)}
.catalogue-nav :is(a,summary){height:auto;white-space:normal}
.site-header nav{min-width:0}
@media(min-width:1151px){
 .site-header{flex-wrap:wrap}
 .site-header nav{flex-wrap:wrap;row-gap:4px}
}
.topline-actions{min-width:0}
@media(min-width:851px) and (max-width:1199px){
 .topline{flex-wrap:wrap;row-gap:8px}
}

/* Compact table headings and navigation action labels, as approved. */
@layer tsp-header-standard{
 html body main table :is(th,.site-header-cell),
 html body main :is(.manufacturer-action,.polymer-menu-action,.tile-link,.text-link){
  font-family:Helvetica,Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:700!important;
 }
 html body main table :is(th,.site-header-cell) :is(p,span,strong,b,em,i,small,a),
 html body main :is(.manufacturer-action,.polymer-menu-action,.tile-link,.text-link) :is(span,strong,b,em,i,small,a){
  font-family:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
 }
 /* Filtration section titles retain their larger heading size. */
 html body main table.candle-component-table thead :is(th,.site-header-cell){
  font-size:var(--header-font-size)!important;
 }
 html body main .polymer-product-body .polymer-section-title{
  font-family:Helvetica,Arial,sans-serif!important;
  font-size:1.166667rem!important;
  font-weight:700!important;
 }
}

/* The complete contact strip matches the regular Helvetica location text. */
@layer tsp-header-standard{
 html body .topline,
 html body .topline :is(a,span){
  font-family:Helvetica,Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:400!important;
  line-height:1.4!important;
  letter-spacing:normal!important;
 }
}
.topline{padding-block:6px}
.topline .topline-cta{min-height:36px;padding:5px 12px}

/* Restore catalogue part captions and enquiry links to the pre-October-5 scale. */
@layer tsp-header-standard{
 html body main .machine-part-description.site-tile-heading{
  font-size:16px!important;
  font-weight:700!important;
 }
 html body main .machine-part-description.site-tile-heading :is(span,strong,b,em,i,small,a){
  font-size:inherit!important;
  font-weight:inherit!important;
 }
html body .part-enquiry-link{
  font-size:.875rem!important;
  font-weight:400!important;
  line-height:1.4!important;
 }
}

/* All friction-disc tables use compact, single-line data rows. */
@layer tsp-header-standard{
 html body main .ceramic-disc-content table tbody tr{height:32px!important}
 html body main .ceramic-disc-content table tbody tr>:is(th,td){
  height:32px!important;
  padding:4px 8px!important;
  white-space:nowrap!important;
  text-align:center!important;
 }
 html body main .ceramic-disc-content table tbody tr>[rowspan]{height:auto!important}
 html body main .ceramic-disc-content table.disc-trial-table tbody tr>:first-child{text-align:left!important}
}

/* Tables fit their panels; no scroll area or concealed columns. */
html body main .site-table-container{width:100%;min-width:0;max-width:100%;overflow:visible!important}
.site-table-layout{container:site-table / inline-size}
html body main table.site-fit-table{width:100%!important;min-width:0!important;max-width:100%!important;table-layout:fixed}
.site-cell-value{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere}
.site-spanned-repeat{display:none}
.disc-trial-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,390px),1fr))}
@layer tsp-header-standard{
 html body main .site-table-container table.site-fit-table tr>:is(th,td){
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
 }
 html body main .site-table-container table.disc-trial-table tr>:is(th,td){padding-inline:6px!important}
}
/* Dense tables become labelled records only when their panel is too narrow. */
@container site-table (max-width:720px){
 html body main table.site-table-wide{display:block;border:0}
 html body main .site-table-wide>colgroup{display:none}
 html body main .site-table-wide>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 html body main .site-table-wide>tbody{display:grid;gap:16px}
 html body main .site-table-wide>tbody>tr{display:block;border:1px solid var(--line);border-radius:4px}
 html body main .site-table-wide>tbody>tr>:is(th,td){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:center;border:0;border-bottom:1px solid var(--line)}
 html body main .site-table-wide>tbody>tr>:is(th,td)::before{content:attr(data-column-label);font-weight:700;text-align:left}
}
@container site-table (max-width:560px){
 html body main table.site-table-medium{display:block;border:0}
 html body main .site-table-medium>colgroup{display:none}
 html body main .site-table-medium>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 html body main .site-table-medium>tbody{display:grid;gap:16px}
 html body main .site-table-medium>tbody>tr{display:block;border:1px solid var(--line);border-radius:4px}
 html body main .site-table-medium>tbody>tr>:is(th,td){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:center;border:0;border-bottom:1px solid var(--line)}
 html body main .site-table-medium>tbody>tr>:is(th,td)::before{content:attr(data-column-label);font-weight:700;text-align:left}
}
@container site-table (max-width:320px){
 html body main table.site-table-compact{display:block;border:0}
 html body main .site-table-compact>colgroup{display:none}
 html body main .site-table-compact>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 html body main .site-table-compact>tbody{display:grid;gap:16px}
 html body main .site-table-compact>tbody>tr{display:block;border:1px solid var(--line);border-radius:4px}
 html body main .site-table-compact>tbody>tr>:is(th,td){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:center;border:0;border-bottom:1px solid var(--line)}
 html body main .site-table-compact>tbody>tr>:is(th,td)::before{content:attr(data-column-label);font-weight:700;text-align:left}
}
@layer tsp-header-standard{
 @container site-table (max-width:720px){
  html body main .site-table-container table.site-table-wide tbody tr{height:auto!important}
  html body main .site-table-container table.site-table-wide tbody tr>:is(th,td){width:100%!important;height:auto!important;min-height:32px;padding:6px 8px!important}
 }
 @container site-table (max-width:560px){
  html body main .site-table-container table.site-table-medium tbody tr{height:auto!important}
  html body main .site-table-container table.site-table-medium tbody tr>:is(th,td){width:100%!important;height:auto!important;min-height:32px;padding:6px 8px!important}
 }
 @container site-table (max-width:320px){
  html body main .site-table-container table.site-table-compact tbody tr{height:auto!important}
  html body main .site-table-container table.site-table-compact tbody tr>:is(th,td){width:100%!important;height:auto!important;min-height:32px;padding:6px 8px!important}
 }
}

/* October audit: text roles, readable actions and consistent focus. */
@layer tsp-header-standard{
 html body :is(h3,h4,h5,h6){font-size:1rem!important}
 html body :is(.site-header nav,.catalogue-nav) :is(a,summary){font-family:Helvetica,Arial,sans-serif!important;font-size:1.166667rem!important;font-weight:700!important;line-height:1.4!important}
 html body main :is(.polymer-section-title,h2){font-size:1.166667rem!important}
 html body .inline-text-link{font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;text-decoration:underline;text-underline-offset:.15em}
 html body .inline-text-link :is(span,strong,b,em,i,small){font-size:inherit!important}
 html body .part-enquiry-link{font-size:.75rem!important;line-height:1.5!important;display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;max-width:100%;min-height:36px;padding:7px 0;white-space:nowrap;letter-spacing:normal;text-underline-offset:3px}
 @container machine-part (max-width:134px){
  html body .machine-part-card .part-enquiry-link{font-size:clamp(.625rem,9cqw,.75rem)!important}
 }
 html body .catalogue-search-result .part-enquiry-link{padding:7px 4px;min-height:36px}
 /* Surface specifications use the same readable text as the adjoining copy. */
 html body main .ceramic-surface-grid figcaption,
 html body main .ceramic-surface-grid figcaption :is(p,strong,span,em){font-size:var(--body-size)!important;line-height:1.7!important;color:var(--ink)!important}
 html body :focus-visible{outline:3px solid var(--logo-navy)!important;outline-offset:3px!important;box-shadow:0 0 0 6px #fff!important}
}
.table-selection-note{font-size:.875rem;line-height:1.5;color:var(--muted);margin:8px 0 20px}
.cta>.button{flex:0 0 auto;align-self:center;text-align:center}
@media(max-width:760px){.cta{flex-direction:column;align-items:flex-start}.cta>.button{align-self:flex-start}}
.form-grid :is(input,textarea,select){border-color:#788b96}
.catalogue-search input,.all-parts-search-field{border-color:#788b96}
html body main .inline-text-link{color:var(--blue)}

/* Keep the former logo height at each responsive breakpoint. */
@media(max-width:900px){
 .site-header .brand{--logo-original-width:min(360px,calc(90vw - 104px))}
}
@media(max-width:520px){
 .site-header .brand{--logo-original-width:min(310px,calc(90vw - 92px))}
}
@media(min-width:1151px) and (max-width:1250px){
 .site-header{gap:12px}
 .site-header nav{gap:8px}
}

/* Text uses the full available width within its page section or card. */
html body :is(p,.service-intro,.intro-column),
html body .hero h1,
html body .comparison-key-value span{max-width:none!important}

/* Descriptive filtration columns follow their content rather than equal widths. */
@layer tsp-header-standard{
 @container filtration-table (min-width:641px){
  html body main .site-table-container table.filtration-content-table{table-layout:auto!important}
  html body main .site-table-container table.filtration-content-table tr>:is(th,td){width:auto!important;overflow-wrap:normal!important}
  html body main .site-table-container table.filtration-content-table tr>:not(:last-child){width:1%!important;white-space:nowrap!important}
 }
}

/* Roller measurements keep their labels across the top at every panel width. */
@layer tsp-header-standard{
 html body main .site-table-container table.pulley-dimension-table{table-layout:auto!important}
 html body main .site-table-container table.pulley-dimension-table tr>:is(th,td){width:auto!important;padding-inline:2px!important;text-align:center!important;overflow-wrap:normal!important}
 html body main .site-table-container table.pulley-dimension-table tbody td{font-size:.875rem!important;line-height:1.4!important;padding-block:6px!important}
 html body main .pulley-dimension-table .dimension-number{white-space:nowrap!important}
}

/* Match each heading and description across neighbouring comparison cards. */
@supports(grid-template-rows:subgrid){
 @media(min-width:681px){
  .filtration-field-grid{row-gap:0;margin-bottom:2px}
  .filtration-field-grid>.filtration-card{grid-row:span var(--filtration-field-rows);grid-template-rows:subgrid;row-gap:0;margin-bottom:22px}
  .filtration-field-grid .filtration-card-body,
  .filtration-field-grid .filtration-card-body>dl{display:contents}
  .filtration-field-grid .filtration-card-body>dl>dt{margin:16px 20px 5px;align-self:end}
  .filtration-field-grid .filtration-card-body>dl>dt:first-child{margin-top:20px}
  .filtration-field-grid .filtration-card-body>dl>dd{margin:0 20px;padding-bottom:0;align-self:start}
  .filtration-field-grid .filtration-card-body>dl>dd:last-child{padding-bottom:20px}
 }
}
