@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap");

:root {
  color-scheme: light;
  --ink: #202226;
  --muted: #73777c;
  --paper: #f6f5f2;
  --white: #fff;
  --red: #b52d3b;
  --red-dark: #992432;
  --line: #e4e2de;
  --dark: #17191c;
  --font-body: "DM Sans", "Segoe UI", sans-serif;
  --font-display: "Manrope", "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--font-body); -webkit-font-smoothing: antialiased; }
button, input { font: inherit; }
a { color: inherit; text-decoration: none; }
button { color: inherit; }
.container { width: min(1160px, calc(100% - 64px)); margin: 0 auto; }
.sr-only, .skip-link:not(:focus) { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link:focus { position: fixed; z-index: 100; top: 10px; left: 10px; padding: 12px 16px; background: #fff; color: var(--ink); }

.topline { min-height: 34px; background: #111315; color: #bfc0c1; font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.topline__inner { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.topline a { color: var(--red); transition: color .2s; }
.topline a:hover { color: #fff; }
.topline__contacts { display: flex; align-items: center; gap: 19px; }
.topline__tagline { color: var(--red) !important; font-size: 9px; letter-spacing: .025em; text-transform: none; white-space: nowrap; }
.topline__contacts a { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; color: var(--red) !important; }
.topline__contacts svg { width: 12px; height: 12px; flex: 0 0 12px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
@media (max-width: 960px) {
  .topline__tagline { display: none; }
  .topline__contacts { width: 100%; justify-content: space-between; gap: 10px; }
}
.site-header { height: 82px; position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.97); border-bottom: 1px solid rgba(20,20,20,.06); backdrop-filter: blur(12px); }
.header__inner { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 10px; min-width: 210px; }
.brand img { flex: none; }
.brand__name { position: relative; display: inline-block; color: #4a4b4d; font-family: var(--font-display); font-size: 19px; letter-spacing: -.07em; line-height: .95; white-space: nowrap; }
.brand__name strong { color: #313337; font-weight: 800; }
.brand__name > span { font-weight: 400; letter-spacing: -.055em; }
.brand__name small { display: block; margin-top: 5px; color: #58585a; font-family: Georgia, serif; font-size: 10px; font-style: italic; font-weight: 600; letter-spacing: .01em; }
.site-nav { display: flex; align-items: center; gap: 37px; color: #505257; font-size: 12px; font-weight: 600; }
.site-nav > a:not(.nav-cta) { transition: color .2s; }
.site-nav > a:not(.nav-cta):hover { color: var(--red); }
.nav-cta { padding: 13px 17px; background: var(--red); color: #fff; transition: background .2s; }
.nav-cta:hover, .button--red:hover { background: var(--red-dark); }
.nav-cta span { margin-left: 9px; }
.menu-toggle { display: none; }

.hero { position: relative; overflow: hidden; min-height: 535px; background: #191b1e; color: #fff; }
.hero::before { position: absolute; inset: 0; content: ""; background: radial-gradient(ellipse at 77% 46%, rgba(99,102,105,.23), transparent 43%), linear-gradient(112deg, #191b1e 0%, #1d1f22 56%, #16181a 100%); }
.hero__grid { position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(90deg, transparent, #000 53%, #000); }
.hero__inner { min-height: 490px; display: grid; grid-template-columns: 1fr 1.02fr; align-items: center; position: relative; z-index: 1; }
.hero__copy { padding: 57px 0 45px; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 22px; color: #d8d7d5; font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow__dash { width: 24px; height: 2px; background: var(--red); }
.eyebrow--dark { color: #77797d; }
.hero h1, .section-heading h2, .industry__copy h2, .about__copy h2, .contact__inner h2 { margin: 0; font-family: var(--font-display); font-size: clamp(38px, 4.3vw, 58px); font-weight: 600; letter-spacing: -.065em; line-height: 1.12; }
.hero h1 span { color: #d1d0ce; }
.hero__lead { max-width: 380px; margin: 20px 0 27px; color: #b7b8ba; font-size: 14px; line-height: 1.8; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 11px; }
.button { display: inline-flex; min-height: 47px; align-items: center; justify-content: center; gap: 19px; padding: 0 19px; font-size: 11px; font-weight: 700; transition: background .2s, transform .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button--red { background: var(--red); color: #fff; }
.button--outline { border: 1px solid rgba(255,255,255,.3); color: #f5f4f2; }
.button--outline:hover { background: rgba(255,255,255,.1); }
.hero__note { display: flex; align-items: center; gap: 9px; margin-top: 36px; color: #a6a7a9; font-size: 10px; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: #bd414d; box-shadow: 0 0 0 4px rgba(189,65,77,.15); }
.hero__visual { position: relative; display: flex; height: 420px; align-items: center; justify-content: center; }
.hero__visual img { position: relative; z-index: 2; width: min(100%, 570px); height: auto; filter: drop-shadow(0 26px 28px rgba(0,0,0,.4)); }
.hero__visual img.hero__photo { width: min(100%, 570px); height: 340px; border: 8px solid rgba(255,255,255,.7); object-fit: cover; filter: drop-shadow(0 16px 24px rgba(46,91,118,.18)); }
.hero__orbit { position: absolute; z-index: 1; left: 50%; top: 50%; border: 1px solid rgba(255,255,255,.11); border-radius: 50%; transform: translate(-50%,-50%); }
.hero__orbit--one { width: 350px; height: 350px; }
.hero__orbit--two { width: 450px; height: 450px; border-color: rgba(181,45,59,.42); }
.hero__serial { position: absolute; top: 39px; right: 12px; z-index: 3; color: #999a9c; font-size: 8px; letter-spacing: .17em; }
.visual-tag { position: absolute; z-index: 3; display: flex; align-items: center; gap: 8px; padding: 10px 12px; background: rgba(35,37,40,.88); border: 1px solid rgba(255,255,255,.1); color: #dad9d7; font-size: 9px; letter-spacing: .04em; }
.visual-tag i { width: 6px; height: 6px; background: var(--red); border-radius: 50%; }
.visual-tag--top { top: 85px; left: 2px; }
.visual-tag--bottom { right: -2px; bottom: 71px; }
.hero__visual-index { position: absolute; z-index: 3; right: 12px; bottom: 30px; color: #65676a; font-family: var(--font-display); font-size: 12px; letter-spacing: .14em; }
.hero__bottom { position: relative; z-index: 2; border-top: 1px solid rgba(255,255,255,.1); }
.hero__bottom-inner { display: flex; height: 44px; align-items: center; gap: 15px; color: #999a9c; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.hero__bottom-line { width: 34px; height: 1px; background: var(--red); }

.proof-strip { background: #fff; border-bottom: 1px solid var(--line); }
.proof-strip__inner { display: grid; min-height: 96px; grid-template-columns: repeat(3, 1fr) 1.1fr; align-items: center; }
.proof-strip__inner > div:not(.proof-strip__catalog) { display: flex; align-items: center; gap: 12px; }
.proof-icon { display: grid; width: 35px; height: 35px; flex: none; place-items: center; border: 1px solid #e3e1de; color: var(--red); font-family: var(--font-display); font-size: 10px; }
.proof-strip strong, .proof-strip small { display: block; }
.proof-strip strong { font-size: 11px; font-weight: 700; }
.proof-strip small { margin-top: 4px; color: #85878a; font-size: 9px; }
.proof-strip__catalog { display: flex; justify-content: flex-end; }
.proof-strip__catalog a { color: var(--red); font-size: 10px; font-weight: 700; }
.proof-strip__catalog a span { margin-left: 8px; }

.section { padding: 92px 0; }
.products-section { background: var(--paper); }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 39px; }
.section-heading .eyebrow { margin-bottom: 18px; }
.section-heading h2, .industry__copy h2, .about__copy h2 { font-size: clamp(34px, 3.8vw, 46px); }
.section-heading__aside { max-width: 335px; margin: 0 0 5px; color: #77797e; font-size: 12px; line-height: 1.8; }
.catalog-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 0 13px; border-top: 1px solid #dcdad6; border-bottom: 1px solid #dcdad6; }
.filter-list { display: flex; flex-wrap: wrap; gap: 8px; }
.filter-chip { padding: 8px 11px; border: 1px solid transparent; background: transparent; color: #6f7175; cursor: pointer; font-size: 10px; transition: all .2s; }
.filter-chip:hover { color: var(--red); }
.filter-chip.is-active { border-color: #d8d5d0; background: #fff; color: var(--ink); }
.filter-chip span { display: inline-grid; width: 17px; height: 17px; margin-left: 6px; place-items: center; border-radius: 50%; background: #f0eeeb; color: var(--red); font-size: 8px; }
.search-box { display: flex; width: 190px; height: 36px; flex: none; align-items: center; gap: 8px; padding: 0 10px; border: 1px solid #dedcd8; background: #fff; }
.search-box svg { width: 15px; height: 15px; flex: none; fill: none; stroke: #77797c; stroke-width: 1.7; }
.search-box input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--ink); font-size: 10px; }
.search-box input::placeholder { color: #929397; }
.search-box:focus-within { border-color: var(--red); box-shadow: 0 0 0 2px rgba(181,45,59,.08); }
.result-count { margin: 16px 0; color: #88898b; font-size: 9px; }
.product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.product-card { overflow: hidden; min-width: 0; background: #fff; border: 1px solid #ebe9e5; transition: transform .25s, box-shadow .25s; }
.product-card:hover { transform: translateY(-4px); box-shadow: 0 15px 35px rgba(35,33,30,.08); }
.product-card__visual { position: relative; display: grid; height: 177px; overflow: hidden; place-items: center; background: #f5f9fb; }
.product-card__visual::before { display: none; }
.product-card__visual::after { display: none; }
.product-card__visual img { position: absolute; inset: 0; z-index: 0; width: 100%; max-width: none; height: 100%; padding: 8px; object-fit: contain; mix-blend-mode: multiply; transition: transform .35s; }
.product-card:hover .product-card__visual img { transform: scale(1.03); }
.product-card__index { position: absolute; z-index: 2; top: 12px; left: 13px; color: #87898b; font-family: var(--font-display); font-size: 9px; letter-spacing: .08em; }
.product-card__type { position: absolute; z-index: 2; right: 10px; bottom: 10px; padding: 5px 7px; background: rgba(255,255,255,.82); color: #6f7073; font-size: 8px; letter-spacing: .07em; text-transform: uppercase; }
.product-card__body { padding: 17px 15px 15px; }
.product-card__series { color: var(--red); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.product-card h3 { min-height: 40px; margin: 7px 0 4px; font-family: var(--font-display); font-size: 15px; font-weight: 700; letter-spacing: -.035em; line-height: 1.3; }
.product-card__description { min-height: 48px; margin: 0; color: #797b7e; font-size: 10px; line-height: 1.65; }
.product-card__specs { display: flex; justify-content: space-between; gap: 7px; margin-top: 14px; padding-top: 11px; border-top: 1px solid #eeece9; }
.product-card__specs span { color: #8a8b8d; font-size: 8px; }
.product-card__specs strong { display: block; margin-top: 4px; color: #333539; font-size: 9px; font-weight: 700; }
.product-card__footer { display: flex; align-items: center; justify-content: space-between; margin-top: 14px; }
.product-card__footer a { color: #4e5054; font-size: 9px; font-weight: 700; }
.product-card__footer a:hover { color: var(--red); }
.product-card__footer span { display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid #e5e2de; color: var(--red); font-size: 12px; }
.product-card[hidden] { display: none; }
.empty-state { margin: 35px 0; color: var(--muted); font-size: 13px; text-align: center; }
.product-detail-section { background: #fff; }
.product-detail-layout { display: grid; grid-template-columns: .8fr 1.2fr; align-items: start; gap: 70px; }
.product-detail-card { padding: 30px; border: 1px solid var(--line); background: var(--paper); }
.product-detail-card__label { display: block; color: #77797e; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.product-detail-card__model { display: block; margin: 13px 0 20px; color: var(--red); font-family: var(--font-display); font-size: 28px; font-weight: 700; letter-spacing: -.04em; }
.product-detail-card p, .product-detail-information > p:not(.eyebrow) { color: #77797e; font-size: 12px; line-height: 1.8; }
.product-detail-card a { display: inline-block; margin-top: 16px; color: var(--red); font-size: 11px; font-weight: 700; }
.product-detail-card a span { margin-left: 5px; }
.product-detail-information h2 { margin: 0; font-family: var(--font-display); font-size: clamp(30px, 3vw, 40px); letter-spacing: -.055em; }
.product-detail-information .eyebrow { margin-bottom: 14px; }
.product-detail-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 25px 0; }
.product-detail-specs > div { padding: 16px; border: 1px solid var(--line); }
.product-detail-specs dt { color: #85878a; font-size: 10px; }
.product-detail-specs dd { margin: 8px 0 0; font-size: 14px; font-weight: 700; }
.product-detail-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 17px; }
.product-detail-related { color: #53555a; font-size: 11px; font-weight: 700; }
.product-detail-related:hover { color: var(--red); }
.page-banner__visual img.catalogue-product-image { width: min(100%,430px); height: 100%; object-fit: contain; filter: none; mix-blend-mode: multiply; }
.product-detail-not-found[hidden] { display: none; }
.product-detail-not-found h1 { margin: 0; font-family: var(--font-display); font-size: clamp(34px, 4vw, 48px); letter-spacing: -.06em; }
.product-detail-not-found p { color: #77797e; font-size: 13px; line-height: 1.8; }
.catalog-note { display: flex; align-items: center; gap: 12px; margin-top: 25px; padding: 14px 16px; background: #eeece8; }
.catalog-note__mark { display: grid; width: 19px; height: 19px; flex: none; place-items: center; border: 1px solid #b3b0aa; border-radius: 50%; color: #686a6d; font-family: Georgia, serif; font-size: 12px; font-style: italic; }
.catalog-note p { flex: 1; margin: 0; color: #77797c; font-size: 9px; line-height: 1.6; }
.catalog-note a { flex: none; color: var(--red); font-size: 9px; font-weight: 700; }
.catalog-note a span { margin-left: 6px; }

.industry-section { position: relative; overflow: hidden; padding: 82px 0; background: #1d1f22; color: #fff; }
.industry__inner { display: grid; position: relative; z-index: 1; grid-template-columns: .9fr 1.1fr; gap: 85px; align-items: center; }
.industry__copy .eyebrow { margin-bottom: 20px; }
.industry__copy h2 { font-size: clamp(32px, 3.4vw, 42px); }
.industry__copy > p:not(.eyebrow) { max-width: 360px; margin: 18px 0 22px; color: #b2b3b5; font-size: 12px; line-height: 1.8; }
.text-link { display: inline-flex; align-items: center; gap: 12px; color: #f4f2ef; font-size: 10px; font-weight: 700; }
.text-link span { color: #d75662; }
.industry__list { border-top: 1px solid rgba(255,255,255,.13); }
.industry-item { display: grid; min-height: 55px; grid-template-columns: 40px 1fr 20px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.13); color: #ecebe9; font-size: 12px; transition: padding .2s, color .2s; }
.industry-item:hover { padding: 0 8px; color: #fff; }
.industry-item__number { color: #999b9d; font-size: 9px; }
.industry-item__arrow { justify-self: end; color: #ce4855; }
.industry__deco { position: absolute; right: -172px; bottom: -264px; display: grid; width: 440px; height: 440px; place-items: center; border: 1px solid rgba(255,255,255,.06); border-radius: 50%; color: rgba(255,255,255,.035); font-family: var(--font-display); font-size: 148px; font-weight: 800; }
.industry__deco::before, .industry__deco::after { position: absolute; inset: 24px; border: 1px solid rgba(255,255,255,.04); border-radius: 50%; content: ""; }
.industry__deco::after { inset: 52px; }

.about-section { background: #fff; }
.about__inner { display: grid; grid-template-columns: .75fr 1.2fr .75fr; gap: 52px; align-items: center; }
.about__stamp { display: flex; min-height: 230px; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #e8e6e2; background: linear-gradient(150deg,#faf9f7,#f0eeeb); color: #444649; }
.about__stamp > span:not(.about__stamp-caption) { margin-top: 12px; font-family: var(--font-display); font-size: 15px; font-weight: 800; letter-spacing: -.05em; text-align: center; }
.about__stamp > span small { font-size: 12px; font-weight: 400; letter-spacing: .1em; }
.about__stamp-caption { margin-top: 23px; color: #929294; font-family: Georgia, serif; font-size: 9px; font-style: italic; }
.about__copy .eyebrow { margin-bottom: 16px; }
.about__copy > p:not(.eyebrow) { max-width: 450px; margin: 18px 0 21px; color: #76787c; font-size: 11px; line-height: 1.85; }
.text-link--dark { color: #36383b; }
.about__facts { padding-left: 25px; border-left: 1px solid #e6e4e0; }
.about__facts > div { display: flex; align-items: center; gap: 13px; margin-bottom: 19px; }
.about__facts strong { min-width: 44px; color: var(--red); font-family: var(--font-display); font-size: 28px; font-weight: 600; letter-spacing: -.08em; }
.about__facts > div span { color: #77797c; font-size: 9px; line-height: 1.55; }
.about__facts > a { display: block; margin-top: 21px; padding-top: 14px; border-top: 1px solid #e6e4e0; color: #4d4f52; font-size: 9px; font-weight: 700; }
.about__facts > a span { margin-left: 7px; color: var(--red); }

.contact-section { position: relative; overflow: hidden; padding: 76px 0; background: var(--red); color: #fff; }
.contact__inner { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 60px; }
.contact__inner .eyebrow { color: rgba(255,255,255,.78); }
.contact__inner .eyebrow__dash { background: #fff; }
.contact__inner h2 { font-size: clamp(36px, 4vw, 50px); }
.contact__action { width: 360px; }
.contact__action p { margin: 0 0 18px; color: rgba(255,255,255,.8); font-size: 11px; line-height: 1.8; }
.button--light { background: #fff; color: #343639; }
.button--light:hover { background: #f4f2ef; }
.contact__download { display: block; margin-top: 13px; color: rgba(255,255,255,.83); font-size: 9px; }
.contact__download span { margin-left: 5px; }
.contact__ring { position: absolute; z-index: -1; width: 460px; height: 460px; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; pointer-events: none; }
.contact__ring--one { right: 13%; top: -212px; }
.contact__ring--two { right: 17%; top: -177px; width: 390px; height: 390px; }

.site-footer { background: #17191b; color: #fff; }
.footer__main { display: flex; min-height: 100px; align-items: center; justify-content: space-between; gap: 20px; }
.brand--footer { min-width: 0; }
.brand--footer .brand__name, .brand--footer .brand__name strong, .brand--footer .brand__name small { color: #d1d0cd; }
.brand--footer .brand__name { font-size: 16px; }
.brand--footer .brand__name small { font-size: 8px; }
.footer__main > p { color: #8e9092; font-size: 10px; }
.footer__links { display: flex; gap: 22px; color: #c6c5c3; font-size: 9px; }
.footer__links a:hover, .footer__bottom a:hover { color: #fff; }
.footer__details { display: grid; grid-template-columns: 1fr 1.2fr .9fr; gap: 35px; padding-top: 22px; padding-bottom: 23px; border-top: 1px solid rgba(255,255,255,.1); }
.footer__details h2 { margin: 0 0 10px; color: #efeeec; font-family: var(--font-display); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.footer__office address { color: #9b9c9e; font-size: 9px; font-style: normal; line-height: 1.8; }
.footer__contact { display: flex; align-items: flex-start; flex-direction: column; gap: 7px; }
.footer__contact a { color: #b7b8ba; font-size: 9px; overflow-wrap: anywhere; }
.footer__contact a:hover { color: #fff; }
.footer__bottom { display: flex; min-height: 42px; align-items: center; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.1); color: #7e8082; font-size: 8px; }

.site-nav > .is-current:not(.nav-cta) { color: var(--red); }
.nav-cta.is-current { background: var(--red-dark); }
.hero--slider { min-height: 0; }
.hero__slide[hidden] { display: none; }
.hero__slide.is-active .hero__copy { animation: slide-copy-in .5s both; }
.hero__slide.is-active .hero__visual img { animation: slide-visual-in .65s both; }
.hero__visual img.catalogue-cover { width: min(100%, 570px); height: 340px; object-fit: cover; }
.hero__visual--range .hero__orbit--two { border-color: rgba(205,162,93,.55); }
.hero__visual--application .hero__orbit--two { border-color: rgba(110,151,157,.58); }
.slider-controls { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.slider-arrow { display: grid; width: 27px; height: 27px; place-items: center; border: 1px solid rgba(255,255,255,.2); background: transparent; color: #fff; cursor: pointer; font-size: 13px; transition: background .2s; }
.slider-arrow:hover { background: rgba(255,255,255,.12); }
.slider-toggle { font-size: 10px; }
.slider-dots { display: flex; align-items: center; gap: 5px; }
.slider-dot { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 50%; background: #747578; cursor: pointer; transition: width .2s, background .2s; }
.slider-dot.is-active { width: 20px; border-radius: 5px; background: #d34552; }
.home-products { background: #fff; }
.home-products .product-card:nth-child(n+5) { display: none; }
.home-products__action { display: flex; justify-content: center; margin-top: 30px; }
.home-why { background: #eeece8; }
.home-why__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 95px; align-items: center; }
.home-why__inner h2, .about-story h2, .about-values h2, .why-intro h2, .why-reasons h2, .why-checklist h2, .inquiry__intro h2 { margin: 0; font-family: var(--font-display); font-size: clamp(34px, 3.8vw, 46px); font-weight: 600; letter-spacing: -.065em; line-height: 1.12; }
.home-why__inner > div:first-child > p:not(.eyebrow) { max-width: 390px; margin: 18px 0; color: #77797c; font-size: 11px; line-height: 1.8; }
.home-why__steps { border-top: 1px solid #d9d6d1; }
.home-why__steps > div { display: grid; min-height: 76px; grid-template-columns: 40px 1fr; align-content: center; border-bottom: 1px solid #d9d6d1; }
.home-why__steps > div > span { grid-row: span 2; align-self: center; color: var(--red); font-size: 10px; }
.home-why__steps strong { font-size: 11px; }
.home-why__steps small { margin-top: 5px; color: #77797c; font-size: 9px; line-height: 1.5; }

.page-banner { position: relative; overflow: hidden; background: linear-gradient(115deg,#191b1e,#202226 64%,#17191c); color: #fff; }
.page-banner::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size: 54px 54px; content: ""; opacity: .35; mask-image: linear-gradient(90deg,transparent,#000); }
.page-banner__inner { position: relative; display: grid; min-height: 350px; grid-template-columns: 1.1fr .9fr; align-items: center; }
.page-banner__inner > div:first-child { padding: 43px 0; }
.page-banner__inner .eyebrow { margin-bottom: 18px; }
.page-banner h1 { margin: 0; font-family: var(--font-display); font-size: clamp(42px,5.3vw,61px); font-weight: 600; letter-spacing: -.065em; line-height: 1.08; }
.page-banner h1 span { color: #cecdca; }
.page-banner__inner > div:first-child > p:not(.eyebrow) { max-width: 475px; margin: 17px 0 0; color: #b6b7b8; font-size: 12px; line-height: 1.8; }
.page-banner__crumb { display: flex; gap: 9px; margin-top: 24px; color: #a9aaac; font-size: 9px; }
.page-banner__crumb a { color: #fff; }
.page-banner__crumb > span:nth-child(2) { color: #bc3a46; }
.page-banner__visual { position: relative; display: grid; min-height: 300px; place-items: center; }
.page-banner__visual .hero__orbit { left: 50%; top: 50%; }
.page-banner__visual .hero__orbit--one { width: 260px; height: 260px; }
.page-banner__visual .hero__orbit--two { width: 340px; height: 340px; }
.page-banner__visual img { position: relative; z-index: 2; width: min(100%,430px); filter: drop-shadow(0 20px 22px rgba(0,0,0,.35)); }
.page-banner__visual img.page-banner__photo { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; filter: none; }
.page-banner__visual.has-photo::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg,rgba(232,244,250,.12),rgba(232,244,250,.28)); content: ""; }
.page-banner--compact .page-banner__inner { min-height: 300px; }
.page-banner--compact .page-banner__visual { min-height: 260px; }
.page-banner--compact .page-banner__visual .hero__orbit--one { width: 210px; height: 210px; }
.page-banner--compact .page-banner__visual .hero__orbit--two { width: 280px; height: 280px; }
.about-page__visual { position: relative; display: flex; min-height: 278px; flex-direction: column; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.14); background: radial-gradient(circle at center,rgba(255,255,255,.07),transparent 66%); }
.about-page__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.about-page__visual::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(135deg,rgba(18,54,77,.55),rgba(48,112,148,.26)); content: ""; }
.about-page__mark, .about-page__corner { position: relative; z-index: 2; color: #fff; }
.about-page__mark > i { color: #eff8fc; }
.about-page__mark { display: flex; flex-direction: column; align-items: center; gap: 14px; }
.about-page__mark > span { font-family: var(--font-display); font-size: 22px; font-weight: 800; letter-spacing: -.05em; }
.about-page__mark > span small { font-weight: 400; letter-spacing: .07em; }
.about-page__mark > i { color: #b9b8b6; font-family: Georgia,serif; font-size: 11px; }
.about-page__corner { position: absolute; right: 14px; bottom: 13px; color: #85878a; font-size: 8px; letter-spacing: .15em; }
.about-story { background: #fff; }
.about-story__grid, .why-intro__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 95px; }
.about-story h2, .why-intro h2 { font-size: clamp(35px,4vw,48px); }
.about-story__copy p, .why-intro__grid > div:last-child > p { margin: 0 0 15px; color: #737579; font-size: 12px; line-height: 1.85; }
.about-values, .why-reasons { padding: 76px 0; background: #1d1f22; color: #fff; }
.about-values > .container > .eyebrow, .why-reasons > .container > .eyebrow { margin-bottom: 15px; }
.about-values h2, .why-reasons h2 { font-size: 39px; }
.about-values__grid { display: grid; grid-template-columns: repeat(4,1fr); margin-top: 34px; border-top: 1px solid rgba(255,255,255,.16); border-left: 1px solid rgba(255,255,255,.16); }
.about-values__grid article { min-height: 193px; padding: 20px 17px; border-right: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); }
.about-values__grid article > span { color: #d04b57; font-size: 10px; }
.about-values__grid h3 { margin: 32px 0 9px; font-family: var(--font-display); font-size: 16px; }
.about-values__grid p { margin: 0; color: #a7a8aa; font-size: 10px; line-height: 1.7; }
.about-story__grid > div:first-child .eyebrow, .why-intro__grid > div:first-child .eyebrow { margin-bottom: 17px; }
.about-story__grid > div:first-child { padding-top: 4px; }
.about-story__grid > div:first-child .eyebrow { margin-top: 0; }
.why-intro { background: #fff; }
.why-intro__grid > div:last-child > p { margin: 0 0 18px; }
.why-reasons__grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 13px; margin-top: 34px; }
.why-reasons__grid article { position: relative; min-height: 263px; padding: 20px 16px; border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.025); }
.why-number { position: absolute; top: 18px; right: 16px; color: #999a9c; font-size: 9px; }
.why-symbol { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid rgba(255,255,255,.2); color: #d45a65; font-size: 22px; }
.why-reasons__grid h3 { margin: 19px 0 9px; font-family: var(--font-display); font-size: 14px; }
.why-reasons__grid p { min-height: 67px; margin: 0; color: #adaeb0; font-size: 10px; line-height: 1.7; }
.why-reasons__grid a { display: inline-block; margin-top: 14px; color: #f0dedf; font-size: 9px; font-weight: 600; }
.why-reasons__grid a span { margin-left: 4px; color: #dc606b; }
.why-checklist { background: #eeece8; }
.why-checklist__inner { display: grid; grid-template-columns: 1fr .9fr; gap: 80px; align-items: center; }
.why-checklist__inner h2 { font-size: 39px; }
.why-checklist__inner > div:first-child > p:not(.eyebrow) { max-width: 420px; margin: 17px 0 20px; color: #74767a; font-size: 11px; line-height: 1.8; }
.checklist-card { padding: 8px 22px; background: #fff; border: 1px solid #e6e3df; }
.checklist-card > div { display: flex; min-height: 48px; align-items: center; gap: 14px; border-bottom: 1px solid #eeece9; }
.checklist-card > div span { color: var(--red); font-size: 9px; }
.checklist-card > div p { margin: 0; color: #46484b; font-size: 10px; }
.checklist-card > small { display: block; padding: 13px 0 8px; color: #85878a; font-size: 8px; line-height: 1.6; }
.family-section { background: #fff; }
.family-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; }
.family-card { position: relative; display: flex; min-height: 235px; flex-direction: column; padding: 19px 17px 15px; border: 1px solid #e6e3df; background: #fff; transition: transform .2s, box-shadow .2s, border-color .2s; }
.family-card:hover { transform: translateY(-3px); border-color: #d7c6c4; box-shadow: 0 13px 30px rgba(35,33,30,.07); }
.family-card__number { color: #85878a; font-size: 8px; line-height: 1.5; letter-spacing: .055em; }
.family-card__symbol { display: grid; width: 36px; height: 36px; margin-top: 20px; place-items: center; border: 1px solid #e7e3df; color: var(--red); font-family: var(--font-display); font-size: 19px; }
.family-card h3 { margin: 13px 0 7px; font-family: var(--font-display); font-size: 15px; letter-spacing: -.03em; }
.family-card p { flex: 1; margin: 0; color: #77797c; font-size: 9px; line-height: 1.7; }
.family-card__link { display: flex; justify-content: space-between; margin-top: 13px; padding-top: 10px; border-top: 1px solid #eeece9; color: #4e5054; font-size: 9px; font-weight: 700; }
.family-card__link b { color: var(--red); font-weight: 500; }
.application-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.application-card { min-height: 205px; padding: 19px; border: 1px solid #e6e3df; background: #fff; }
.application-card__image { display: block; width: 100%; height: 115px; margin: -19px -19px 15px; width: calc(100% + 38px); max-width: none; object-fit: cover; }
.application-card > span { color: var(--red); font-size: 8px; font-weight: 700; letter-spacing: .1em; }
.application-card h3 { margin: 16px 0 8px; font-family: var(--font-display); font-size: 15px; letter-spacing: -.025em; }
.application-card p { min-height: 57px; margin: 0; color: #77797c; font-size: 9px; line-height: 1.7; }
.application-card a { display: inline-block; margin-top: 12px; color: #4e5054; font-size: 9px; font-weight: 700; }
.application-card a b { margin-left: 5px; color: var(--red); font-weight: 500; }
.application-checks { border-top: 1px solid rgba(255,255,255,.14); }
.application-checks > div { display: flex; min-height: 49px; align-items: center; gap: 16px; border-bottom: 1px solid rgba(255,255,255,.14); color: #e5e4e2; font-size: 10px; }
.application-checks > div span { color: #d65360; font-size: 9px; }
.inquiry-section { background: #f6f5f2; }
.inquiry__layout { display: grid; grid-template-columns: .74fr 1.26fr; gap: 70px; align-items: start; }
.inquiry__intro h2 { font-size: 44px; }
.inquiry__intro > p:not(.eyebrow) { margin: 16px 0 25px; color: #77797c; font-size: 11px; line-height: 1.8; }
.inquiry__help { display: flex; align-items: flex-start; gap: 12px; padding: 15px 0; border-top: 1px solid #dfdcd7; border-bottom: 1px solid #dfdcd7; }
.inquiry__help > span:last-child { display: flex; flex-direction: column; gap: 6px; }
.inquiry__help strong { font-size: 10px; }
.inquiry__help small { color: #77797c; font-size: 9px; line-height: 1.5; }
.inquiry__help a, .inquiry__website { color: var(--red); font-size: 9px; font-weight: 700; }
.inquiry__website { display: inline-block; margin-top: 18px; }
.inquiry-form { padding: 25px; background: #fff; border: 1px solid #e7e4df; }
.inquiry-form__heading { display: flex; justify-content: space-between; margin-bottom: 21px; padding-bottom: 13px; border-bottom: 1px solid #e8e6e2; color: #797b7f; font-size: 8px; font-weight: 700; letter-spacing: .12em; }
.inquiry-form__heading > span:last-child { font-weight: 400; letter-spacing: 0; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px 13px; }
.form-field { display: flex; flex-direction: column; gap: 7px; color: #484a4e; font-size: 9px; font-weight: 600; }
.form-field > span { display: inline; color: var(--red); }
.form-field > input, .form-field > select, .form-field > textarea { width: 100%; min-height: 39px; padding: 10px 11px; border: 1px solid #dfdcd7; border-radius: 0; outline: 0; background: #fff; color: #343639; font-size: 10px; font-weight: 400; }
.form-field > textarea { min-height: 120px; resize: vertical; line-height: 1.6; }
.form-field > input:focus, .form-field > select:focus, .form-field > textarea:focus { border-color: var(--red); box-shadow: 0 0 0 2px rgba(181,45,59,.08); }
.form-field > input::placeholder, .form-field > textarea::placeholder { color: #9b9c9e; }
.form-field--full { grid-column: 1 / -1; }
.form-disclaimer { margin: 16px 0; color: #77797c; font-size: 9px; line-height: 1.7; }
.inquiry-submit { border: 0; cursor: pointer; }
.form-status { margin: 11px 0 0; color: #4a6552; font-size: 10px; line-height: 1.6; }

@keyframes slide-copy-in { from { opacity: .55; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes slide-visual-in { from { opacity: .6; transform: translateX(10px) scale(.985); } to { opacity: 1; transform: translateX(0) scale(1); } }

@media (min-width: 1440px) {
  .hero__inner { min-height: 525px; }
  .hero { min-height: 570px; }
  .hero__visual { height: 455px; }
}

@media (max-width: 1000px) {
  .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .industry__inner { gap: 45px; }
  .about__inner { grid-template-columns: .7fr 1.2fr .7fr; gap: 28px; }
  .proof-strip__inner { grid-template-columns: repeat(3, 1fr); gap: 15px; padding-top: 17px; padding-bottom: 17px; }
  .proof-strip__catalog { display: none; }
  .site-nav { gap: 20px; font-size: 10px; }
  .brand { min-width: 190px; }
  .inquiry__layout { gap: 38px; }
  .why-reasons__grid { grid-template-columns: repeat(2,1fr); }
  .family-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .application-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .footer__details { grid-template-columns: 1fr 1.2fr; gap: 20px; }
  .footer__contact { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 9px 18px; }
  .footer__contact h2 { grid-column: 1 / -1; margin-bottom: 0; }
}

@media (max-width: 720px) {
  html { scroll-padding-top: 72px; }
  .container { width: min(100% - 38px, 520px); }
  .topline { min-height: 34px; font-size: 8px; }
  .topline__inner { min-height: 34px; justify-content: center; }
  .topline__tagline, .topline__phone--second { display: none; }
  .topline__contacts { width: 100%; justify-content: space-between; gap: 10px; }
  .site-header { height: 68px; }
  .brand { gap: 7px; min-width: 0; }
  .brand img { width: 33px; height: 33px; }
  .brand__name { font-size: 16px; }
  .brand__name small { margin-top: 4px; font-size: 8px; }
  .menu-toggle { display: flex; width: 40px; height: 40px; flex-direction: column; align-items: center; justify-content: center; gap: 6px; border: 1px solid #e8e6e2; background: #fff; cursor: pointer; }
  .menu-toggle span { width: 16px; height: 1px; background: #292b2e; transition: transform .2s; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .site-nav { position: absolute; top: 67px; right: 0; left: 0; display: none; align-items: stretch; gap: 0; padding: 8px 19px 17px; border-bottom: 1px solid var(--line); background: #fff; }
  .site-nav.is-open { display: flex; flex-direction: column; }
  .site-nav > a:not(.nav-cta) { padding: 13px 3px; border-bottom: 1px solid #f0eeeb; }
  .nav-cta { margin-top: 12px; text-align: center; }
  .hero { min-height: 0; }
  .hero__inner { grid-template-columns: 1fr; }
  .hero__copy { padding: 52px 0 13px; }
  .hero h1 { font-size: clamp(39px, 9vw, 54px); }
  .hero__lead { max-width: 330px; font-size: 13px; }
  .hero__note { margin-top: 25px; }
  .hero__visual { height: min(78vw, 350px); margin: 0 -6px; }
  .hero__visual img { width: 100%; max-width: 440px; }
  .hero__visual img.hero__photo { width: 100%; height: min(62vw, 270px); }
  .hero__visual img.catalogue-cover { width: 100%; height: min(62vw, 270px); }
  .hero__orbit--one { width: 66vw; height: 66vw; max-width: 290px; max-height: 290px; }
  .hero__orbit--two { width: 82vw; height: 82vw; max-width: 360px; max-height: 360px; }
  .hero__serial { top: 22px; right: 0; }
  .visual-tag--top { top: 49px; left: 0; }
  .visual-tag--bottom { right: 0; bottom: 35px; }
  .hero__visual-index { bottom: 6px; }
  .hero__bottom-inner { height: 40px; gap: 10px; font-size: 7px; letter-spacing: .08em; }
  .proof-strip__inner { grid-template-columns: 1fr 1fr; gap: 18px 10px; padding: 18px 0; }
  .proof-strip__inner > div:not(.proof-strip__catalog) { gap: 8px; }
  .proof-icon { width: 30px; height: 30px; font-size: 8px; }
  .proof-strip strong { font-size: 9px; }
  .proof-strip small { font-size: 8px; }
  .section { padding: 65px 0; }
  .section-heading { display: block; margin-bottom: 27px; }
  .section-heading h2, .industry__copy h2, .about__copy h2 { font-size: 37px; }
  .section-heading__aside { max-width: 400px; margin-top: 16px; font-size: 11px; }
  .catalog-toolbar { align-items: stretch; flex-direction: column-reverse; gap: 12px; padding: 13px 0; }
  .search-box { width: 100%; }
  .filter-list { gap: 4px; }
  .filter-chip { padding: 7px 8px; font-size: 9px; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .product-card__visual { height: 145px; }
  .product-card__visual img { height: 120px; }
  .product-card__body { padding: 13px 11px 12px; }
  .product-card h3 { min-height: 38px; font-size: 13px; }
  .product-card__description { min-height: 54px; font-size: 9px; }
  .product-card__specs { gap: 4px; }
  .product-card__specs span { font-size: 7px; }
  .product-card__specs strong { font-size: 8px; }
  .catalog-note { align-items: flex-start; flex-wrap: wrap; padding: 12px; }
  .catalog-note p { flex-basis: calc(100% - 34px); }
  .catalog-note a { margin-left: 31px; }
  .industry-section { padding: 63px 0; }
  .industry__inner { grid-template-columns: 1fr; gap: 32px; }
  .industry__copy > p:not(.eyebrow) { max-width: 430px; }
  .industry__deco { right: -280px; bottom: -315px; }
  .about__inner { grid-template-columns: 1fr 1fr; gap: 25px 20px; }
  .about__stamp { min-height: 205px; }
  .about__copy { grid-column: 2; grid-row: 1; }
  .about__copy .eyebrow { font-size: 8px; }
  .about__copy > p:not(.eyebrow) { font-size: 10px; }
  .about__facts { display: grid; grid-column: 1 / -1; grid-template-columns: 1fr 1fr; gap: 12px; padding: 18px 0 0; border-top: 1px solid #e6e4e0; border-left: 0; }
  .about__facts > div { margin-bottom: 0; }
  .about__facts > a { grid-column: 1 / -1; margin-top: 0; }
  .contact-section { padding: 60px 0; }
  .contact__inner { align-items: flex-start; flex-direction: column; gap: 25px; }
  .contact__action { width: min(100%, 400px); }
  .contact__ring--one { right: -310px; top: -130px; }
  .contact__ring--two { right: -280px; top: -95px; }
  .footer__main { align-items: flex-start; flex-wrap: wrap; padding: 23px 0; }
  .footer__main > p { order: 3; width: 100%; margin: 0; }
  .footer__links { gap: 13px; padding-top: 6px; }
  .footer__bottom { gap: 7px; font-size: 7px; }
  .footer__details { grid-template-columns: 1fr; gap: 17px; padding-top: 18px; padding-bottom: 19px; }
  .footer__contact { grid-column: auto; grid-template-columns: 1fr; gap: 8px; }
  .footer__contact h2 { grid-column: auto; }
  .page-banner__inner { min-height: 0; grid-template-columns: 1fr; }
  .page-banner__inner > div:first-child { padding: 44px 0 8px; }
  .page-banner__visual { min-height: 245px; margin: -5px 0 8px; }
  .page-banner__visual .hero__orbit--one { width: 190px; height: 190px; }
  .page-banner__visual .hero__orbit--two { width: 255px; height: 255px; }
  .page-banner__visual img { max-width: 320px; }
  .page-banner--compact .page-banner__inner { min-height: 0; }
  .page-banner--compact .page-banner__visual { min-height: 200px; }
  .page-banner--compact .page-banner__visual .hero__orbit--one { width: 175px; height: 175px; }
  .page-banner--compact .page-banner__visual .hero__orbit--two { width: 225px; height: 225px; }
  .about-page__visual { min-height: 215px; margin-bottom: 22px; }
  .about-story__grid, .why-intro__grid, .why-checklist__inner, .inquiry__layout, .product-detail-layout { grid-template-columns: 1fr; gap: 27px; }
  .about-values, .why-reasons { padding: 61px 0; }
  .about-values__grid { grid-template-columns: repeat(2,1fr); }
  .about-values__grid article { min-height: 165px; padding: 16px 13px; }
  .about-values__grid h3 { margin-top: 23px; }
  .why-reasons__grid { grid-template-columns: repeat(2,1fr); gap: 9px; }
  .why-reasons__grid article { min-height: 255px; padding: 15px 12px; }
  .family-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .family-card { min-height: 225px; padding: 15px 12px 12px; }
  .family-card__number { font-size: 7px; }
  .application-grid { grid-template-columns: 1fr; gap: 9px; }
  .application-card { min-height: 0; padding: 16px; }
  .application-card p { min-height: 0; }
  .why-checklist__inner h2, .about-values h2, .why-reasons h2 { font-size: 35px; }
  .home-why__inner { grid-template-columns: 1fr; gap: 28px; }
  .home-why__inner h2 { font-size: 37px; }
  .inquiry__intro h2 { font-size: 38px; }
  .inquiry-form { padding: 19px 15px; }
  .footer__links { flex-wrap: wrap; }
  .slider-controls { gap: 7px; }
  .hero__bottom-inner { gap: 8px; }
}

@media (max-width: 390px) {
  .topline { letter-spacing: .015em; font-size: 7px; }
  .hero__actions { align-items: stretch; flex-direction: column; max-width: 230px; }
  .product-grid { grid-template-columns: 1fr; }
  .product-card__visual { height: 175px; }
  .product-card__visual img { height: 145px; }
  .product-card__description { min-height: 0; }
  .about__inner { grid-template-columns: 1fr; }
  .about__stamp { min-height: 180px; }
  .about__copy { grid-column: 1; grid-row: auto; }
  .about__facts { grid-column: 1; }
  .footer__links { width: 100%; }
  .about-values__grid, .why-reasons__grid { grid-template-columns: 1fr; }
  .about-values__grid article, .why-reasons__grid article { min-height: 0; }
  .why-reasons__grid p { min-height: 0; }
  .why-reasons__grid h3 { margin-top: 14px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-field--full { grid-column: 1; }
  .page-banner h1 { font-size: 42px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
  .hero__slide.is-active .hero__copy, .hero__slide.is-active .hero__visual img { animation: none; }
}

/* Flowmake's light-blue industrial theme. */
:root {
  --ink: #18354a;
  --muted: #627b8c;
  --paper: #fff;
  --red: #2582b8;
  --red-dark: #176896;
  --line: #dceaf2;
  --dark: #eef7fb;
}

body { background: #fff; color: var(--ink); }
.topline { background: #e9f5fb; color: #58788d; }
.topline a { color: #245d7e; }
.topline a:hover { color: #123e5b; }
.site-header { background: rgba(255,255,255,.98); border-bottom-color: #dceaf2; }
.brand__name, .brand__name strong { color: #1f4862; }
.brand__name small { color: #648398; }
.site-nav { color: #355b73; }
.site-nav > a:not(.nav-cta):hover, .site-nav > .is-current:not(.nav-cta) { color: var(--red); }
.nav-cta, .nav-cta.is-current, .button--red { background: var(--red); color: #fff; }
.nav-cta:hover, .button--red:hover { background: var(--red-dark); }

.hero { background: #eaf5fb; color: var(--ink); }
.hero::before { background: radial-gradient(ellipse at 77% 46%, rgba(150,204,229,.32), transparent 46%), linear-gradient(112deg, #f5fbfe 0%, #eaf5fb 58%, #deeff8 100%); }
.hero__grid { opacity: .45; background-image: linear-gradient(rgba(58,127,165,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(58,127,165,.08) 1px, transparent 1px); }
.hero .eyebrow, .page-banner .eyebrow { color: #52748a; }
.hero h1, .page-banner h1 { color: #173b54; }
.hero h1 span, .page-banner h1 span { color: #4387ad; }
.hero__lead, .page-banner__inner > div:first-child > p:not(.eyebrow) { color: #5b7588; }
.button--outline { border-color: #8fb6cc; color: #285875; }
.button--outline:hover { background: rgba(93,164,201,.12); }
.hero__note, .hero__serial, .hero__visual-index { color: #66879b; }
.status-dot { background: #398cba; box-shadow: 0 0 0 4px rgba(57,140,186,.14); }
.hero__orbit { border-color: rgba(60,133,174,.2); }
.hero__orbit--two, .hero__visual--range .hero__orbit--two, .hero__visual--application .hero__orbit--two { border-color: rgba(68,157,201,.42); }
.hero__visual img { filter: drop-shadow(0 20px 24px rgba(46,91,118,.18)); }
.visual-tag { background: rgba(255,255,255,.92); border-color: #d6e8f2; color: #315e79; box-shadow: 0 8px 22px rgba(44,91,118,.08); }
.visual-tag i { background: var(--red); }
.hero__bottom { border-top-color: #d5e7f0; }
.hero__bottom-inner { color: #648196; }
.slider-arrow { border-color: #a9c9dc; color: #285875; }
.slider-arrow:hover { background: #d6ebf6; }
.slider-dot { background: #9ab9cb; }
.slider-dot.is-active { background: var(--red); }
.hero__bottom-line { background: var(--red); }

.proof-strip { background: #fff; border-bottom-color: var(--line); }
.proof-icon { border-color: #d6e7f0; color: var(--red); }
.proof-strip small, .section-heading__aside { color: #688194; }
.proof-strip__catalog a, .text-link span { color: var(--red); }
.section, .products-section, .home-products, .about-section, .about-story, .family-section { background: #fff; }
.section-heading h2, .industry__copy h2, .about__copy h2,
.home-why__inner h2, .about-story h2, .about-values h2, .why-intro h2,
.why-reasons h2, .why-checklist h2, .inquiry__intro h2,
.product-detail-information h2 { color: #193c55; }
.eyebrow--dark { color: #628095; }
.product-card, .family-card, .application-card, .inquiry-form, .checklist-card { border-color: #dceaf2; }
.product-card__visual { background: linear-gradient(145deg, #eaf5fa, #f7fbfd 59%, #e2f0f7); }
.product-card__visual::before, .product-card__visual::after { border-color: rgba(49,119,157,.16); }
.product-card__series, .product-card__footer span, .family-card__symbol,
.family-card__link b, .application-card > span, .application-card a b { color: var(--red); }
.product-card__description, .product-card__specs span, .family-card p,
.application-card p, .product-detail-information > p:not(.eyebrow) { color: #657f91; }
.product-card__specs, .family-card__link { border-color: #e1edf3; }
.product-card__footer a, .application-card a, .product-detail-related { color: #315d77; }
.filter-chip { color: #567488; }
.filter-chip.is-active { border-color: #b9d5e5; background: #eaf5fb; color: #1e4d69; }
.filter-chip span { background: #dceef7; color: #276e98; }
.catalog-toolbar { border-color: #dceaf2; }
.search-box { border-color: #d1e3ed; }
.search-box:focus-within { border-color: var(--red); box-shadow: 0 0 0 2px rgba(37,130,184,.1); }
.catalog-note { background: #eff7fb; }
.catalog-note__mark { border-color: #a8c9dc; color: #54768d; }
.catalog-note p, .catalog-note a { color: #52758c; }
.product-detail-section { background: #fff; }
.product-detail-card { border-color: #dceaf2; background: #f1f8fc; }
.product-detail-card__label, .product-detail-specs dt { color: #668195; }
.product-detail-specs > div { border-color: #dceaf2; background: #fff; }
.product-detail-specs dd { color: #1d4058; }

.page-banner { background: linear-gradient(115deg,#f5fbfe,#e8f4fa 64%,#deeff8); color: var(--ink); }
.page-banner::before { background-image: linear-gradient(rgba(55,124,163,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(55,124,163,.07) 1px,transparent 1px); opacity: .5; }
.page-banner__crumb { color: #69869a; }
.page-banner__crumb a { color: #285d7c; }
.page-banner__crumb > span:nth-child(2) { color: var(--red); }
.page-banner__visual .hero__orbit--one { border-color: rgba(51,128,170,.16); }
.page-banner__visual .hero__orbit--two { border-color: rgba(52,143,190,.34); }
.page-banner__visual img { filter: drop-shadow(0 16px 20px rgba(46,91,118,.16)); }
.about-page__visual { border-color: #d2e6f0; background: radial-gradient(circle at center,#e3f2f9,#f5fbfe 68%); color: #285673; }
.about-page__corner, .about-page__mark > i { color: #6a899d; }
.about-values, .why-reasons { background: #eaf5fb; color: #193c55; }
.about-values > .container > .eyebrow, .why-reasons > .container > .eyebrow { color: #54778d; }
.about-values__grid { border-color: #cfe2ed; }
.about-values__grid article, .why-reasons__grid article { border-color: #cfe2ed; background: #fff; }
.about-values__grid article { border-right-color: #cfe2ed; border-bottom-color: #cfe2ed; }
.about-values__grid article > span, .why-symbol { color: var(--red); }
.about-values__grid h3, .why-reasons__grid h3 { color: #214b67; }
.about-values__grid p, .why-reasons__grid p { color: #637e90; }
.why-number { color: #6e8a9c; }
.why-symbol { border-color: #d4e6ef; }
.why-reasons__grid a { color: #315f7a; }
.why-reasons__grid a span { color: var(--red); }
.why-checklist, .home-why, .inquiry-section { background: #eff7fb; }
.home-why__steps { border-color: #d5e7f0; }
.home-why__steps > div { border-color: #d5e7f0; }
.home-why__steps > div > span { color: var(--red); }
.home-why__steps small { color: #688194; }
.checklist-card { background: #fff; }
.checklist-card > div { border-color: #e0edf3; }
.checklist-card > div span, .inquiry__help a, .inquiry__website { color: var(--red); }
.checklist-card > div p { color: #345b73; }
.checklist-card > small { color: #6b8495; }
.application-checks { border-color: #d2e5ef; }
.application-checks > div { border-color: #d2e5ef; color: #345d76; }
.application-checks > div span { color: var(--red); }

.industry-section { background: #edf7fb; color: #193c55; }
.industry-section .eyebrow { color: #52748a; }
.industry__copy > p:not(.eyebrow) { color: #627e91; }
.industry-item { border-color: #d3e6ef; color: #315b74; }
.industry-item__number { color: #7290a2; }
.industry-item__arrow { color: var(--red); }
.industry__deco { border-color: rgba(47,122,162,.1); color: rgba(47,122,162,.04); }
.industry__deco::before, .industry__deco::after { border-color: rgba(47,122,162,.08); }
.text-link { color: #285873; }

.contact-section { background: #dff0f8; color: #193c55; }
.contact__inner .eyebrow { color: #54788e; }
.contact__inner .eyebrow__dash { background: var(--red); }
.contact__inner h2 { color: #193c55; }
.contact__action p { color: #57768b; }
.button--light { background: var(--red); color: #fff; }
.button--light:hover { background: var(--red-dark); }
.contact__download { color: #426983; }
.contact__ring { border-color: rgba(49,130,173,.14); }

.site-footer { background: #f3f9fc; color: #254a63; }
.brand--footer .brand__name, .brand--footer .brand__name strong, .brand--footer .brand__name small { color: #315a73; }
.footer__main > p { color: #678194; }
.footer__links { color: #496d83; }
.footer__links a:hover, .footer__bottom a:hover { color: #1674a8; }
.footer__details { border-color: #d7e8f1; }
.footer__details h2 { color: #325a73; }
.footer__office address, .footer__contact a { color: #648093; }
.footer__contact a:hover { color: #176896; }
.footer__bottom { border-color: #d7e8f1; color: #7590a1; }
.inquiry__intro > p:not(.eyebrow), .inquiry__help small, .form-disclaimer { color: #647e90; }
.inquiry__help { border-color: #d6e7ef; }
.inquiry-form__heading { border-color: #deebf2; color: #668093; }
.form-field, .form-field > input, .form-field > select, .form-field > textarea { color: #31566e; }
.form-field > span { color: var(--red); }
.form-field > input, .form-field > select, .form-field > textarea { border-color: #d4e4ed; }
.form-field > input:focus, .form-field > select:focus, .form-field > textarea:focus { border-color: var(--red); box-shadow: 0 0 0 2px rgba(37,130,184,.1); }
.form-status { color: #35734e; }

.topline { background: #4c7eb1; color: #eaf4fb; }
.topline a { color: #fff; }
.topline a:hover { color: #dceefa; }
.header__inner { gap: 24px; }
.site-header { height: 86px; background: #fff; }
.site-nav { gap: clamp(15px, 2vw, 27px); font-size: 11px; }
.site-nav > a:not(.nav-cta) { white-space: nowrap; }
.nav-cta, .nav-cta.is-current { padding: 12px 15px; }
.nav-product-menu { position: relative; display: flex; flex: none; align-items: center; gap: 5px; }
.nav-product-menu > a { white-space: nowrap; transition: color .2s; }
.nav-product-menu > a:hover, .nav-product-menu > a.is-current { color: var(--red); }
.nav-product-menu__toggle { display: grid; width: 22px; height: 24px; place-items: center; padding: 0; border: 0; background: transparent; color: #557b96; cursor: pointer; font-size: 14px; }
.nav-product-menu__toggle:hover, .nav-product-menu__toggle[aria-expanded="true"] { color: var(--red); }
.nav-products-dropdown { position: absolute; z-index: 30; top: calc(100% + 17px); left: -16px; display: none; width: min(360px, 88vw); max-height: min(70vh, 560px); padding: 10px; border: 1px solid #dceaf2; background: #fff; box-shadow: 0 16px 40px rgba(26,62,84,.18); }
.nav-product-menu.is-open .nav-products-dropdown { display: block; }
.nav-products-dropdown__all { display: block; margin-bottom: 8px; padding: 9px 10px; background: #edf6fb; color: #245875; font-size: 11px; font-weight: 700; }
.nav-products-dropdown__all:hover { background: #deeff8; }
.nav-products-dropdown__list { display: grid; max-height: min(60vh, 480px); grid-template-columns: repeat(2, minmax(0, 1fr)); overflow-y: auto; }
.nav-products-dropdown__list a { display: flex; min-width: 0; flex-direction: column; gap: 3px; padding: 9px 10px; border-bottom: 1px solid #edf2f5; color: #34556b; font-size: 10px; line-height: 1.3; }
.nav-products-dropdown__list a:hover, .nav-products-dropdown__list a:focus-visible { background: #f3f9fc; color: var(--red); }
.nav-products-dropdown__list small { color: #7d97a8; font-size: 9px; font-weight: 600; letter-spacing: .04em; }

.footer__main { display: grid; min-height: 0; grid-template-columns: minmax(220px, .9fr) minmax(0, 1.6fr); align-items: start; gap: 10px 55px; padding: 31px 0 25px; border-top: 4px solid #4c7eb1; }
.footer__main > .brand { grid-column: 1; grid-row: 1; }
.footer__main > p { grid-column: 1; grid-row: 2; margin: 0; }
.footer__links { grid-column: 2; grid-row: 1 / span 2; display: grid; grid-template-columns: repeat(2, minmax(120px, 1fr)); gap: 13px 27px; padding-top: 2px; }
.footer__links a { width: fit-content; }
.footer__details { grid-template-columns: 1fr 1.15fr 1fr; gap: 30px; padding-top: 25px; padding-bottom: 27px; }
.footer__bottom { min-height: 45px; background: #4c7eb1; color: #eaf4fb; border: 0; }
.footer__bottom a { color: #fff; }

@media (max-width: 720px) {
  .site-nav { border-bottom-color: #dceaf2; background: #fff; }
  .site-nav > a:not(.nav-cta) { border-color: #e6f0f5; }
  .site-nav .nav-product-menu { display: grid; width: 100%; grid-template-columns: minmax(0, 1fr) 36px; gap: 0; }
  .nav-product-menu > a { padding: 13px 3px; border-bottom: 1px solid #e6f0f5; }
  .nav-product-menu__toggle { height: auto; border-bottom: 1px solid #e6f0f5; }
  .nav-products-dropdown { position: static; width: auto; max-height: none; grid-column: 1 / -1; margin: 0 0 10px; box-shadow: none; }
  .nav-products-dropdown__list { max-height: 42vh; }
  .menu-toggle { border-color: #d7e7ef; }
  .menu-toggle span { background: #285875; }
  .header__inner { gap: 12px; }
  .footer__main { grid-template-columns: 1fr; gap: 12px; }
  .footer__main > .brand, .footer__main > p, .footer__links { grid-column: 1; grid-row: auto; }
  .footer__links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; padding-top: 9px; }
  .footer__details { grid-template-columns: 1fr; gap: 19px; padding-top: 21px; padding-bottom: 22px; }
  .footer__contact { display: flex; grid-column: auto; }
  .footer__contact h2 { grid-column: auto; }
  .footer__bottom { flex-wrap: wrap; padding: 10px 0; }
}

.contact-page-section { background: #fff; }
.contact-channel-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.contact-channel-card { display: flex; min-height: 220px; flex-direction: column; align-items: flex-start; padding: 24px; border: 1px solid #dceaf2; background: #f7fbfd; }
.contact-channel-card__icon { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid #c5dfed; border-radius: 50%; background: #e9f5fb; color: #2582b8; font-size: 20px; }
.contact-channel-card h3, .contact-address-card h3 { margin: 17px 0 7px; color: #193c55; font-family: var(--font-display); font-size: 18px; letter-spacing: -.035em; }
.contact-channel-card p { min-height: 42px; margin: 0 0 13px; color: #657f91; font-size: 11px; line-height: 1.7; }
.contact-channel-card > a { margin-top: 7px; color: #2477a7; font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }
.contact-channel-card > a:hover, .contact-address-card > a:hover, .contact-website-row > a:not(.button):hover { color: #145d88; text-decoration: underline; }
.contact-address-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 25px; }
.contact-address-card { min-height: 205px; padding: 25px; border: 1px solid #dceaf2; background: #fff; }
.contact-address-card .eyebrow { margin-bottom: 0; }
.contact-address-card h3 { margin-top: 16px; }
.contact-address-card address { color: #607b8e; font-size: 12px; font-style: normal; line-height: 1.85; }
.contact-address-link { display: block; width: fit-content; }
.contact-address-link:hover address { color: var(--red); text-decoration: underline; }
.contact-address-card > a { display: inline-block; margin-top: 15px; color: #2477a7; font-size: 11px; font-weight: 700; }
.contact-address-card > a span { margin-left: 5px; }
.contact-address-card > a.contact-address-link { margin-top: 0; font-size: inherit; font-weight: inherit; }
.contact-map { display: block; width: 100%; height: 220px; margin-top: 18px; border: 0; background: #f4f1ec; }
.contact-website-row { display: flex; align-items: center; gap: 14px; margin-top: 20px; padding: 18px 20px; background: #eff7fb; }
.contact-website-row > span { color: #647e90; font-size: 11px; }
.contact-website-row > a:not(.button) { color: #2477a7; font-size: 11px; font-weight: 700; }
.contact-website-row .button { margin-left: auto; }

.whatsapp-float { position: fixed; z-index: 50; right: 24px; bottom: 24px; display: inline-flex; min-height: 54px; align-items: center; justify-content: center; gap: 9px; padding: 0 18px; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; background: #20a765; box-shadow: 0 5px 20px rgba(13,68,43,.28); color: #fff; font-size: 13px; font-weight: 700; transition: transform .2s, background .2s, box-shadow .2s; }
.whatsapp-float:hover { transform: translateY(-2px); background: #168b53; box-shadow: 0 8px 24px rgba(13,68,43,.34); }
.whatsapp-float:focus-visible { outline: 3px solid #173b54; outline-offset: 3px; }
.whatsapp-float svg { width: 26px; height: 26px; flex: none; fill: currentColor; }

@media (max-width: 720px) {
  .contact-channel-grid { grid-template-columns: 1fr; gap: 10px; }
  .contact-channel-card { min-height: 0; padding: 19px; }
  .contact-channel-card p { min-height: 0; }
  .contact-address-grid { grid-template-columns: 1fr; gap: 10px; margin-top: 15px; }
  .contact-address-card { min-height: 0; padding: 20px; }
  .contact-website-row { align-items: flex-start; flex-direction: column; gap: 9px; }
  .contact-website-row .button { margin: 5px 0 0; }
  .whatsapp-float { right: 16px; bottom: 16px; min-height: 52px; padding: 0 15px; }
}

/* Flowmake brand palette: charcoal, seal red and warm ivory. */
:root {
  --ink: #424447;
  --muted: #737477;
  --paper: #f7f6f3;
  --white: #fff;
  --red: #b52d3b;
  --red-dark: #922331;
  --line: #e5e2dd;
  --dark: #424447;
}

body { background: var(--paper); color: var(--ink); }
.topline { background: #424447; color: #e5e3df; }
.topline a { color: #fff; }
.topline a:hover { color: #f3c6ca; }
.site-header { background: rgba(255,255,255,.98); border-bottom-color: #e5e2dd; }
.brand__name, .brand__name strong { color: #424447; }
.brand__name small { color: #77777a; }
.site-nav { color: #515256; }
.site-nav > a:not(.nav-cta):hover, .site-nav > .is-current:not(.nav-cta) { color: var(--red); }
.nav-cta, .nav-cta.is-current, .button--red { background: var(--red); color: #fff; }
.nav-cta:hover, .button--red:hover { background: var(--red-dark); }
.nav-product-menu__toggle { color: #66676a; }
.nav-product-menu__toggle:hover, .nav-product-menu__toggle[aria-expanded="true"] { color: var(--red); }
.nav-products-dropdown { border-color: #e3dfda; box-shadow: 0 16px 40px rgba(49,43,41,.16); }
.nav-products-dropdown__all { background: #f7eeee; color: #78232d; }
.nav-products-dropdown__all:hover { background: #f1e0e1; }
.nav-products-dropdown__list a { border-bottom-color: #eeeae6; color: #4c4c4e; }
.nav-products-dropdown__list a:hover, .nav-products-dropdown__list a:focus-visible { background: #faf5f3; color: var(--red); }
.nav-products-dropdown__list small { color: #858184; }

.hero { background: #f3f0eb; color: #424447; }
.hero::before { background: radial-gradient(ellipse at 78% 48%, rgba(181,45,59,.10), transparent 45%), linear-gradient(112deg,#fbfaf8 0%,#f4f1ec 58%,#ebe7e1 100%); }
.hero__grid { opacity: .28; background-image: linear-gradient(rgba(66,68,71,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(66,68,71,.08) 1px,transparent 1px); }
.hero .eyebrow, .page-banner .eyebrow { color: #6e6c6b; }
.hero h1, .page-banner h1 { color: #424447; }
.hero h1 span, .page-banner h1 span { color: #b52d3b; }
.hero__lead, .page-banner__inner > div:first-child > p:not(.eyebrow) { color: #69696b; }
.button--outline { border-color: #9b9996; color: #49494b; }
.button--outline:hover { background: rgba(66,68,71,.08); }
.hero__note, .hero__serial, .hero__visual-index { color: #747477; }
.status-dot { background: var(--red); box-shadow: 0 0 0 4px rgba(181,45,59,.12); }
.hero__orbit { border-color: rgba(66,68,71,.13); }
.hero__orbit--two, .hero__visual--range .hero__orbit--two, .hero__visual--application .hero__orbit--two { border-color: rgba(181,45,59,.30); }
.hero__visual img { filter: drop-shadow(0 20px 24px rgba(49,43,41,.18)); }
.visual-tag { background: rgba(255,255,255,.94); border-color: #e2ddd7; color: #4b4b4d; box-shadow: 0 8px 22px rgba(49,43,41,.08); }
.visual-tag i, .hero__bottom-line { background: var(--red); }
.hero__bottom { border-top-color: #ddd8d1; }
.hero__bottom-inner { color: #737477; }
.slider-arrow { border-color: #c7c1ba; color: #555559; }
.slider-arrow:hover { background: #eee8e2; }
.slider-dot { background: #c4beb7; }
.slider-dot.is-active { background: var(--red); }

.proof-strip { background: #fff; border-bottom-color: var(--line); }
.proof-icon { border-color: #e5e1dc; color: var(--red); }
.proof-strip small, .section-heading__aside { color: #747477; }
.proof-strip__catalog a, .text-link span { color: var(--red); }
.section, .products-section, .home-products, .about-section, .about-story, .family-section { background: #fff; }
.section-heading h2, .industry__copy h2, .about__copy h2, .home-why__inner h2,
.about-story h2, .about-values h2, .why-intro h2, .why-reasons h2, .why-checklist h2,
.inquiry__intro h2, .product-detail-information h2 { color: #424447; }
.eyebrow--dark { color: #777477; }
.product-card, .family-card, .application-card, .inquiry-form, .checklist-card { border-color: #e5e1dc; }
.product-card__visual { background: linear-gradient(145deg,#f4f1ed,#fbfaf8 59%,#eeeae5); }
.product-card__visual::before, .product-card__visual::after { border-color: rgba(66,68,71,.12); }
.product-card__series, .product-card__footer span, .family-card__symbol, .family-card__link b,
.application-card > span, .application-card a b { color: var(--red); }
.product-card__description, .product-card__specs span, .family-card p,
.application-card p, .product-detail-information > p:not(.eyebrow) { color: #737477; }
.product-card__specs, .family-card__link { border-color: #ece8e3; }
.product-card__footer a, .application-card a, .product-detail-related { color: #4c4d50; }
.filter-chip { color: #69696c; }
.filter-chip.is-active { border-color: #d9c7c6; background: #faf1f0; color: #5a272d; }
.filter-chip span { background: #f3e7e5; color: var(--red); }
.catalog-toolbar { border-color: #e5e1dc; }
.search-box { border-color: #ddd8d1; }
.search-box:focus-within { border-color: var(--red); box-shadow: 0 0 0 2px rgba(181,45,59,.10); }
.catalog-note { background: #f4f1ec; }
.catalog-note__mark { border-color: #c7c1ba; color: #626164; }
.catalog-note p, .catalog-note a { color: #68676a; }
.product-detail-section { background: #fff; }
.product-detail-card { border-color: #e5e1dc; background: #f7f6f3; }
.product-detail-card__label, .product-detail-specs dt { color: #777477; }
.product-detail-specs > div { border-color: #e5e1dc; background: #fff; }
.product-detail-specs dd { color: #424447; }

.page-banner { background: linear-gradient(115deg,#fbfaf8,#f2efea 64%,#e9e5df); color: var(--ink); }
.page-banner::before { background-image: linear-gradient(rgba(66,68,71,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(66,68,71,.07) 1px,transparent 1px); opacity: .42; }
.page-banner__crumb { color: #777477; }
.page-banner__crumb a { color: #4c4d50; }
.page-banner__crumb > span:nth-child(2) { color: var(--red); }
.page-banner__visual .hero__orbit--one { border-color: rgba(66,68,71,.12); }
.page-banner__visual .hero__orbit--two { border-color: rgba(181,45,59,.25); }
.page-banner__visual img { filter: drop-shadow(0 16px 20px rgba(49,43,41,.15)); }
.page-banner__visual img.catalogue-product-image { mix-blend-mode: multiply; }
.about-page__visual { border-color: #ded9d2; background: radial-gradient(circle at center,#f0ece6,#faf9f7 68%); color: #424447; }
.about-page__corner, .about-page__mark > i { color: #68676a; }
.about-page__visual::before { background: linear-gradient(135deg,rgba(66,68,71,.62),rgba(181,45,59,.26)); }
.about-values, .why-reasons { background: #424447; color: #fff; }
.about-values > .container > .eyebrow, .why-reasons > .container > .eyebrow { color: #dfd9d5; }
.about-values__grid { border-color: rgba(255,255,255,.16); }
.about-values__grid article, .why-reasons__grid article { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.035); }
.about-values__grid article > span, .why-symbol { color: #dc6570; }
.about-values__grid h3, .why-reasons__grid h3 { color: #fff; }
.about-values__grid p, .why-reasons__grid p { color: #d0cdca; }
.why-number { color: #c2bfc0; }
.why-symbol { border-color: rgba(255,255,255,.22); }
.why-reasons__grid a { color: #f4dadd; }
.why-reasons__grid a span { color: #e26a75; }
.why-checklist, .home-why, .inquiry-section { background: #f4f1ec; }
.home-why__steps, .home-why__steps > div { border-color: #ded9d2; }
.home-why__steps > div > span { color: var(--red); }
.home-why__steps small { color: #747477; }
.checklist-card { background: #fff; }
.checklist-card > div { border-color: #ece8e3; }
.checklist-card > div span, .inquiry__help a, .inquiry__website { color: var(--red); }
.checklist-card > div p { color: #515256; }
.checklist-card > small { color: #777477; }
.application-checks, .application-checks > div { border-color: #e5e1dc; }
.application-checks > div { color: #515256; }
.application-checks > div span { color: var(--red); }

.industry-section { background: #f1eee9; color: #424447; }
.industry-section .eyebrow { color: #706d6b; }
.industry__copy > p:not(.eyebrow) { color: #6e6c6b; }
.industry-item { border-color: #ded9d2; color: #4c4d50; }
.industry-item__number { color: #858184; }
.industry-item__arrow { color: var(--red); }
.industry__deco { border-color: rgba(66,68,71,.10); color: rgba(66,68,71,.04); }
.industry__deco::before, .industry__deco::after { border-color: rgba(66,68,71,.08); }
.text-link { color: #4c4d50; }
.contact-section { background: #424447; color: #fff; }
.contact__inner .eyebrow { color: #ded9d5; }
.contact__inner .eyebrow__dash { background: #d34c59; }
.contact__inner h2 { color: #fff; }
.contact__action p { color: #d0cdca; }
.button--light { background: var(--red); color: #fff; }
.button--light:hover { background: var(--red-dark); }
.contact__download { color: #e3ded9; }
.contact__ring { border-color: rgba(255,255,255,.12); }

.site-footer { background: #424447; color: #f7f6f3; }
.brand--footer .brand__name, .brand--footer .brand__name strong { color: #fff; }
.brand--footer .brand__name small { color: #d0cdca; }
.footer__main { border-top-color: var(--red); }
.footer__main > p { color: #d0cdca; }
.footer__links { color: #e2ded9; }
.footer__links a:hover, .footer__bottom a:hover, .footer__contact a:hover { color: #f28d95; }
.footer__details, .footer__bottom { border-color: rgba(255,255,255,.18); }
.footer__details h2 { color: #fff; }
.footer__office address, .footer__contact a { color: #d0cdca; }
.footer__bottom { background: #383a3d; color: #d0cdca; }
.footer__bottom a { color: #fff; }
.inquiry__intro > p:not(.eyebrow), .inquiry__help small, .form-disclaimer { color: #737477; }
.inquiry__help { border-color: #e5e1dc; }
.inquiry-form__heading { border-color: #ece8e3; color: #777477; }
.form-field, .form-field > input, .form-field > select, .form-field > textarea { color: #424447; }
.form-field > span { color: var(--red); }
.form-field > input, .form-field > select, .form-field > textarea { border-color: #d8d3cc; }
.form-field > input:focus, .form-field > select:focus, .form-field > textarea:focus { border-color: var(--red); box-shadow: 0 0 0 2px rgba(181,45,59,.10); }
.form-status { color: #35734e; }

.header__inner { gap: 24px; }
.site-header { height: 86px; }
.site-nav { gap: clamp(15px, 2vw, 27px); font-size: 11px; }
.site-nav > a:not(.nav-cta) { white-space: nowrap; }
.nav-cta, .nav-cta.is-current { padding: 12px 15px; }
.nav-product-menu { position: relative; display: flex; flex: none; align-items: center; gap: 5px; }
.nav-product-menu > a { white-space: nowrap; transition: color .2s; }
.nav-product-menu > a:hover, .nav-product-menu > a.is-current { color: var(--red); }
.nav-product-menu__toggle { display: grid; width: 22px; height: 24px; place-items: center; padding: 0; border: 0; background: transparent; cursor: pointer; font-size: 14px; }
.nav-products-dropdown { position: absolute; z-index: 30; top: calc(100% + 17px); left: -16px; display: none; width: min(360px, 88vw); max-height: min(70vh, 560px); padding: 10px; background: #fff; }
.nav-product-menu.is-open .nav-products-dropdown { display: block; }
.nav-products-dropdown__all { display: block; margin-bottom: 8px; padding: 9px 10px; font-size: 11px; font-weight: 700; }
.nav-products-dropdown__list { display: grid; max-height: min(60vh, 480px); grid-template-columns: repeat(2,minmax(0,1fr)); overflow-y: auto; }
.nav-products-dropdown__list a { display: flex; min-width: 0; flex-direction: column; gap: 3px; padding: 9px 10px; font-size: 10px; line-height: 1.3; }
.nav-products-dropdown__list small { font-size: 9px; font-weight: 600; letter-spacing: .04em; }
.footer__main { display: grid; min-height: 0; grid-template-columns: minmax(220px,.9fr) minmax(0,1.6fr); align-items: start; gap: 10px 55px; padding: 31px 0 25px; }
.footer__main > .brand { grid-column: 1; grid-row: 1; }
.footer__main > p { grid-column: 1; grid-row: 2; margin: 0; }
.footer__links { grid-column: 2; grid-row: 1 / span 2; display: grid; grid-template-columns: repeat(2,minmax(120px,1fr)); gap: 13px 27px; padding-top: 2px; }
.footer__links a { width: fit-content; }
.footer__details { grid-template-columns: 1fr 1.15fr 1fr; gap: 30px; padding-top: 25px; padding-bottom: 27px; }
.footer__bottom { min-height: 45px; border: 0; }

.contact-page-section { background: #fff; }
.contact-channel-card { border-color: #e5e1dc; background: #f8f7f4; }
.contact-channel-card__icon { border-color: #e3d5d3; background: #f5e9e7; color: var(--red); }
.contact-channel-card h3, .contact-address-card h3 { color: #424447; }
.contact-channel-card p { color: #737477; }
.contact-channel-card > a, .contact-address-card > a, .contact-website-row > a:not(.button) { color: var(--red); }
.contact-address-card { border-color: #e5e1dc; background: #fff; }

/* Shared light palette for readable content sections and catalogue cards. */
:root {
  --ink: #424447;
  --muted: #686b70;
  --paper: #f7f6f3;
  --white: #ffffff;
  --red: #b52d3b;
  --red-dark: #922331;
  --line: #e5e2dd;
  --dark: #424447;
}

body,
body * { color-scheme: light; }
body {
  background: var(--paper);
  color: var(--ink);
}

.topline,
.about-values,
.why-reasons,
.industry-section,
.contact-section,
.contact-page-section,
.inquiry-section,
.section,
.products-section,
.about-section,
.about-story,
.family-section,
.applications-section {
  background-color: var(--paper);
  color: var(--ink);
}

.topline {
  background: #eeece8;
  border-bottom: 1px solid var(--line);
}

.topline,
.topline a,
.topline__contacts { color: #515256; }

.site-header,
.product-card,
.family-card,
.application-card,
.contact-channel-card,
.contact-address-card,
.inquiry-form,
.checklist-card,
.about-values__grid article,
.why-reasons__grid article,
.contact-item,
.product-detail-card {
  background: #fff !important;
  border-color: #e5e2dd !important;
  color: var(--ink) !important;
  box-shadow: 0 8px 22px rgba(49,43,41,0.07);
}

.page-banner {
  background: linear-gradient(115deg,#fbfaf8,#f2efea 64%,#e9e5df) !important;
  color: var(--ink);
}

.page-banner::before {
  background-image: linear-gradient(rgba(181,45,59,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(181,45,59,0.04) 1px, transparent 1px) !important;
}

.nav-cta,
.button--red,
.button--light,
.btn--primary,
.floating-cta,
.product-card__link::after,
.contact-cta .btn,
.inquiry-submit,
.inquiry-form button {
  background: var(--red) !important;
  color: #fff !important;
  border-color: var(--red) !important;
}

.nav-cta:hover,
.button--red:hover,
.button--light:hover,
.btn--primary:hover,
.floating-cta:hover,
.product-card:hover .product-card__link::after,
.inquiry-submit:hover {
  background: var(--red-dark) !important;
}

.product-card__link,
.application-card a,
.contact-channel-card a,
.contact-address-card a,
.contact__download,
.text-link,
.inquiry__help a,
.inquiry__website {
  color: var(--red-dark) !important;
}

.product-card__link::before,
.application-card a::before,
.contact-channel-card a::before,
.contact-address-card a::before {
  background: var(--red);
}

.product-card__visual,
.product-card__image,
.application-card__image,
.family-card__symbol,
.why-symbol,
.proof-icon,
.contact-item__icon,
.contact-channel-card__icon {
  background: #f4f1ec !important;
  border-color: #e5e2dd !important;
}

.product-card h3,
.family-card h3,
.application-card h3,
.about-values__grid h3,
.why-reasons__grid h3,
.contact-channel-card h3,
.contact-address-card h3,
.form-field,
.form-field > input,
.form-field > select,
.form-field > textarea,
.inquiry-form label {
  color: var(--ink) !important;
}

.product-card__description,
.product-card__specs span,
.family-card p,
.application-card p,
.about-values__grid p,
.why-reasons__grid p,
.contact-channel-card p,
.contact-item__text,
.contact-address-card address,
.section-subtitle,
.result-count,
.inquiry__intro > p:not(.eyebrow),
.inquiry__help small,
.form-disclaimer,
.contact__action p {
  color: #62656a !important;
}

.product-card__visual {
  min-height: 260px;
  background: #fff !important;
}

.product-card__visual img {
  padding: 20px;
  mix-blend-mode: normal !important;
}

.product-card h3 {
  font-size: 19px;
  line-height: 1.35;
}

.product-card__series { font-size: 11px; }
.product-card__description { font-size: 14px !important; line-height: 1.7; }
.product-card__specs span { font-size: 11px; }
.product-card__specs strong { color: #34363a; font-size: 12px; }
.result-count { font-size: 13px; }
.section-heading__aside { color: #62656a; }
.page-banner--photo .page-banner__visual img { mix-blend-mode: normal; }

.eyebrow__dash,
.why-number,
.section-title::after,
.hero__bottom-line,
.contact__inner .eyebrow__dash,
.about-values__grid article > span,
.why-symbol,
.application-checks > div span,
.contact-item__icon,
.contact-channel-card__icon {
  color: var(--red) !important;
}

@media (max-width: 768px) {
  .floating-cta {
    background: var(--red) !important;
  }
}

.contact-address-card address { color: #69696b; }
.contact-website-row { background: #f4f1ec; }
.contact-website-row > span { color: #737477; }
.whatsapp-float:focus-visible { outline-color: var(--red); }

.product-card__visual--zoomable::after { position: absolute; z-index: 3; top: 11px; right: 12px; display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid rgba(66,68,71,.14); border-radius: 50%; background: rgba(255,255,255,.92); color: var(--red); content: "+"; font-size: 18px; line-height: 1; pointer-events: none; }
.zoomable-product-image { cursor: zoom-in; }
.zoomable-product-image:focus-visible { outline: 3px solid var(--red); outline-offset: -4px; }
.product-image-dialog { position: fixed; width: min(1100px,94vw); max-width: none; max-height: 96vh; padding: 58px 24px 20px; overflow: visible; border: 1px solid rgba(255,255,255,.2); background: #424447; color: #fff; box-shadow: 0 24px 80px rgba(0,0,0,.38); }
.product-image-dialog[open] { display: grid; justify-items: center; gap: 12px; }
.product-image-dialog::backdrop { background: rgba(22,23,25,.82); backdrop-filter: blur(4px); }
.product-image-dialog > img { display: block; width: 100%; max-width: 100%; height: min(78vh,760px); object-fit: contain; background: #f7f6f3; }
.product-image-dialog__close { position: absolute; top: 10px; right: 12px; display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; background: transparent; color: #fff; cursor: pointer; font-size: 28px; line-height: 1; }
.product-image-dialog__close:hover { background: rgba(255,255,255,.14); }
.product-image-dialog__close:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.product-image-dialog__caption { max-width: 100%; margin: 0; color: #ece9e5; font-size: 12px; line-height: 1.5; text-align: center; }

@media (max-width: 720px) {
  .site-nav { border-bottom-color: #e5e1dc; background: #fff; }
  .site-nav > a:not(.nav-cta) { border-color: #eeeae6; }
  .site-nav .nav-product-menu { display: grid; width: 100%; grid-template-columns: minmax(0,1fr) 36px; gap: 0; }
  .nav-product-menu > a { padding: 13px 3px; border-bottom: 1px solid #eeeae6; }
  .nav-product-menu__toggle { height: auto; border-bottom: 1px solid #eeeae6; }
  .nav-products-dropdown { position: static; width: auto; max-height: none; grid-column: 1 / -1; margin: 0 0 10px; box-shadow: none; }
  .nav-products-dropdown__list { max-height: 42vh; }
  .menu-toggle { border-color: #d8d3cc; }
  .menu-toggle span { background: #424447; }
  .header__inner { gap: 12px; }
  .footer__main { grid-template-columns: 1fr; gap: 12px; }
  .footer__main > .brand, .footer__main > p, .footer__links { grid-column: 1; grid-row: auto; }
  .footer__links { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 18px; padding-top: 9px; }
  .footer__details { grid-template-columns: 1fr; gap: 19px; padding-top: 21px; padding-bottom: 22px; }
  .footer__contact { display: flex; grid-column: auto; }
  .footer__contact h2 { grid-column: auto; }
  .footer__bottom { flex-wrap: wrap; padding: 10px 0; }
  .contact-channel-grid { grid-template-columns: 1fr; gap: 10px; }
  .contact-channel-card { min-height: 0; padding: 19px; }
  .contact-channel-card p { min-height: 0; }
  .contact-address-grid { grid-template-columns: 1fr; gap: 10px; margin-top: 15px; }
  .contact-address-card { min-height: 0; padding: 20px; }
  .contact-website-row { align-items: flex-start; flex-direction: column; gap: 9px; }
  .contact-website-row .button { margin: 5px 0 0; }
  .whatsapp-float { right: 16px; bottom: 16px; min-height: 52px; padding: 0 15px; }
  .product-image-dialog { width: 96vw; padding: 54px 12px 15px; }
  .product-image-dialog > img { max-height: 78vh; }
}

.hero--slider > video.hero-background-video {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: none;
  width: 100%;
  height: 100%;
  border: 0;
  background: #424447;
  object-fit: cover;
}
.hero--slider > video.hero-background-video.is-active { display: block; }
.hero--slider .hero__slide { position: relative; z-index: 1; }
.hero--slider .hero__slide::before {
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(90deg,rgba(18,20,22,.88),rgba(18,20,22,.58) 52%,rgba(18,20,22,.3)),linear-gradient(0deg,rgba(18,20,22,.62),transparent 26%);
  content: "";
  pointer-events: none;
}
.hero--slider .hero__inner { z-index: 2; }
.hero--slider .hero__visual { isolation: isolate; }
.hero--slider .hero__visual--machine { position: static; height: 0; }
.hero--slider .hero__copy { position: relative; z-index: 3; }
.hero--slider .hero__visual img { position: relative; z-index: 2; }
.hero--slider .hero__visual img.hero-seal-parts { width: min(100%,470px); height: 330px; padding: 12px; border: 1px solid rgba(255,255,255,.78); background: #fff; object-fit: contain; box-shadow: 0 18px 34px rgba(0,0,0,.24); }
.hero--slider .hero__copy .eyebrow,
.hero--slider .hero__copy .hero__lead,
.hero--slider .hero__copy .hero__note { color: #f1efed; }
.hero--slider .hero__copy h1 { color: #fff; }
.hero--slider .hero__copy h1 span { color: #e3deda; }
.hero--slider .hero__copy .button--outline { border-color: rgba(255,255,255,.65); color: #fff; }
.hero--slider .hero__bottom { border-top-color: rgba(255,255,255,.24); }
.hero--slider .hero__bottom-inner { color: rgba(255,255,255,.78); }
.hero--slider .slider-arrow { border-color: rgba(255,255,255,.45); color: #fff; }
.hero--slider .slider-dot { background: rgba(255,255,255,.55); }
.hero--slider .slider-dot.is-active { background: var(--red); }
.hero--slider .slider-arrow:hover { background: rgba(255,255,255,.14); }
.hero-machine-credit { position: absolute; right: max(19px,calc((100vw - 1160px)/2)); bottom: 52px; z-index: 3; padding: 8px 10px; background: rgba(20,22,24,.72); color: #fff; font-size: 8px; font-weight: 700; letter-spacing: .1em; }
.hero--slider .hero__visual--machine .hero__orbit,
.hero--slider .hero__visual--machine .hero__serial,
.hero--slider .hero__visual--machine .visual-tag,
.hero--slider .hero__visual--machine .hero__visual-index { display: none; }

@media (max-width: 720px) {
  .hero--slider .hero__visual img.hero-seal-parts { height: min(68vw,300px); }
  .hero-machine-credit { right: 10px; bottom: 46px; }
}

.nav-toggle { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }

/* Shared industrial palette: charcoal surfaces, white copy, and red borders. */
:root {
  color-scheme: dark;
  --ink: #ffffff;
  --muted: #d0d0d0;
  --paper: #424447;
  --white: #ffffff;
  --red: #b52d3b;
  --red-dark: #922331;
  --line: #b52d3b;
  --dark: #424447;
}

html,
body {
  color-scheme: dark;
}

body {
  background: #424447 !important;
  color: #ffffff !important;
}

body :is(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, address, small, strong, blockquote) {
  color: #ffffff !important;
}

.topline,
.site-header,
.site-header .site-nav,
.nav-products-dropdown,
.page-banner:not(.page-banner--photo),
.topline {
  background-color: #424447 !important;
  color: #ffffff !important;
}

.topline {
  border-bottom: 1px solid #b52d3b !important;
}

.site-header {
  border-bottom: 1px solid #b52d3b !important;
}

.site-header .brand__name,
.site-header .brand__name strong,
.site-header .brand__name > span,
.site-header .brand__name small,
.site-header .site-nav > a:not(.nav-cta),
.topline,
.topline a,
.topline__contacts {
  color: #ffffff !important;
}

.site-header .site-nav > a:not(.nav-cta):hover,
.site-header .site-nav > a:not(.nav-cta).is-current,
.footer__links a:hover,
.footer__contact a:hover {
  color: #f07179 !important;
}

.site-header .nav-menu-toggle {
  border-color: #b52d3b !important;
  color: #ffffff !important;
}

.site-header .nav-menu-toggle > span:first-child::before,
.site-header .menu-toggle span {
  color: #ffffff !important;
  background-color: #ffffff;
}

.about-values,
.why-reasons,
.industry-section,
.contact-section,
.contact-page-section,
.inquiry-section,
.section,
.products-section,
.about-section,
.about-story,
.family-section,
.applications-section,
.about-section,
.products-section,
.why-choose-section,
.performance-section,
.industries-section {
  background-color: #424447 !important;
  color: #ffffff !important;
  border-color: #b52d3b;
}

.page-banner:not(.page-banner--photo) {
  background-image: linear-gradient(115deg, #424447, #35373a 64%, #2b2d30) !important;
}

.page-banner,
.page-banner h1,
.page-banner h1 span,
.page-banner__inner > div:first-child > p:not(.eyebrow),
.page-banner .eyebrow {
  color: #ffffff !important;
}

.site-header,
.product-card,
.family-card,
.application-card,
.contact-channel-card,
.contact-address-card,
.inquiry-form,
.checklist-card,
.about-values__grid article,
.why-reasons__grid article,
.contact-item,
.product-detail-card,
.stat-card,
.feature-card,
.spec-card,
.contact-channel-card,
.about-values__grid article,
.why-reasons__grid article {
  background-color: #202226 !important;
  border: 1px solid #b52d3b !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
}

.site-header {
  background-color: rgba(66, 68, 71, .98) !important;
}

.product-card h3,
.product-card__title,
.family-card h3,
.application-card h3,
.about-values__grid h3,
.why-reasons__grid h3,
.contact-channel-card h3,
.contact-address-card h3,
.product-card__description,
.product-card__specs span,
.family-card p,
.application-card p,
.about-values__grid p,
.why-reasons__grid p,
.contact-channel-card p,
.contact-item__text,
.contact-address-card address,
.section-subtitle,
.section-heading__aside,
.result-count,
.inquiry__intro > p:not(.eyebrow),
.inquiry__help small,
.form-disclaimer,
.contact__action p,
.contact-website-row > span,
.contact-channel-card__icon,
.contact-address-card > a,
.contact-channel-card > a {
  color: #ffffff !important;
}

.product-card__series,
.product-card__link,
.application-card a,
.contact__download,
.text-link,
.inquiry__help a,
.inquiry__website,
.eyebrow__dash,
.why-number,
.about-values__grid article > span {
  color: #f07179 !important;
}

.product-card__visual,
.product-card__image,
.application-card__image,
.family-card__symbol,
.why-symbol,
.proof-icon,
.contact-item__icon,
.contact-channel-card__icon {
  border-color: #b52d3b !important;
}

.product-card__visual,
.product-card__image,
.application-card__image {
  background: #ffffff !important;
}

.product-card__visual img,
.product-card__image img {
  mix-blend-mode: normal !important;
}

.family-card__symbol,
.why-symbol,
.proof-icon,
.contact-item__icon,
.contact-channel-card__icon {
  background: #343639 !important;
}

.contact-channel-card h3,
.contact-address-card h3,
.form-field,
.form-field > input,
.form-field > select,
.form-field > textarea,
.inquiry-form label {
  color: #ffffff !important;
}

.form-field > input,
.form-field > select,
.form-field > textarea,
.contact-website-row {
  border: 1px solid #b52d3b !important;
  background: #202226 !important;
  color: #ffffff !important;
}

.form-field > input::placeholder,
.form-field > textarea::placeholder {
  color: #c7c7c7 !important;
}

.form-field > select option {
  background: #202226;
  color: #ffffff;
}

.industry-tag {
  border-color: #b52d3b !important;
  background: #202226 !important;
  color: #ffffff !important;
}

.site-nav {
  border-color: #b52d3b !important;
}

@media (max-width: 720px) {
  .site-nav,
  .site-header .site-nav {
    background: #35373a !important;
  }

  .site-nav > a:not(.nav-cta),
  .site-nav .nav-product-menu > a,
  .site-nav .nav-product-menu__toggle {
    border-color: rgba(181, 45, 59, .65) !important;
    color: #ffffff !important;
  }

  .menu-toggle {
    border-color: #b52d3b !important;
  }

  .menu-toggle span {
    background: #ffffff !important;
  }

  .nav-products-dropdown {
    background: #202226 !important;
  }

  .nav-products-dropdown__list a,
  .nav-products-dropdown__list small {
    color: #ffffff !important;
  }
}
.nav-menu-toggle { display: none; }
.nav-product-menu { position: relative; }
.nav-product-menu__summary { display: flex; align-items: center; gap: 6px; padding: 8px 0; cursor: pointer; list-style: none; }
.nav-product-menu__summary > a { color: inherit; text-decoration: none; }
.nav-product-menu__summary::-webkit-details-marker { display: none; }
.nav-product-menu__summary::after { content: "+"; color: var(--red); }
.nav-product-menu__summary span { display: none; }
.nav-product-menu[open] .nav-product-menu__summary::after { content: "-"; }
.nav-products-dropdown { position: absolute; top: 100%; right: 0; z-index: 30; display: none; width: min(380px,90vw); padding: 9px; border: 1px solid #e3dfda; background: #fff; box-shadow: 0 16px 40px rgba(49,43,41,.16); }
.nav-product-menu[open] .nav-products-dropdown { display: block; }
.nav-products-dropdown__all { display: block; padding: 10px; background: #f7eeee; color: #78232d; }
.nav-products-dropdown__list { display: grid; max-height: 50vh; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: auto; }
.nav-products-dropdown__list a { display: flex; min-width: 0; flex-direction: column; gap: 3px; padding: 9px 10px; border-bottom: 1px solid #eeeae6; font-size: 10px; line-height: 1.3; }
.nav-products-dropdown__list small { color: #858184; font-size: 9px; }
.nav-products-dropdown__list a:hover { background: #faf5f3; color: var(--red); }

.hero-slide-toggle { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.hero__slide { display: none; }
.hero--slider:has(#hero-slide-1:checked) .hero__slide[data-slide="0"],
.hero--slider:has(#hero-slide-2:checked) .hero__slide[data-slide="1"],
.hero--slider:has(#hero-slide-3:checked) .hero__slide[data-slide="2"] { display: block; }
.hero--slider:has(#hero-slide-1:checked) > .hero-machine-video,
.hero--slider:has(#hero-slide-2:checked) > .hero-machining-video,
.hero--slider:has(#hero-slide-3:checked) > .hero-assembly-video { display: block; }
.hero--slider .hero__visual--machine { position: relative; height: 420px; }
.hero-machine-credit > span { display: none; }
.hero--slider:has(#hero-slide-1:checked) .hero-credit--1,
.hero--slider:has(#hero-slide-2:checked) .hero-credit--2,
.hero--slider:has(#hero-slide-3:checked) .hero-credit--3 { display: inline; }
.hero__slide .hero__copy { position: relative; z-index: 3; }
.hero__slide .hero__visual img.hero-seal-parts { position: relative; z-index: 2; display: block; width: min(100%,470px); height: 330px; padding: 12px; border: 1px solid rgba(255,255,255,.78); background: #fff; object-fit: contain; box-shadow: 0 18px 34px rgba(0,0,0,.24); }
.hero__slide::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg,rgba(18,20,22,.88),rgba(18,20,22,.58) 52%,rgba(18,20,22,.3)),linear-gradient(0deg,rgba(18,20,22,.62),transparent 26%); content: ""; pointer-events: none; }
.hero__copy .eyebrow, .hero__copy .hero__lead, .hero__copy .hero__note { color: #f1efed; }
.hero__copy h1 { color: #fff; }
.hero__copy h1 span { color: #e3deda; }
.hero__copy .button--outline { border-color: rgba(255,255,255,.65); color: #fff; }
.hero__bottom { border-top-color: rgba(255,255,255,.24); }
.hero__bottom-inner { color: rgba(255,255,255,.78); }
.slider-controls { gap: 8px; }
.slider-dot { display: block; width: 10px; height: 10px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.55); cursor: pointer; }
.hero--slider:has(#hero-slide-1:checked) label[for="hero-slide-1"],
.hero--slider:has(#hero-slide-2:checked) label[for="hero-slide-2"],
.hero--slider:has(#hero-slide-3:checked) label[for="hero-slide-3"] { background: var(--red); }
.slider-dot:focus-visible, .nav-menu-toggle:focus-visible { outline: 2px solid var(--red); outline-offset: 4px; }

.static-filter-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0; }
.static-product-family { margin: 38px 0 54px; scroll-margin-top: 100px; }
.static-product-family__heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; border-bottom: 1px solid var(--line); }
.static-product-family__heading h3 { font-family: var(--font-display); font-size: 24px; }
.static-product-family__heading a { color: var(--red); font-size: 11px; }
.product-card__visual--zoomable { display: block; }
.product-card__visual--zoomable img { transition: transform .25s ease; }
.product-card__visual--zoomable:hover img { transform: scale(1.06); }
.product-detail-section > .container > .product-grid { margin-top: 26px; }
.whatsapp-float > span:first-child { font-size: 22px; }
.inquiry-form { display: block; }

@media (prefers-reduced-motion: reduce) {
  .hero--slider > video.hero-background-video { display: none !important; }
  .hero--slider:has(#hero-slide-1:checked)::before { background: linear-gradient(90deg,rgba(18,20,22,.88),rgba(18,20,22,.48)),url("../img/shaft-seal-machinery-poster.jpeg") center/cover; }
  .hero--slider:has(#hero-slide-2:checked)::before { background: linear-gradient(90deg,rgba(18,20,22,.88),rgba(18,20,22,.48)),url("../img/seal-component-machining-poster.jpeg") center/cover; }
  .hero--slider:has(#hero-slide-3:checked)::before { background: linear-gradient(90deg,rgba(18,20,22,.88),rgba(18,20,22,.48)),url("../img/seal-assembly-machining-poster.jpeg") center/cover; }
}

@media (max-width: 720px) {
  .header__inner { display: grid; height: auto; grid-template-columns: minmax(0,1fr) 40px; gap: 0 12px; padding-top: 10px; padding-bottom: 10px; }
  .site-header { height: auto; min-height: 68px; }
  .brand { grid-column: 1; }
  .nav-menu-toggle { display: grid; width: 40px; height: 40px; grid-column: 2; grid-row: 1; place-items: center; border: 1px solid #d8d3cc; color: #424447; cursor: pointer; }
  .nav-menu-toggle > span:first-child { font-size: 0; }
  .nav-menu-toggle > span:first-child::before { content: "☰"; font-size: 19px; }
  .site-nav { position: static; display: none; grid-column: 1 / -1; grid-row: 2; align-items: stretch; gap: 0; padding: 8px 0 4px; border: 0; background: #fff; }
  .nav-toggle:checked ~ .site-nav { display: flex; flex-direction: column; }
  .site-nav > a:not(.nav-cta) { padding: 12px 3px; border-bottom: 1px solid #eeeae6; }
  .site-nav .nav-product-menu { display: block; width: 100%; }
  .nav-product-menu__summary { min-height: 43px; border-bottom: 1px solid #eeeae6; }
  .nav-products-dropdown { position: static; width: 100%; max-height: 42vh; box-shadow: none; }
  .nav-products-dropdown__list { max-height: 32vh; }
  .hero__slide .hero__visual img.hero-seal-parts { height: min(68vw,300px); }
  .hero__visual--machine { margin: 0 -6px; }
}

.page-banner--contact::before { z-index: 1; mask-image: none; opacity: .12; }
.page-banner--contact::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg,rgba(20,22,24,.88),rgba(20,22,24,.72) 45%,rgba(20,22,24,.18)); content: ""; pointer-events: none; }
.page-banner--contact .page-banner__inner { position: static; display: flex; min-height: 460px; align-items: center; }
.page-banner--contact .page-banner__inner > div:first-child { position: relative; z-index: 2; width: min(100%,640px); padding: 58px 0; }
.page-banner--contact h1, .page-banner--contact h1 span { color: #fff; }
.page-banner--contact .page-banner__inner > div:first-child > p:not(.eyebrow) { color: #f1efed; }
.page-banner--contact .page-banner__visual { position: absolute; z-index: 0; inset: 0; display: block; min-height: 0; }
.page-banner--contact .page-banner__visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; filter: none; }
.page-banner--photo::before { z-index: 1; mask-image: none; opacity: .12; }
.page-banner--photo::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg,rgba(20,22,24,.9),rgba(20,22,24,.74) 48%,rgba(20,22,24,.22)); content: ""; pointer-events: none; }
.page-banner--photo .page-banner__inner { position: static; display: flex; min-height: 460px; align-items: center; }
.page-banner--photo .page-banner__inner > div:first-child { position: relative; z-index: 2; width: min(100%,640px); padding: 58px 0; }
.page-banner--photo h1, .page-banner--photo h1 span { color: #fff; }
.page-banner--photo .page-banner__inner > div:first-child > p:not(.eyebrow) { color: #f1efed; }
.page-banner--photo .page-banner__visual { position: absolute; z-index: 0; inset: 0; display: block; min-height: 0; }
.page-banner--photo .page-banner__visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 45%; filter: none; }
.page-banner--seal-families::after { background: linear-gradient(90deg,rgba(20,22,24,.92),rgba(20,22,24,.76) 44%,rgba(20,22,24,.24)); }
.page-banner--seal-families .page-banner__visual img { inset: 50% 5% auto auto; width: min(48%,520px); height: auto; max-height: 88%; aspect-ratio: 330 / 280; padding: 14px; transform: translateY(-50%); border: 1px solid rgba(255,255,255,.72); background: #fff; object-fit: contain; box-shadow: 0 18px 40px rgba(0,0,0,.34); }
.page-banner--products::after { background: linear-gradient(90deg,rgba(20,22,24,.88),rgba(20,22,24,.73) 48%,rgba(20,22,24,.24)); }
.page-banner--products .page-banner__visual img { object-position: center 58%; }
.whatsapp-float svg { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }

@media (max-width: 720px) {
  .page-banner--contact .page-banner__inner { min-height: 390px; }
  .page-banner--contact .page-banner__inner > div:first-child { padding: 48px 0; }
  .page-banner--contact::after { background: linear-gradient(90deg,rgba(20,22,24,.94),rgba(20,22,24,.78) 70%,rgba(20,22,24,.42)); }
  .page-banner--contact .page-banner__visual img { object-position: 70% center; }
  .page-banner--photo .page-banner__inner { min-height: 390px; }
  .page-banner--photo .page-banner__inner > div:first-child { padding: 48px 0; }
  .page-banner--photo::after { background: linear-gradient(90deg,rgba(20,22,24,.94),rgba(20,22,24,.78) 70%,rgba(20,22,24,.42)); }
  .page-banner--photo .page-banner__visual img { object-position: 70% center; }
  .page-banner--seal-families::after { background: linear-gradient(90deg,rgba(20,22,24,.96),rgba(20,22,24,.82) 72%,rgba(20,22,24,.48)); }
  .page-banner--seal-families .page-banner__visual img { inset: auto 5% 14px auto; width: min(42%,220px); height: 142px; max-height: none; padding: 7px; transform: none; }
  .page-banner--products::after { background: linear-gradient(90deg,rgba(20,22,24,.94),rgba(20,22,24,.78) 70%,rgba(20,22,24,.4)); }
  .page-banner--products .page-banner__visual img { object-position: center 58%; }
}

.brand__name { font-size: 19px !important; }
.brand__name small { font-size: 12px !important; }
.site-nav, .site-nav :is(a, summary, small, span), .nav-products-dropdown__list a { font-size: 12px !important; }
.topline, .topline :is(a, span) { font-size: 11px !important; }
.hero__serial, .why-symbol { font-size: 14px !important; }

@media (max-width: 1000px) {
  .site-nav, .site-nav :is(a, summary, small, span) { font-size: 11px !important; }
}

@media (max-width: 720px) {
  .brand__name { font-size: 16px !important; }
}

:root {
  --ink: #424447;
  --muted: #73777c;
  --paper: #f6f5f2;
  --red: #b52d3b;
  --red-dark: #992432;
  --line: #e4e2de;
  --dark: #17191c;
}

@media (max-width: 720px) {
  .whatsapp-float { width: 52px; min-height: 52px; padding: 0; }
  .whatsapp-float > span { display: none; }
}

body { background: var(--paper); color: var(--ink); }
.topline { background: #424447; color: #e5e3df; }
.topline a { color: #fff; }
.topline a:hover { color: #f3c6ca; }
.site-header { background: rgba(255,255,255,.98); border-bottom-color: #e5e2dd; }
.brand__name, .brand__name strong { color: #424447; }
.brand__name small { color: #77777a; }
.site-nav { color: #515256; }
.nav-product-menu__toggle { color: #66676a; }
.nav-product-menu__toggle:hover, .nav-product-menu__toggle[aria-expanded="true"] { color: var(--red); }
.hero:not(.hero--catalogue) { background: #f3f0eb; color: var(--ink); }
.hero:not(.hero--catalogue)::before { background: linear-gradient(112deg, #fbfaf8 0%, #f4f1ec 58%, #ebe7e1 100%); }
.hero:not(.hero--catalogue) h1 { color: var(--ink); }
.hero:not(.hero--catalogue) h1 span { color: var(--red); }
.hero:not(.hero--catalogue) .hero__lead { color: #69696b; }
.hero:not(.hero--catalogue) .button--outline { border-color: #9b9996; color: #49494b; }
.hero:not(.hero--catalogue) .hero__note { color: #747477; }
.page-banner { background: linear-gradient(115deg,#fbfaf8,#f2efea 64%,#e9e5df); }
.page-banner h1 { color: var(--ink); }
.page-banner h1 span { color: var(--red); }
.section-heading h2, .industry__copy h2, .about__copy h2, .home-why__inner h2,
.about-story h2, .about-values h2, .why-intro h2, .why-reasons h2, .why-checklist h2,
.inquiry__intro h2, .product-detail-information h2 { color: var(--ink); }
.proof-strip { border-bottom-color: var(--line); }
.proof-icon, .product-card__series, .family-card__symbol, .family-card__link b,
.application-card > span, .application-card a b { color: var(--red); }
.product-card, .family-card, .application-card, .inquiry-form, .checklist-card { border-color: #e5e1dc; }
.product-card__visual { background: linear-gradient(145deg,#f4f1ed,#fbfaf8 59%,#eeeae5); }
.home-why, .why-checklist, .inquiry-section { background: #eeece8; }
.industry-section { background: #f0eeea; color: var(--ink); }
.industry-item { border-color: #d9d6d1; color: #4c4d50; }
.industry__copy > p:not(.eyebrow), .contact__action p { color: #69696b; }
.contact-section { background: #e8e5df; color: var(--ink); }
.contact__inner h2 { color: var(--ink); }
.contact__download, .text-link { color: #4d4e50; }
.site-footer { background: #202226; color: #f2f1ef; }
.brand--footer .brand__name, .brand--footer .brand__name strong { color: #f2f1ef; }
.brand--footer .brand__name small { color: #c4c1be; }
.footer__main > p { color: #b7b8ba; }
.footer__links { color: #d3d1cf; }
.footer__details { border-color: rgba(255,255,255,.13); }
.footer__details h2 { color: #efeeec; }
.footer__office address, .footer__contact a { color: #b7b8ba; }
.footer__bottom { border-color: rgba(255,255,255,.13); color: #9b9c9e; }

.hero--catalogue { min-height: 0; background: #17191c; color: #fff; }
.hero--catalogue::before { display: none; }
.hero--catalogue .hero__grid { opacity: .1; }
.hero--catalogue .hero__slide { background-position: center; background-size: cover; }
.hero--catalogue .hero__slide--seals {
  background-image: linear-gradient(90deg,rgba(16,18,21,.94) 0%,rgba(20,22,25,.82) 48%,rgba(18,19,21,.42) 100%),url("../img/hero-home.webp");
}
.hero--catalogue .hero__slide--range {
  background-image: linear-gradient(90deg,rgba(16,18,21,.94) 0%,rgba(20,22,25,.82) 48%,rgba(18,19,21,.42) 100%),url("../img/app-refinery.webp");
}
.hero--catalogue .hero__slide--industries {
  background-image: linear-gradient(90deg,rgba(16,18,21,.94) 0%,rgba(20,22,25,.82) 48%,rgba(18,19,21,.42) 100%),url("../img/app-chemical.webp");
}
.hero--catalogue .hero__slide::before {
  background: linear-gradient(90deg,rgba(15,16,18,.96) 0%,rgba(15,16,18,.84) 38%,rgba(15,16,18,.28) 69%,rgba(15,16,18,.1) 100%),linear-gradient(0deg,rgba(15,16,18,.44),transparent 35%);
}
.hero--catalogue .hero__inner::before {
  position: absolute;
  top: -20%;
  bottom: -20%;
  left: 43%;
  width: 72px;
  border-right: 2px solid rgba(181,45,59,.78);
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.035));
  content: "";
  pointer-events: none;
  transform: skewX(-29deg);
}
.hero--catalogue .hero__inner { min-height: 540px; }
.hero--catalogue .hero__copy { z-index: 3; max-width: 470px; }
.hero--catalogue .hero__visual { z-index: 2; }
.hero--catalogue .hero__copy h1 span { color: #e5b0b4; }
.hero--catalogue .hero__copy .eyebrow__dash { background: var(--red); }
.hero--catalogue .hero-product-stage {
  position: relative !important;
  width: 100%;
  height: 440px;
  isolation: isolate;
}
.hero--catalogue .hero-product-stage::before {
  position: absolute;
  z-index: -1;
  inset: 8% -8% 0 0;
  background: radial-gradient(ellipse at 61% 45%,rgba(226,231,234,.28),transparent 38%),
    radial-gradient(ellipse at 57% 77%,rgba(181,45,59,.13),transparent 47%);
  content: "";
}
.hero--catalogue .hero-product-stage::after {
  position: absolute;
  right: 0;
  bottom: 12%;
  left: 2%;
  z-index: 0;
  height: 12%;
  border-radius: 50%;
  background: radial-gradient(ellipse,rgba(0,0,0,.8),transparent 70%);
  content: "";
  filter: blur(10px);
}
.hero--catalogue .hero-product-cutout {
  position: absolute !important;
  z-index: 2;
  display: block;
  width: 57%;
  height: 300px;
  padding: 0;
  border: 0;
  background: transparent;
  object-fit: contain;
  mix-blend-mode: multiply;
  filter: drop-shadow(0 24px 19px rgba(0,0,0,.65));
}
.hero--catalogue .hero-product-cutout--left {
  bottom: 25px;
  left: -3%;
  z-index: 1;
  width: 54%;
  height: 270px;
  transform: rotate(-8deg);
}
.hero--catalogue .hero-product-cutout--center {
  bottom: 58px;
  left: 22%;
  z-index: 3;
  width: 62%;
  height: 340px;
}
.hero--catalogue .hero-product-cutout--right {
  right: 1%;
  bottom: 6px;
  width: 51%;
  height: 265px;
  transform: rotate(4deg);
}
.hero--catalogue .hero__visual--machine { height: 420px; }
.hero-product-label {
  position: absolute;
  right: 3%;
  bottom: 27px;
  z-index: 3;
  display: flex;
  min-width: 150px;
  flex-direction: column;
  gap: 4px;
  padding: 12px 15px;
  border-left: 3px solid var(--red);
  background: #fff;
  color: var(--ink);
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}
.hero--catalogue .hero-product-label {
  right: -1%;
  bottom: 5px;
  min-width: 158px;
  border-left-color: var(--red);
  background: rgba(26,28,31,.92);
  color: #fff;
  box-shadow: 0 12px 30px rgba(0,0,0,.32);
}
.hero-product-label strong { font-family: var(--font-display); letter-spacing: .08em; }
.hero--catalogue .hero-product-label span { color: #c6c6c7; }
.hero--catalogue .hero__visual--range .hero__orbit--two,
.hero--catalogue .hero__visual--application .hero__orbit--two { border-color: rgba(181,45,59,.48); }
.hero--catalogue .visual-tag {
  border-color: rgba(255,255,255,.22);
  background: rgba(25,27,30,.88);
  color: #f3f1ef;
  box-shadow: none;
}
.hero--catalogue .hero__bottom { border-top-color: rgba(255,255,255,.24); }
.hero--catalogue .hero__bottom-inner { color: rgba(255,255,255,.82); }
.hero--catalogue .slider-arrow { border-color: rgba(255,255,255,.45); color: #fff; }
.hero--catalogue .slider-arrow:hover { background: rgba(255,255,255,.14); }
.hero--catalogue .slider-dot { background: rgba(255,255,255,.58); }
.hero--catalogue .slider-dot.is-active,
.hero--catalogue:has(#hero-slide-1:checked) label[for="hero-slide-1"],
.hero--catalogue:has(#hero-slide-2:checked) label[for="hero-slide-2"],
.hero--catalogue:has(#hero-slide-3:checked) label[for="hero-slide-3"] { background: var(--red); }
.hero--catalogue .slider-toggle {
  padding: 6px 9px;
  border: 1px solid rgba(255,255,255,.42);
  background: transparent;
  color: #fff;
  cursor: pointer;
}
.hero--catalogue .slider-toggle:hover { background: rgba(255,255,255,.14); }
.hero--catalogue .slider-toggle:focus-visible,
.hero--catalogue .slider-arrow:focus-visible,
.hero--catalogue .slider-dot:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }

@media (max-width: 720px) {
  .hero--catalogue .hero__inner { min-height: 0; }
  .hero--catalogue .hero__copy { padding-top: 48px; }
  .hero--catalogue .hero-product-stage { height: min(82vw,365px); }
  .hero--catalogue .hero-product-cutout { height: min(65vw,285px); }
  .hero--catalogue .hero-product-cutout--left { height: min(58vw,245px); }
  .hero--catalogue .hero-product-cutout--center { height: min(72vw,315px); }
  .hero--catalogue .hero-product-cutout--right { height: min(56vw,240px); }
  .hero--catalogue .hero-product-label { right: 0; bottom: 0; }
  .hero--catalogue .hero__bottom-inner > span,
  .hero--catalogue .hero__bottom-line { display: none; }
  .hero--catalogue .slider-controls { gap: 7px; }
  .hero--catalogue .slider-controls { margin-left: auto; }
  .hero--catalogue .slider-toggle { margin-left: 2px; }
  .home-why__inner > * { min-width: 0; }
  .home-why__inner { grid-template-columns: minmax(0,1fr); }
  .home-why__inner h2 { font-size: clamp(29px,8vw,37px); }
  .home-why__steps > div { min-width: 0; }
  .home-why__steps strong, .home-why__steps small { overflow-wrap: anywhere; }
}

@media (max-width: 360px) {
  .topline__email { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .hero--catalogue .hero__slide.is-active .hero__copy,
  .hero--catalogue .hero__slide.is-active .hero__visual img { animation: none; }
}

/* Original Flowmake industrial system: image-led heroes and catalogue-first pages. */
:root {
  --font-body: "DM Sans", "Segoe UI", sans-serif;
  --font-display: "Manrope", "Segoe UI", sans-serif;
  --red: #b52d3b;
  --red-dark: #922331;
  --paper: #f5f4f1;
}

body { background: #f5f4f1; }
.container { width: min(1220px, calc(100% - 72px)); }
.topline { min-height: 38px; }
.topline__inner { min-height: 38px; }
.site-header { height: 88px; box-shadow: 0 5px 24px rgba(27,30,34,.06); }
.header__inner { gap: 28px; }
.brand { min-width: 220px; }
.site-nav { gap: clamp(13px,1.7vw,25px); font-size: 12px; }
.nav-cta { border-radius: 2px; }
.nav-products-dropdown { border-top: 3px solid var(--red); }

.hero--catalogue { background: #191b1e; }
.hero--catalogue .hero__slide {
  background-position: center;
  background-size: cover;
}
.hero--catalogue .hero__slide::before {
  background:
    linear-gradient(90deg,rgba(17,19,22,.98) 0%,rgba(17,19,22,.9) 38%,rgba(17,19,22,.48) 68%,rgba(17,19,22,.24) 100%),
    linear-gradient(0deg,rgba(17,19,22,.38),transparent 45%);
}
.hero--catalogue .hero__inner { min-height: 590px; }
.hero--catalogue .hero__copy { max-width: 520px; padding: 68px 0 54px; }
.hero--catalogue .hero__copy h1 { max-width: 580px; font-size: clamp(46px,5vw,68px); letter-spacing: -.06em; }
.hero--catalogue .hero__copy h1 span { color: #efb5ba; }
.hero--catalogue .hero__lead { max-width: 440px; color: #e2e1df; font-size: 16px; line-height: 1.75; }
.hero--catalogue .hero__visual { height: 480px; }
.hero--catalogue .hero-product-stage::before {
  inset: 2% -12% 0 -5%;
  background: radial-gradient(ellipse at 60% 52%,rgba(181,45,59,.24),transparent 54%);
}
.hero--catalogue .hero-product-cutout {
  filter: drop-shadow(0 24px 22px rgba(0,0,0,.55));
}
.hero--catalogue .hero__bottom { border-top-color: rgba(255,255,255,.2); }
.hero--catalogue .hero__bottom-inner { min-height: 52px; }
.hero--catalogue .slider-controls { gap: 10px; }
.hero--catalogue .slider-dot { width: 10px; height: 10px; }

.proof-strip { position: relative; z-index: 2; border-bottom: 1px solid #e1ded8; box-shadow: 0 12px 28px rgba(37,38,40,.04); }
.proof-strip__inner { min-height: 106px; }
.proof-icon { width: 42px; height: 42px; font-size: 13px; }
.proof-strip strong { font-size: 15px; }
.proof-strip small { color: #686b70; }
.section { padding: clamp(68px,7vw,100px) 0; }
.section-heading { margin-bottom: 44px; }
.section-heading h2, .industry__copy h2, .about__copy h2,
.about-story h2, .about-values h2, .why-intro h2, .why-reasons h2,
.why-checklist h2, .inquiry__intro h2, .product-detail-information h2 {
  font-size: clamp(34px,4vw,52px);
  line-height: 1.12;
}
.section-heading__aside { max-width: 430px; line-height: 1.75; }

.product-grid { gap: 22px; }
.product-card, .family-card, .application-card, .contact-channel-card, .contact-address-card,
.inquiry-form, .checklist-card {
  border-radius: 3px;
  box-shadow: 0 10px 28px rgba(33,36,39,.045);
}
.product-card { overflow: hidden; transition: transform .22s ease,box-shadow .22s ease; }
.product-card:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(33,36,39,.1); }
.product-card__visual { min-height: 245px; }
.product-card__body { padding: 22px; }
.product-card__description, .application-card p, .about-story__copy p,
.why-intro__grid > div:last-child > p, .inquiry__intro > p:not(.eyebrow) {
  font-size: 15px !important;
  line-height: 1.8;
}
.static-product-family { margin-top: 40px; }
.static-product-family__heading {
  margin-bottom: 22px;
  padding: 0 0 14px;
  border-bottom: 1px solid #d8d4cf;
}
.static-filter-list { gap: 10px; margin-bottom: 22px; }
.filter-chip { border-radius: 2px; }
.application-grid { gap: 22px; }
.application-card { overflow: hidden; }
.application-card__image { display: block; width: 100%; object-fit: cover; }

.page-banner {
  background: linear-gradient(112deg,#1c1e21,#292b2f 62%,#17191c);
}
.page-banner::before { opacity: .24; }
.page-banner--photo::after {
  background: linear-gradient(90deg,rgba(17,19,22,.94),rgba(17,19,22,.74) 48%,rgba(17,19,22,.2));
}
.page-banner--photo .page-banner__inner { min-height: 470px; }
.page-banner--photo .page-banner__inner > div:first-child { width: min(100%,690px); }
.page-banner--photo h1 { font-size: clamp(44px,5vw,66px); }
.page-banner--photo h1 span { color: #efb5ba; }
.page-banner--photo .eyebrow { color: #f1dfe0; }
.page-banner--photo .page-banner__visual img { object-position: center; }
.page-banner--products .page-banner__visual img { object-position: center 58%; }
.page-banner--seal-families .page-banner__visual img {
  border-color: rgba(255,255,255,.24);
  background: rgba(255,255,255,.08);
  mix-blend-mode: normal;
}
.page-banner__crumb { font-size: 12px; }

.industry-section { padding: clamp(68px,7vw,96px) 0; }
.industry__inner { gap: clamp(40px,7vw,100px); }
.industry-item { min-height: 62px; }
.contact-section { padding: 72px 0; }
.contact__inner h2 { font-size: clamp(36px,4vw,54px); }
.site-footer { border-top: 4px solid var(--red); }
.footer__main { padding-top: 42px; padding-bottom: 34px; }
.footer__details { padding-top: 30px; padding-bottom: 32px; }
.footer__bottom { min-height: 54px; }

@media (max-width: 1000px) {
  .container { width: min(100% - 48px, 820px); }
  .header__inner { gap: 16px; }
  .site-nav { gap: 12px; }
  .hero--catalogue .hero__inner { min-height: 540px; }
  .hero--catalogue .hero__copy h1 { font-size: clamp(40px,5.5vw,56px); }
  .hero--catalogue .hero__visual { height: 420px; }
  .product-grid { gap: 16px; }
}

@media (max-width: 720px) {
  .container { width: min(100% - 38px, 540px); }
  .topline, .topline__inner { min-height: 36px; }
  .site-header { height: 72px; }
  .header__inner { gap: 12px; }
  .brand { min-width: 0; }
  .nav-menu-toggle { border-color: #d8d2cc; color: var(--ink); }
  .site-nav { top: 71px; padding: 10px 20px 20px; box-shadow: 0 18px 28px rgba(28,30,33,.12); }
  .site-nav > a:not(.nav-cta), .site-nav .nav-product-menu > a { padding-top: 14px; padding-bottom: 14px; }
  .hero--catalogue .hero__inner { min-height: 0; }
  .hero--catalogue .hero__copy { padding: 54px 0 16px; }
  .hero--catalogue .hero__copy h1 { font-size: clamp(40px,10vw,54px); }
  .hero--catalogue .hero__lead { font-size: 15px; }
  .hero--catalogue .hero__visual { height: min(80vw,350px); margin: 0 -4px; }
  .hero--catalogue .hero-product-stage { height: min(80vw,350px); }
  .hero--catalogue .hero-product-cutout { height: min(65vw,285px); }
  .hero--catalogue .hero-product-cutout--left { height: min(58vw,245px); }
  .hero--catalogue .hero-product-cutout--center { height: min(72vw,315px); }
  .hero--catalogue .hero-product-cutout--right { height: min(56vw,240px); }
  .proof-strip__inner { grid-template-columns: 1fr; gap: 14px; padding-top: 19px; padding-bottom: 19px; }
  .proof-strip__inner > div:not(.proof-strip__catalog) { gap: 14px; }
  .section-heading { align-items: flex-start; flex-direction: column; gap: 13px; margin-bottom: 29px; }
  .product-grid { grid-template-columns: 1fr; }
  .product-card__visual { min-height: 220px; }
  .application-grid { grid-template-columns: 1fr; }
  .page-banner--photo .page-banner__inner { min-height: 430px; }
  .page-banner--photo .page-banner__inner > div:first-child { padding: 49px 0 42px; }
  .page-banner--photo h1 { font-size: clamp(39px,10vw,54px); }
  .page-banner--photo .page-banner__visual img { object-position: 62% center; }
  .industry__inner { gap: 32px; }
  .footer__main { gap: 22px; }
  .footer__links { gap: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .product-card { transition: none; }
  .product-card:hover { transform: none; }
}

body:has(.hero--catalogue) .topline { display: none; }
body:has(.hero--catalogue) .site-header { height: 121px; box-shadow: none; }

.hero--catalogue .hero__slide::before {
  background:
    linear-gradient(90deg,rgba(18,22,31,.9) 0%,rgba(21,26,35,.78) 38%,rgba(20,24,31,.36) 67%,rgba(18,20,24,.12) 100%),
    linear-gradient(0deg,rgba(17,19,22,.42),transparent 40%);
}
.hero--catalogue .hero__slide--seals { background-position: center, 58% center; }
.hero--catalogue .hero__inner::before { display: none; }
.hero--catalogue .hero__inner {
  min-height: 470px;
  grid-template-columns: minmax(0,1.02fr) minmax(0,.98fr);
}
.hero--catalogue .hero__copy { max-width: 500px; padding: 42px 0 36px; }
.hero--catalogue .hero__copy h1 {
  max-width: 480px;
  font-size: clamp(38px,4.3vw,54px);
  letter-spacing: -.045em;
  line-height: 1.1;
}
.hero--catalogue .hero__copy h1 span { color: #f0b9bf; }
.hero--catalogue .hero__lead { max-width: 390px; font-size: 15px; line-height: 1.65; }
.hero--catalogue .hero-product-stage { height: 390px; }
.hero--catalogue .hero-product-stage::before {
  inset: 6% -5% 3% 0;
  background: radial-gradient(ellipse at 58% 52%,rgba(255,255,255,.18),transparent 44%);
}
.hero--catalogue .hero-product-stage::after { bottom: 10%; left: 6%; }
.hero--catalogue .hero-product-cutout { mix-blend-mode: normal; }
.hero--catalogue .hero-product-cutout--left { height: 245px; }
.hero--catalogue .hero-product-cutout--center { height: 320px; }
.hero--catalogue .hero-product-cutout--right { height: 240px; }
.hero--catalogue .hero__bottom { background: rgba(18,20,24,.56); }

@media (max-width: 720px) {
  body:has(.hero--catalogue) .site-header { height: auto; min-height: 68px; }
  .hero--catalogue .hero__inner {
    min-height: 390px;
    grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
    gap: 4px;
  }
  .hero--catalogue .hero__copy { padding: 34px 0 24px; }
  .hero--catalogue .hero__copy .eyebrow { gap: 7px; margin-bottom: 14px; font-size: 10px !important; letter-spacing: .1em; }
  .hero--catalogue .hero__copy h1 { font-size: clamp(25px,7vw,34px); line-height: 1.12; }
  .hero--catalogue .hero__lead { margin: 14px 0 18px; font-size: 13px !important; line-height: 1.55; }
  .hero--catalogue .hero__actions { gap: 8px; }
  .hero--catalogue .hero__actions .button { min-height: 40px; gap: 5px; padding: 0 8px; font-size: 11px !important; white-space: nowrap; }
  .hero--catalogue .hero__actions .button--outline,
  .hero--catalogue .hero__note { display: none; }
  .hero--catalogue .hero-product-stage,
  .hero--catalogue .hero__visual--machine { height: min(72vw,280px); margin: 0 -8px 0 0; }
  .hero--catalogue .hero-product-cutout--center,
  .hero--catalogue .hero-product-cutout--right { display: none; }
  .hero--catalogue .hero-product-cutout--left {
    right: 0;
    bottom: 14px;
    left: -22%;
    width: 125%;
    height: min(68vw,260px);
    transform: none;
  }
  .hero--catalogue .hero-product-label { display: none; }
  .home-company__image img { display: block; width: 100%; max-width: 100%; height: auto; }
}

.hero--catalogue .hero__slide--seals {
  background-image: url("../img/app-refinery.webp");
  background-position: center 56%;
}
.hero--catalogue .hero__slide::before {
  background: linear-gradient(90deg,rgba(10,28,73,.88) 0%,rgba(13,32,78,.72) 40%,rgba(13,29,68,.27) 74%,rgba(10,20,43,.1) 100%);
}
.hero--catalogue .hero__inner {
  width: min(1160px,calc(100% - 72px));
  height: clamp(380px,48vw,620px);
  min-height: 0;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
}
.hero--catalogue .hero__copy {
  width: min(100%,420px);
  max-width: 360px;
  padding: 0;
}
.hero--catalogue .hero__copy > .eyebrow,
.hero--catalogue .hero__note { display: none; }
.hero--catalogue .hero__copy h1 {
  max-width: 360px;
  font-size: clamp(30px,3.2vw,42px);
  letter-spacing: -.035em;
  line-height: 1.13;
}
.hero--catalogue .hero__copy h1 span { display: block; max-width: 300px; color: #f1c2c5; }
.hero--catalogue .hero__lead {
  max-width: 360px;
  margin: 13px 0 18px;
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.55;
}
.hero--catalogue .hero__actions { gap: 0; }
.hero--catalogue .hero__actions .button--outline { display: none; }
.hero--catalogue .hero__actions .button--red {
  min-height: 32px;
  gap: 0;
  padding: 0 15px;
  border-radius: 999px;
  background: #fff;
  color: #28314c;
  font-size: 0 !important;
}
.hero--catalogue .hero__actions .button--red > span { display: none; }
.hero--catalogue .hero__actions .button--red::before {
  content: "Explore range";
  font-size: 11px !important;
  font-weight: 700;
}
.hero--catalogue .hero-product-stage {
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.hero--catalogue .hero-product-stage::before {
  display: none;
}
.hero--catalogue .hero-product-stage::after { display: none; }
.hero--catalogue .hero-product-cutout--left,
.hero--catalogue .hero-product-cutout--right { display: none; }
.hero--catalogue .hero-product-cutout--center {
  display: block;
  right: 0;
  bottom: 4%;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: none;
  filter: none;
}
.hero--catalogue .hero-product-label { display: none; }
.hero--catalogue .hero__bottom {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  border: 0;
  background: transparent;
  pointer-events: none;
}
.hero--catalogue .hero__bottom-inner {
  height: 32px;
  min-height: 0;
  justify-content: flex-end;
  pointer-events: none;
}
.hero--catalogue .hero__bottom-inner > span,
.hero--catalogue .hero__bottom-line,
.hero--catalogue .slider-arrow,
.hero--catalogue .slider-toggle { display: none; }
.hero--catalogue .slider-controls { gap: 5px; pointer-events: auto; }
.hero--catalogue .slider-dot { width: 7px; height: 7px; }

@media (max-width: 720px) {
  body:has(.hero--catalogue) .site-header { height: auto; min-height: 68px; }
  .hero--catalogue .hero__inner {
    width: min(100% - 38px,540px);
    height: 48vw;
    grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
  }
  .hero--catalogue .hero__copy { width: 100%; padding: 0; }
  .hero--catalogue .hero__copy h1 { font-size: clamp(14px,5.4vw,22px); line-height: 1.1; }
  .hero--catalogue .hero__copy h1 span { max-width: 100%; }
  .hero--catalogue .hero__lead {
    display: -webkit-box;
    overflow: hidden;
    margin: 6px 0 8px;
    font-size: clamp(9px,3vw,12px) !important;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .hero--catalogue .hero__actions .button--red {
    min-height: 26px;
    padding: 0 10px;
  }
  .hero--catalogue .hero__actions .button--red::before { font-size: 10px !important; }
  .hero--catalogue .hero-product-stage { height: 44vw; margin-right: -8px; padding: 0; }
  .hero--catalogue .hero-product-cutout--center {
    left: -5%;
    width: 110%;
    height: 42vw;
    bottom: 0;
  }
  .hero--catalogue .hero__bottom-inner { width: min(100% - 38px,540px); }
}

@media (max-width: 1240px) {
  .site-header { height: auto; min-height: 72px; }
  .header__inner { display: grid; height: auto; min-height: 72px; grid-template-columns: minmax(0,1fr) 40px; gap: 0 12px; padding-top: 10px; padding-bottom: 10px; }
  .brand { grid-column: 1; min-width: 0; gap: 8px; }
  .brand img { width: 34px; height: 34px; }
  .nav-menu-toggle { display: grid; width: 40px; height: 40px; grid-column: 2; grid-row: 1; place-items: center; border: 1px solid rgba(255,255,255,.32); background: transparent; color: #fff; cursor: pointer; }
  .nav-menu-toggle > span:first-child { font-size: 0; }
  .nav-menu-toggle > span:first-child::before { content: "☰"; color: #fff; font-size: 19px; }
  .site-nav { position: static; display: none; grid-column: 1 / -1; grid-row: 2; align-items: stretch; gap: 0; padding: 8px 0 4px; border: 0; background: #424447; color: #fff; }
  .nav-toggle:checked ~ .site-nav { display: flex; flex-direction: column; }
  .site-nav > a:not(.nav-cta) { padding: 12px 3px; border-bottom: 1px solid rgba(255,255,255,.12); color: #f2f2f2; }
  .site-nav > a:not(.nav-cta):hover, .site-nav > .is-current:not(.nav-cta) { color: #f07179; }
  .site-nav .nav-cta { width: fit-content; margin-top: 12px; }
  .site-nav, .site-nav :is(a, summary, small, span) { font-size: 12px !important; }
}

@media (max-width: 720px) {
  .container { width: min(1220px, calc(100% - 36px)); }
  .brand__name { font-size: 15px !important; }
  .brand__name small { font-size: 9px !important; }
  .topline__contacts { gap: 10px; }
  .topline__contacts a { font-size: 10px !important; }
}

@media (max-width: 520px) {
  .topline__location { display: none; }
}

.site-footer { border-top: 4px solid var(--red); background: #424447; color: #f4f4f4; }
.footer__main { display: grid; grid-template-columns: 1.35fr 1fr 1fr 1.35fr; align-items: start; gap: 34px; min-height: 0; padding-top: 38px; padding-bottom: 34px; border-top: 0; }
.footer__column { min-width: 0; }
.site-footer .footer__main > .footer__column { grid-column: auto; grid-row: auto; }
.footer__column h2 { margin: 0 0 14px; color: #fff; font-family: var(--font-display); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.footer__about .brand { margin-bottom: 16px; }
.footer__about > p { max-width: 290px; margin: 0; color: #b7b7b7; font-size: 13px; line-height: 1.7; }
.footer__links { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 0; color: #d2d2d2; font-size: 13px; }
.footer__links a { width: auto; color: #d2d2d2 !important; line-height: 1.4; }
.footer__links h2 { width: 100%; }
.footer__links a:hover, .footer__contact a:hover { color: #f07179 !important; }
.footer__contact { display: flex; align-items: flex-start; flex-direction: column; gap: 9px; }
.footer__contact a { color: #d2d2d2; font-size: 13px; line-height: 1.4; }
.footer__contact address { margin-top: 3px; color: #b7b7b7; font-size: 12px; font-style: normal; line-height: 1.65; }
.footer__bottom { min-height: 52px; border-top: 1px solid rgba(255,255,255,.14); background: transparent; color: #b7b7b7; font-size: 11px; }
.footer__bottom a { color: #fff; }

@media (max-width: 900px) {
  .footer__main { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 40px; }
}

@media (max-width: 520px) {
  .footer__main { grid-template-columns: 1fr; gap: 26px; padding-top: 30px; padding-bottom: 28px; }
  .footer__about > p { max-width: none; }
  .footer__bottom { align-items: flex-start; flex-direction: column; gap: 8px; padding-top: 14px; padding-bottom: 14px; }
}

.site-header { background: rgba(247,246,243,.98) !important; border-bottom-color: #e5e2dd !important; }
.site-header .brand__name, .site-header .brand__name strong, .site-header .brand__name > span { color: #424447 !important; }
.site-header .brand__name small { color: #737477 !important; }
.site-header .site-nav { background: #f7f6f3 !important; color: #424447 !important; }
.site-header .site-nav > a:not(.nav-cta) { color: #424447 !important; }
.site-header .site-nav > a:not(.nav-cta):hover,
.site-header .site-nav > a:not(.nav-cta).is-current { color: var(--red) !important; }

.page-banner--photo h1,
.page-banner--photo h1 span {
  color: #fff !important;
}

.page-banner--photo h1 span { color: #f1c2c5 !important; }
.page-banner__inner > div:first-child > p:not(.eyebrow) { font-size: 15px !important; line-height: 1.7; }

@media (max-width: 720px) {
  .page-banner h1 { font-size: clamp(32px, 8vw, 40px) !important; line-height: 1.12; overflow-wrap: anywhere; }
  .page-banner--photo .page-banner__inner { min-height: 440px; }
  .site-header .nav-menu-toggle {
    border-color: #d8d3cc !important;
    background: transparent;
    color: var(--ink) !important;
  }
  .site-header .nav-menu-toggle > span:first-child::before { color: var(--ink) !important; }
}

.site-header {
  background: rgba(66, 68, 71, .98) !important;
  border-bottom-color: #b52d3b !important;
}

.site-header .brand__name,
.site-header .brand__name strong,
.site-header .brand__name > span,
.site-header .brand__name small,
.site-header .site-nav,
.site-header .site-nav > a:not(.nav-cta) {
  background-color: #424447 !important;
  color: #ffffff !important;
}

.site-header .site-nav > a:not(.nav-cta):hover,
.site-header .site-nav > a:not(.nav-cta).is-current {
  color: #f07179 !important;
}

.site-header .nav-menu-toggle {
  border-color: #b52d3b !important;
  color: #ffffff !important;
}

.site-header .nav-menu-toggle > span:first-child::before {
  color: #ffffff !important;
}

@media (max-width: 720px) {
  .site-header .site-nav {
    background: #35373a !important;
  }
}

.site-header .nav-menu-toggle > .nav-menu-icon {
  position: relative;
  width: 20px;
  height: 14px;
  background: linear-gradient(#ffffff, #ffffff) center / 100% 2px no-repeat !important;
}

.site-header .nav-menu-toggle > .nav-menu-icon::before,
.site-header .nav-menu-toggle > .nav-menu-icon::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #ffffff;
  content: "";
}

.site-header .nav-menu-toggle > .nav-menu-icon::before { top: 0; }
.site-header .nav-menu-toggle > .nav-menu-icon::after { bottom: 0; }

.site-header .nav-products-dropdown {
  border-color: rgba(214, 31, 38, .65);
  background: #202226;
  box-shadow: 0 16px 40px rgba(0, 0, 0, .34);
}

.site-header .nav-products-dropdown__all {
  background: #D61F26;
  color: #ffffff;
  font-weight: 700;
}

.site-header .nav-products-dropdown__list a {
  border-bottom-color: rgba(255, 255, 255, .12);
  color: #ffffff;
}

.site-header .nav-products-dropdown__list small {
  color: #d1d1d1;
}

.site-header .nav-products-dropdown__list a:hover,
.site-header .nav-products-dropdown__list a:focus-visible {
  background: rgba(214, 31, 38, .18);
  color: #ffffff;
}

.product-detail-section .product-card {
  scroll-margin-top: 110px;
}

.product-detail-section .product-card:target {
  outline: 2px solid #D61F26;
  outline-offset: 3px;
}

.site-header .nav-product-menu {
  display: flex;
  align-items: center;
  gap: 4px;
}

.site-header .nav-product-menu > a {
  color: #ffffff;
  white-space: nowrap;
}

.site-header .nav-product-menu > a:hover,
.site-header .nav-product-menu > a.is-current {
  color: #f07179;
}

.site-header .nav-product-menu__toggle {
  display: grid;
  width: 28px;
  height: 32px;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
  font-size: 20px;
  line-height: 1;
}

.site-header .nav-product-menu__toggle:hover,
.site-header .nav-product-menu__toggle[aria-expanded="true"] {
  color: #f07179;
}

@media (max-width: 900px) {
  .site-footer .footer__main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer .footer__main > .footer__column {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (max-width: 520px) {
  .site-footer .footer__main {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 1240px) {
  .site-header .nav-product-menu {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr) 40px;
    gap: 0;
  }

  .site-header .nav-product-menu > a {
    padding: 12px 3px;
    border-bottom: 1px solid rgba(181, 45, 59, .65);
  }

  .site-header .nav-product-menu__toggle {
    width: 40px;
    height: 43px;
    border-bottom: 1px solid rgba(181, 45, 59, .65);
  }

  .site-header .nav-products-dropdown {
    position: static;
    width: auto;
    max-height: 42vh;
    grid-column: 1 / -1;
    padding: 9px;
    box-shadow: none;
  }

  .site-header .nav-products-dropdown__list {
    max-height: 32vh;
  }
}

.site-footer {
  position: relative;
}

.topline {
  overflow: hidden;
}

.topline .topline__inner {
  display: flex;
  width: 100%;
  height: 100%;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.topline__marquee {
  display: flex;
  width: 100%;
  align-items: center;
  overflow: hidden;
}

.topline__marquee-track {
  display: flex;
  width: max-content;
  align-items: center;
  animation: topline-marquee 34s linear infinite;
}

.topline__marquee-group {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  gap: 28px;
  padding-right: 48px;
}

.topline .topline__tagline {
  display: inline-block;
  flex: none;
  text-align: center;
  white-space: nowrap;
}

.topline .topline__contacts {
  display: flex;
  flex: none;
  align-items: center;
  gap: 19px;
}

.topline .topline__contacts a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}

.topline .topline__contacts svg {
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}

@keyframes topline-marquee {
  to { transform: translateX(-50%); }
}

@media (max-width: 960px) {
  .topline .topline__inner {
    min-height: 34px;
    padding: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .topline__marquee-track {
    animation: none;
    transform: none;
  }

  .topline__marquee-group[aria-hidden="true"] {
    display: none;
  }
}

.site-header.is-footer-visible {
  transform: translateY(-100%);
}

.whatsapp-float .whatsapp-icon {
  width: 30px;
  height: 30px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Light site theme with restrained red accents. */
:root {
  color-scheme: light;
  --ink: #30343a;
  --muted: #68717a;
  --paper: #f7f8fa;
  --white: #fff;
  --red: #b52d3b;
  --red-dark: #922331;
  --line: #e4e7eb;
  --dark: #30343a;
}

html,
body { color-scheme: light; }

body {
  background: #f7f8fa !important;
  color: #30343a !important;
}

body :is(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, address, small, strong, blockquote) {
  color: #30343a !important;
}

.topline {
  background: #f0f2f4 !important;
  border-bottom: 1px solid #e2e5e9 !important;
  color: #424950 !important;
}

.topline a,
.topline__tagline,
.topline__contacts { color: #424950 !important; }
.topline a:hover { color: var(--red) !important; }

.site-header,
.site-header .site-nav,
.site-header .nav-products-dropdown {
  background: rgba(255,255,255,.98) !important;
  border-color: #e4e7eb !important;
  color: #30343a !important;
}

.site-header .brand__name,
.site-header .brand__name strong,
.site-header .brand__name > span,
.site-header .brand__name small,
.site-header .site-nav > a:not(.nav-cta),
.site-header .nav-product-menu > a,
.site-header .nav-product-menu__toggle { color: #30343a !important; }

.site-header .site-nav > a:not(.nav-cta):hover,
.site-header .site-nav > a:not(.nav-cta).is-current,
.site-header .nav-product-menu > a:hover,
.site-header .nav-product-menu__toggle:hover { color: var(--red) !important; }

.site-header .nav-menu-toggle {
  border-color: #d9dde2 !important;
  background: #fff !important;
  color: #30343a !important;
}

.site-header .nav-menu-toggle > .nav-menu-icon {
  background: linear-gradient(#30343a, #30343a) center / 100% 2px no-repeat !important;
}

.site-header .nav-menu-toggle > .nav-menu-icon::before,
.site-header .nav-menu-toggle > .nav-menu-icon::after { background: #30343a !important; }

.site-header .nav-products-dropdown {
  border-color: #e1e4e8 !important;
  background: #fff !important;
  box-shadow: 0 16px 40px rgba(40,48,56,.14) !important;
}

.site-header .nav-products-dropdown__all { background: #fbefef !important; color: #8d2733 !important; }
.site-header .nav-products-dropdown__list a { border-color: #eceef1 !important; color: #343a40 !important; }
.site-header .nav-products-dropdown__list small { color: #727a82 !important; }
.site-header .nav-products-dropdown__list a:hover,
.site-header .nav-products-dropdown__list a:focus-visible { background: #fff6f6 !important; color: var(--red) !important; }

.site-nav { border-color: #e4e7eb !important; }

.hero:not(.hero--catalogue),
.page-banner:not(.page-banner--photo) {
  background: linear-gradient(120deg, #fff 0%, #f5f6f8 62%, #f0f1f3 100%) !important;
  color: #30343a !important;
}

.hero:not(.hero--catalogue)::before { background: radial-gradient(ellipse at 78% 48%, rgba(181,45,59,.08), transparent 46%), linear-gradient(112deg,#fff,#f5f6f8 58%,#eff1f3) !important; }
.hero:not(.hero--catalogue) .hero__grid { opacity: .24; }
.hero:not(.hero--catalogue) :is(h1, .eyebrow, .hero__note, .hero__serial, .hero__visual-index, .hero__bottom-inner) { color: #30343a !important; }
.hero:not(.hero--catalogue) .hero__lead,
.page-banner:not(.page-banner--photo) .page-banner__inner > div:first-child > p:not(.eyebrow) { color: #626b74 !important; }
.hero:not(.hero--catalogue) h1 span,
.page-banner:not(.page-banner--photo) h1 span { color: var(--red) !important; }
.hero:not(.hero--catalogue) .button--outline { border-color: #b7bdc4 !important; color: #343a40 !important; }
.hero:not(.hero--catalogue) .hero__bottom { border-color: #e0e3e7 !important; }

.page-banner:not(.page-banner--photo) { color: #30343a !important; }
.page-banner:not(.page-banner--photo) :is(h1, h1 span, .eyebrow, .page-banner__crumb, .page-banner__inner > div:first-child > p:not(.eyebrow)) { color: #30343a !important; }
.page-banner:not(.page-banner--photo) h1 span { color: var(--red) !important; }
.page-banner:not(.page-banner--photo)::before { opacity: .2 !important; }

.section,
.products-section,
.home-products,
.about-section,
.about-story,
.family-section,
.applications-section,
.why-choose-section,
.performance-section,
.industries-section,
.about-values,
.why-reasons,
.why-checklist,
.home-why,
.inquiry-section,
.industry-section,
.contact-section,
.contact-page-section {
  background: #fff !important;
  color: #30343a !important;
}

.why-checklist,
.home-why,
.inquiry-section,
.industry-section,
.contact-section { background: #f6f7f9 !important; }

.section-heading h2,
.industry__copy h2,
.about__copy h2,
.home-why__inner h2,
.about-story h2,
.about-values h2,
.why-intro h2,
.why-reasons h2,
.why-checklist h2,
.inquiry__intro h2,
.product-detail-information h2,
.section-title,
.contact__inner h2 { color: #30343a !important; }

.section-subtitle,
.section-heading__aside,
.about-section__description,
.industry__copy > p:not(.eyebrow),
.contact__action p,
.inquiry__intro > p:not(.eyebrow),
.family-card p,
.application-card p,
.product-card__description,
.product-detail-information > p:not(.eyebrow) { color: #68717a !important; }

.about-values__grid,
.about-values__grid article,
.why-reasons__grid article { border-color: #e4e7eb !important; }

.about-values__grid article,
.why-reasons__grid article,
.product-card,
.family-card,
.application-card,
.contact-channel-card,
.contact-address-card,
.inquiry-form,
.checklist-card,
.contact-item,
.product-detail-card,
.stat-card,
.feature-card,
.spec-card {
  background: #fff !important;
  border-color: #e1e5e9 !important;
  color: #30343a !important;
  box-shadow: 0 8px 24px rgba(35,43,51,.07) !important;
}

.product-card :is(h3, p, strong, span, a),
.family-card :is(h3, p, strong, span, a),
.application-card :is(h3, p, strong, span, a),
.contact-channel-card :is(h3, p, strong, span, a),
.contact-address-card :is(h3, p, strong, span, a),
.why-reasons__grid article :is(h3, p, strong, span, a),
.about-values__grid article :is(h3, p, strong, span, a),
.checklist-card :is(h3, p, strong, span, small),
.product-detail-card :is(h3, p, strong, span, dt, dd) { color: #30343a !important; }

.product-card__visual,
.product-card__image,
.application-card__image { background: #f3f5f7 !important; border-color: #e1e5e9 !important; }
.family-card__symbol,
.why-symbol,
.proof-icon,
.contact-item__icon,
.contact-channel-card__icon { background: #f5f6f8 !important; border-color: #e1e5e9 !important; color: var(--red) !important; }
.product-card__series,
.product-card__link,
.family-card__symbol,
.family-card__link b,
.application-card > span,
.application-card a b,
.contact-channel-card a,
.contact-address-card a,
.inquiry__help a,
.inquiry__website { color: var(--red) !important; }
.product-card__specs,
.family-card__link,
.application-card,
.application-checks,
.application-checks > div,
.home-why__steps,
.home-why__steps > div { border-color: #e4e7eb !important; }
.catalog-note,
.product-detail-card { background: #f5f6f8 !important; }
.product-detail-specs > div { border-color: #e4e7eb !important; background: #fff !important; }
.product-detail-specs dd,
.checklist-card > div p,
.application-checks > div { color: #454d55 !important; }
.filter-chip.is-active { border-color: #e2c7ca !important; background: #fbefef !important; color: #852630 !important; }
.search-box,
.form-field > input,
.form-field > select,
.form-field > textarea { border-color: #d9dee3 !important; background: #fff !important; color: #30343a !important; }
.form-field > input::placeholder,
.form-field > textarea::placeholder { color: #838b93 !important; }
.form-field > select option { background: #fff !important; color: #30343a !important; }

.contact__inner .eyebrow,
.contact__download,
.text-link,
.contact__action p { color: #555e67 !important; }
.contact__ring { border-color: rgba(48,52,58,.12) !important; }

.site-footer {
  border-top: 3px solid var(--red) !important;
  background: #f0f2f4 !important;
  color: #424950 !important;
}

.site-footer :is(h2, p, address, a, span, small, strong) { color: #424950 !important; }
.site-footer a:hover { color: var(--red) !important; }
.site-footer .brand__name,
.site-footer .brand__name strong,
.site-footer .brand__name > span { color: #30343a !important; }
.site-footer .brand__name small,
.site-footer .footer__main > p,
.site-footer .footer__office address,
.site-footer .footer__contact a,
.site-footer .footer__bottom { color: #68717a !important; }
.site-footer .footer__details,
.site-footer .footer__bottom { border-color: #dfe3e7 !important; }
.site-footer .footer__bottom { background: #e8ebef !important; }

@media (max-width: 720px) {
  .site-header .site-nav { background: #fff !important; border-color: #e4e7eb !important; }
  .site-header .site-nav > a:not(.nav-cta),
  .site-header .site-nav .nav-product-menu > a,
  .site-header .site-nav .nav-product-menu__toggle { color: #30343a !important; border-color: #e4e7eb !important; }
}

/* Logo palette: white surfaces, Flowmake charcoal, and seal red. */
:root {
  --ink: #424447;
  --muted: #6f7276;
  --paper: #f7f7f7;
  --white: #fff;
  --red: #b52d3b;
  --red-dark: #922331;
  --line: #e3e4e6;
  --dark: #424447;
}

body { background: #f7f7f7 !important; color: #424447 !important; }

.topline {
  background: #424447 !important;
  border-bottom-color: #b52d3b !important;
  color: #fff !important;
}

.topline :is(a, span) { color: #fff !important; }
.topline a:hover { color: #f3c6ca !important; }

.site-header {
  background: rgba(255,255,255,.98) !important;
  border-bottom-color: #e3e4e6 !important;
}

.site-header .brand__name,
.site-header .brand__name strong,
.site-header .brand__name > span,
.site-header .site-nav > a:not(.nav-cta),
.site-header .nav-product-menu > a,
.site-header .nav-product-menu__toggle { color: #424447 !important; }

.site-header .brand__name small { color: #6f7276 !important; }

.site-header .nav-products-dropdown__all {
  background: #f8eeee !important;
  color: #922331 !important;
}

.site-header .nav-products-dropdown__list a { color: #424447 !important; }
.site-header .nav-products-dropdown__list a:hover,
.site-header .nav-products-dropdown__list a:focus-visible {
  background: #fbf4f4 !important;
  color: #922331 !important;
}

.site-footer {
  background: #424447 !important;
  border-top-color: #b52d3b !important;
  color: #fff !important;
}

.site-footer :is(h2, a, span, strong) { color: #fff !important; }
.site-footer :is(p, address, small, .footer__bottom) { color: #e0e0e1 !important; }
.site-footer .brand__name,
.site-footer .brand__name strong,
.site-footer .brand__name > span { color: #fff !important; }
.site-footer .brand__name small { color: #e0e0e1 !important; }
.site-footer a:hover { color: #f3a8ae !important; }
.site-footer .footer__details,
.site-footer .footer__bottom { border-color: rgba(255,255,255,.2) !important; }
.site-footer .footer__bottom { background: rgba(0,0,0,.12) !important; }

.about-values,
.why-reasons,
.contact-section {
  background: #424447 !important;
  color: #fff !important;
}

body .about-values :is(h1, h2, h3, h4, p, span, strong, li, .eyebrow),
body .why-reasons :is(h1, h2, h3, h4, p, span, strong, li, .eyebrow),
body .contact-section :is(h1, h2, h3, h4, p, span, strong, li, .eyebrow, a:not(.button)) {
  color: #fff !important;
}

.about-values__grid article,
.why-reasons__grid article {
  background: rgba(255,255,255,.07) !important;
  border-color: rgba(255,255,255,.2) !important;
}

.about-values__grid article > span,
.why-reasons__grid article > span,
.why-symbol,
.why-number { color: #f3a8ae !important; }

.contact-section .button,
.contact-section .button--light { background: #b52d3b !important; color: #fff !important; }
.contact-section .button:hover,
.contact-section .button--light:hover { background: #922331 !important; }

@media (max-width: 720px) {
  .site-header .site-nav { background: #fff !important; }
  .site-header .site-nav > a:not(.nav-cta),
  .site-header .site-nav .nav-product-menu > a,
  .site-header .site-nav .nav-product-menu__toggle { color: #424447 !important; }
}

/* White and Flowmake red surfaces, black copy, and red action buttons. */
:root {
  color-scheme: light;
  --ink: #171719;
  --muted: #45464a;
  --paper: #fff;
  --white: #fff;
  --red: #b52d3b;
  --red-dark: #922331;
  --line: #eadadd;
  --dark: #171719;
}

html,
body { color-scheme: light; }

body {
  background: #fff !important;
  color: #171719 !important;
}

body :is(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, address, small, strong, blockquote, figcaption) {
  color: #171719 !important;
}

.topline {
  background: #fff !important;
  border-bottom: 2px solid #b52d3b !important;
  color: #171719 !important;
}

.topline :is(a, span) { color: #171719 !important; }
.topline a:hover { color: #922331 !important; }

.site-header,
.site-header .site-nav,
.site-header .nav-products-dropdown {
  background: #fff !important;
  border-color: #eadadd !important;
}

.site-header .brand__name,
.site-header .brand__name strong,
.site-header .brand__name > span,
.site-header .brand__name small,
.site-header .site-nav > a:not(.nav-cta),
.site-header .nav-product-menu > a,
.site-header .nav-product-menu__toggle { color: #171719 !important; }

.site-header .site-nav > a:not(.nav-cta):hover,
.site-header .site-nav > a:not(.nav-cta).is-current,
.site-header .nav-product-menu > a:hover,
.site-header .nav-product-menu__toggle:hover { color: #b52d3b !important; }

.site-header .nav-products-dropdown {
  border-color: #e8cdd1 !important;
  background: #fff !important;
}

.site-header .nav-products-dropdown__all { background: #b52d3b !important; color: #fff !important; }
.site-header .nav-products-dropdown__list a,
.site-header .nav-products-dropdown__list small { color: #171719 !important; }
.site-header .nav-products-dropdown__list a:hover,
.site-header .nav-products-dropdown__list a:focus-visible { background: #fff0f1 !important; color: #922331 !important; }

.site-footer {
  background: #fff !important;
  border-top: 4px solid #b52d3b !important;
  color: #171719 !important;
}

.site-footer :is(h2, p, address, a, span, small, strong, .footer__bottom) { color: #171719 !important; }
.site-footer .brand__name,
.site-footer .brand__name strong,
.site-footer .brand__name > span,
.site-footer .brand__name small { color: #171719 !important; }
.site-footer a:hover { color: #b52d3b !important; }
.site-footer .footer__details,
.site-footer .footer__bottom { border-color: #eadadd !important; }
.site-footer .footer__bottom { background: #fff4f5 !important; }

.section,
.products-section,
.home-products,
.about-section,
.about-story,
.family-section,
.applications-section,
.why-choose-section,
.performance-section,
.industries-section,
.about-values,
.why-reasons,
.why-checklist,
.home-why,
.inquiry-section,
.industry-section,
.contact-section,
.contact-page-section,
.inquiry-page__section {
  background-color: #fff !important;
  color: #171719 !important;
}

.about-values,
.why-reasons,
.industry-section,
.home-why,
.why-checklist,
.inquiry-section,
.contact-section,
.contact-page-section,
.inquiry-page__bottom-cta {
  background: #fff0f1 !important;
  border-top-color: #b52d3b !important;
  border-bottom-color: #eadadd !important;
}

.section-heading :is(h2, p),
.section-title,
.section-subtitle,
.section-heading__aside,
.about-section__description,
.about-story :is(h2, p),
.about-values :is(h2, h3, p),
.why-intro :is(h2, p),
.why-reasons :is(h2, h3, p),
.why-checklist :is(h2, h3, p, small),
.industry-section :is(h2, p, a),
.contact-section :is(h2, p, a:not(.button)),
.contact-page-section :is(h1, h2, h3, p, address, a),
.inquiry-page__section :is(h2, h3, p, label, small),
.inquiry-page__bottom-cta h2,
.inquiry__intro :is(h2, p),
.product-detail-information :is(h2, p),
.family-card :is(h3, p),
.application-card :is(h3, p),
.product-card :is(h3, p),
.checklist-card :is(h3, p, small) { color: #171719 !important; }

.product-card,
.family-card,
.application-card,
.contact-channel-card,
.contact-address-card,
.inquiry-form,
.checklist-card,
.contact-item,
.product-detail-card,
.stat-card,
.feature-card,
.spec-card,
.about-values__grid article,
.why-reasons__grid article,
.inquiry-page__form-card {
  background: #fff !important;
  border-color: #e8cdd1 !important;
  color: #171719 !important;
  box-shadow: 0 8px 24px rgba(70,20,28,.07) !important;
}

.product-card :is(h3, p, strong, span, a),
.family-card :is(h3, p, strong, span, a),
.application-card :is(h3, p, strong, span, a),
.contact-channel-card :is(h3, p, strong, span, a),
.contact-address-card :is(h3, p, strong, span, a),
.inquiry-form :is(h2, p, label, small),
.checklist-card :is(h3, p, span, small),
.contact-item :is(h3, p, span, a),
.product-detail-card :is(h3, p, strong, span, dt, dd),
.stat-card :is(h3, p, strong, span),
.feature-card :is(h3, p, strong, span),
.spec-card :is(h3, p, strong, span),
.inquiry-page__form-card :is(h2, p, label, small) { color: #171719 !important; }

.product-card__visual,
.product-card__image,
.application-card__image,
.family-card__symbol,
.why-symbol,
.proof-icon,
.contact-item__icon,
.contact-channel-card__icon,
.feature-card__icon {
  background: #fff4f5 !important;
  border-color: #e8cdd1 !important;
  color: #b52d3b !important;
}

.product-card__series,
.product-card__link,
.family-card__symbol,
.family-card__link b,
.application-card > span,
.application-card a b,
.contact-channel-card a,
.contact-address-card a,
.inquiry__help a,
.inquiry__website,
.why-number,
.why-symbol { color: #b52d3b !important; }

.product-card__specs,
.family-card__link,
.catalog-toolbar,
.application-checks,
.application-checks > div,
.home-why__steps,
.home-why__steps > div { border-color: #eadadd !important; }

.filter-chip.is-active,
.catalog-note,
.product-detail-card,
.product-detail-specs > div { background: #fff4f5 !important; }

.search-box,
.form-field > input,
.form-field > select,
.form-field > textarea,
.inquiry-page__field > input,
.inquiry-page__field > select,
.inquiry-page__field > textarea {
  border-color: #d9c7ca !important;
  background: #fff !important;
  color: #171719 !important;
}

.form-field > input::placeholder,
.form-field > textarea::placeholder,
.inquiry-page__field > input::placeholder,
.inquiry-page__field > textarea::placeholder { color: #555 !important; }

.hero:not(.hero--catalogue),
.page-banner:not(.page-banner--photo) {
  background: linear-gradient(120deg,#fff 0%,#fff 72%,#fff0f1 100%) !important;
  color: #171719 !important;
}

.hero:not(.hero--catalogue)::before {
  background: radial-gradient(ellipse at 80% 45%,rgba(181,45,59,.09),transparent 44%),
    linear-gradient(112deg,#fff,#fff 68%,#fff0f1) !important;
}

.hero:not(.hero--catalogue) :is(h1, h1 span, p, .eyebrow, .hero__note, .hero__serial, .hero__visual-index, .hero__bottom-inner),
.page-banner:not(.page-banner--photo) :is(h1, h1 span, p, .eyebrow, .page-banner__crumb) { color: #171719 !important; }

.hero:not(.hero--catalogue) .hero__bottom,
.hero:not(.hero--catalogue) .hero__orbit { border-color: rgba(181,45,59,.25) !important; }
.hero:not(.hero--catalogue) .visual-tag { background: #fff !important; border-color: #e8cdd1 !important; color: #171719 !important; }

.page-banner--photo::after {
  background: linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.9) 44%,rgba(255,255,255,.34) 100%) !important;
}

.page-banner--contact::after {
  background: linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 58%,rgba(255,255,255,.28) 100%) !important;
}

.page-banner--photo :is(h1, h1 span, p, .eyebrow, .page-banner__crumb, a) { color: #171719 !important; }
.page-banner--photo h1 span { color: #b52d3b !important; }
.page-banner--photo .eyebrow__dash { background: #b52d3b !important; }

.page-banner--mechanical {
  width: 100%;
  overflow: hidden;
  background: #eaf1f9 !important;
}

.page-banner--mechanical::before { display: none; }

.page-banner--mechanical img.why-mechanical-hero-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2170 / 725;
  object-fit: cover;
}

.why-reasons-banner {
  width: 100%;
  overflow: hidden;
  background: #fff;
}

.why-reasons-banner img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2172 / 724;
  object-fit: contain;
}

.hero--catalogue { color: #171719 !important; }
.hero--catalogue .hero__slide::before {
  background: linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 43%,rgba(255,255,255,.22) 75%,rgba(255,255,255,.08) 100%),
    linear-gradient(0deg,rgba(181,45,59,.08),transparent 45%) !important;
}
.hero--catalogue .hero__copy :is(h1, h1 span, p, .eyebrow),
.hero--catalogue .hero__bottom-inner { color: #171719 !important; }
.hero--catalogue .hero__copy h1 span { color: #b52d3b !important; }
.hero--catalogue .hero__bottom { background: rgba(255,255,255,.82) !important; border-color: #e8cdd1 !important; }
.hero--catalogue .hero-product-label { background: #b52d3b !important; color: #fff !important; }
.hero--catalogue .hero-product-label :is(strong, span) { color: #fff !important; }
.hero--catalogue .visual-tag { background: #fff !important; border-color: #e8cdd1 !important; color: #171719 !important; }

body :is(.button, .btn, .nav-cta, .inquiry-submit, .inquiry-page__submit, .inquiry-page__bottom-inner > a, .floating-cta, .contact-cta .btn, .product-card__link, .contact-section .button) {
  background: #b52d3b !important;
  border-color: #b52d3b !important;
  color: #fff !important;
}

body :is(.button, .btn, .nav-cta, .inquiry-submit, .inquiry-page__submit, .inquiry-page__bottom-inner > a, .floating-cta, .contact-cta .btn):hover {
  background: #922331 !important;
  border-color: #922331 !important;
  color: #fff !important;
}

.button :is(span, strong),
.btn :is(span, strong),
.nav-cta span,
.inquiry-page__submit span,
.inquiry-page__bottom-inner > a span { color: #fff !important; }

.industry-tag {
  border-color: #b52d3b !important;
  background: #fff !important;
  color: #171719 !important;
}

.industry-tag:hover { background: #fff0f1 !important; }

#main :is(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, address, small, strong, blockquote, figcaption) {
  color: #171719 !important;
}

#main :is(.button, .btn, .nav-cta, .inquiry-submit, .inquiry-page__submit, .inquiry-page__bottom-inner > a, .floating-cta) {
  background: #b52d3b !important;
  border-color: #b52d3b !important;
  color: #fff !important;
}

#main :is(.button, .btn, .nav-cta, .inquiry-submit, .inquiry-page__submit, .inquiry-page__bottom-inner > a, .floating-cta) :is(span, strong) {
  color: #fff !important;
}

@media (max-width: 720px) {
  .site-header .site-nav { background: #fff !important; }
  .site-header .site-nav > a:not(.nav-cta),
  .site-header .site-nav .nav-product-menu > a,
  .site-header .site-nav .nav-product-menu__toggle { color: #171719 !important; }
}

/* Keep footer typography identical across every page and breakpoint. */
.site-footer .footer__column h2 {
  margin: 0 0 14px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: .04em !important;
}

.site-footer .footer__about > p,
.site-footer .footer__links a,
.site-footer .footer__contact a,
.site-footer .footer__contact address {
  font-size: 14px !important;
  line-height: 1.6 !important;
}

.site-footer .footer__links,
.site-footer .footer__contact {
  gap: 10px !important;
}

.site-footer .brand--footer .brand__name { font-size: 18px !important; }
.site-footer .brand--footer .brand__name small { font-size: 11px !important; }

.site-footer .footer__bottom,
.site-footer .footer__bottom span,
.site-footer .footer__bottom a {
  font-size: 12px !important;
  line-height: 1.5 !important;
}
