/* Iannello Inox 2.0.1 — Final Delivery
 * Premium editorial interaction, Iannello red/white/steel identity.
 */
:root {
  --qv-final-red: #df0a14;
  --qv-final-red-dark: #920b17;
  --qv-final-black: #101112;
  --qv-final-ink: #17191b;
  --qv-final-steel: #dfe2e3;
  --qv-final-steel-light: #f5f6f6;
  --qv-final-line: #d7d9da;
  --qv-final-white: #fff;
  --qv-final-gutter: max(clamp(1.25rem, 4.4vw, 5rem), calc((100vw - 88rem) / 2));
}

html { scroll-behavior: smooth; }
body.qv-site { background: #fff; color: var(--qv-final-ink); }
body.qv-site :where(h1,h2,h3,h4,p,li,a,strong,span,small,address,dt,dd) {
  hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal;
}
body.qv-site :where(h1,h2,h3) { text-wrap: balance; }
body.qv-site :where(p,li) { text-wrap: pretty; }

/* Header: compact red after scroll, always a bar, never an overlay-sized container. */
.qv-header {
  height: auto !important;
  min-height: 0 !important;
  max-height: 92px !important;
  overflow: visible !important;
  contain: layout style;
}
.qv-header__inner {
  min-height: 88px !important;
  height: 88px !important;
  max-height: 88px !important;
  padding-inline: var(--qv-final-gutter) !important;
}
.qv-header.qv-header--compact {
  height: 72px !important;
  min-height: 72px !important;
  max-height: 72px !important;
  background: rgb(200 16 34 / 98%) !important;
  box-shadow: 0 1px 0 rgb(255 255 255 / 18%), 0 12px 30px rgb(40 0 5 / 12%) !important;
}
.qv-header.qv-header--compact .qv-header__inner {
  height: 72px !important;
  min-height: 72px !important;
  max-height: 72px !important;
}
.home .qv-header:not(.qv-header--compact) {
  background: linear-gradient(180deg, rgb(0 0 0 / 58%) 0%, rgb(0 0 0 / 16%) 72%, transparent 100%) !important;
}
.home .qv-header.qv-header--compact :where(a,a:visited,button,summary),
.qv-header.qv-header--compact :where(a,a:visited,button,summary) { color: #fff !important; }
.qv-header.qv-header--compact .qv-brand__dark { display: none !important; }
.qv-header.qv-header--compact .qv-brand__light { display: block !important; }
.qv-header.qv-header--compact .qv-button--header,
.qv-header.qv-header--compact .qv-button--header:visited {
  border-color: #fff !important;
  background: #fff !important;
  color: var(--qv-final-red) !important;
}
.qv-header.qv-header--compact .qv-button--header:hover,
.qv-header.qv-header--compact .qv-button--header:focus-visible {
  background: transparent !important;
  color: #fff !important;
}
.qv-navigation--mobile,
.qv-search-panel { top: 0; height: 100dvh; max-height: 100dvh; }
.qv-navigation--mobile:not([data-open]),
.qv-search-panel:not([data-open]) { display: none !important; }

/* Hero: content left, neutral black overlay. */
.qv-home--final .qv-hero--v3 { background: #080909 !important; }
.qv-home--final .qv-hero--v3 .qv-hero__media::after {
  background:
    linear-gradient(90deg, rgb(0 0 0 / 88%) 0%, rgb(0 0 0 / 64%) 42%, rgb(0 0 0 / 13%) 78%),
    linear-gradient(0deg, rgb(0 0 0 / 76%) 0%, transparent 56%) !important;
}
.qv-home--final .qv-hero--v3 .qv-hero__shade {
  background: radial-gradient(circle at 76% 42%, rgb(255 255 255 / 7%) 0 18%, transparent 48%) !important;
}
.qv-home--final .qv-hero__brand-line {
  background: linear-gradient(180deg, transparent 7%, #fff 32%, var(--qv-final-red) 80%, transparent 96%);
}
.qv-home--final .qv-hero--v3 .qv-hero__content {
  justify-items: start !important;
  text-align: left !important;
  grid-template-columns: minmax(0, 1fr) auto;
  width: min(calc(100% - 2 * var(--qv-final-gutter)), 88rem) !important;
  margin-inline: auto !important;
}
.qv-home--final .qv-hero--v3 .qv-hero__copy { justify-self: start; max-width: 67rem; }
.qv-home--final .qv-hero--v3 h1 { max-width: 11ch; }
.qv-home--final .qv-hero--v3 .qv-hero__intro { max-width: 46rem; }

/* Global section spacing and safe typography. */
.qv-home--final .qv-home-section,
.qv-home--final .qv-lead { padding-inline: var(--qv-final-gutter) !important; }
.qv-home--final .qv-section-heading--editorial {
  gap: clamp(2rem, 6vw, 6rem) !important;
  align-items: end;
}
.qv-home--final .qv-section-heading--editorial h2,
.qv-home--final .qv-process-system__heading h2,
.qv-home--final .qv-credibility__headline h2,
.qv-home--final .qv-lead__intro h2 {
  max-width: 16ch !important;
  line-height: 1.01 !important;
  letter-spacing: -0.045em !important;
}
.qv-home--final .qv-section-heading--editorial > :last-child { min-width: 0; }

/* Product section: steel/silver rather than red. */
.qv-home--final .qv-products--v3 {
  background:
    radial-gradient(circle at 12% 18%, rgb(255 255 255 / 90%), transparent 34%),
    linear-gradient(135deg, #f8f9f9 0%, #d7dbdc 48%, #f6f7f7 100%) !important;
  border-block: 1px solid #d1d5d6;
}
.qv-home--final .qv-products--v3 .qv-product-card { background: #202224; }
.qv-home--final .qv-products--v3 .qv-product-card__shade {
  background: linear-gradient(0deg, rgb(0 0 0 / 88%) 0%, rgb(0 0 0 / 18%) 60%, transparent 100%) !important;
}

/* Reusable dynamic media, inspired by editorial automotive compositions. */
.qv-heading-aside,
.qv-services-side,
.qv-footer__cta-side { display: grid; gap: 1.2rem; align-content: end; min-width: 0; }
.qv-motion-visual {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 10.5rem;
  background: #c9cdce;
  clip-path: polygon(0 0, 100% 0, 100% 84%, 86% 100%, 0 100%);
  isolation: isolate;
}
.qv-motion-visual img {
  width: 100%; height: 100%; min-height: inherit; object-fit: cover;
  filter: saturate(.72) contrast(1.08);
  transition: transform 900ms cubic-bezier(.22,1,.36,1), filter 500ms ease;
}
.qv-motion-visual::after {
  position: absolute; inset: 0;
  background: linear-gradient(110deg, transparent 0 48%, rgb(255 255 255 / 34%) 50%, transparent 52% 100%);
  transform: translateX(-120%);
  content: "";
  z-index: 2;
}
.qv-motion-visual span {
  position: absolute; right: 1rem; bottom: 1rem; width: 4.5rem; height: 3px;
  background: var(--qv-final-red); z-index: 3;
}
.qv-motion-visual:hover img { transform: scale(1.055); filter: saturate(.92) contrast(1.05); }
.qv-motion-visual:hover::after { animation: qv-final-sweep 900ms ease; }
@keyframes qv-final-sweep { to { transform: translateX(120%); } }
.qv-motion-visual--services { min-height: 12.5rem; }
.qv-motion-visual--footer { min-height: 9.5rem; }

/* Journeys: keep all text dark on hover; use red as a layered surface. */
.qv-home--final .qv-journeys--v3 {
  background: #fff !important;
  border-bottom: 1px solid var(--qv-final-line);
}
.qv-home--final .qv-journeys--v3 .qv-journeys__grid { background: #d7d9da; border-color: #d7d9da; }
.qv-home--final .qv-journeys--v3 .qv-journey {
  position: relative; isolation: isolate; overflow: hidden;
  background: #fff !important; color: var(--qv-final-ink) !important;
}
.qv-home--final .qv-journeys--v3 .qv-journey::before {
  position: absolute; inset: auto 0 0; height: 0;
  background: linear-gradient(135deg, #f7d9dd 0%, #e64655 100%);
  transition: height 520ms cubic-bezier(.22,1,.36,1);
  content: ""; z-index: -1;
}
.qv-home--final .qv-journeys--v3 .qv-journey:hover,
.qv-home--final .qv-journeys--v3 .qv-journey:focus-within {
  background: #fff !important; color: var(--qv-final-ink) !important; transform: translateY(-.35rem);
}
.qv-home--final .qv-journeys--v3 .qv-journey:hover::before,
.qv-home--final .qv-journeys--v3 .qv-journey:focus-within::before { height: 100%; }
.qv-home--final .qv-journeys--v3 .qv-journey :where(h3,p,a,a:visited),
.qv-home--final .qv-journeys--v3 .qv-journey:hover :where(h3,p,a,a:visited),
.qv-home--final .qv-journeys--v3 .qv-journey:focus-within :where(h3,p,a,a:visited) {
  color: var(--qv-final-ink) !important;
}
.qv-home--final .qv-journeys--v3 .qv-journey > span,
.qv-home--final .qv-journeys--v3 .qv-journey:hover > span { color: var(--qv-final-red-dark) !important; }

/* Process cards: no separator glyphs, each machine label on its own line. */
.qv-home--final .qv-process-system { background: #fff; }
.qv-home--final .qv-process-card__body { min-width: 0; }
.qv-home--final .qv-process-card__body strong { max-width: 18ch !important; line-height: 1.05 !important; }
.qv-process-card__machines {
  display: grid !important; gap: .22rem; margin-top: 1.15rem;
  color: #4f5457;
}
.qv-process-card__machines i {
  display: block; color: inherit; font-style: normal; line-height: 1.35;
}

/* Credibility: line-safe values and descriptions. */
.qv-home--final .qv-credibility--v3 { background: #fff !important; }
.qv-home--final .qv-credibility__list li { align-items: center; }
.qv-home--final .qv-credibility__list strong { line-height: 1 !important; }
.qv-home--final .qv-credibility__list li > span:last-child { line-height: 1.45 !important; }

/* Services: dynamic media on the right, steel hover. */
.qv-home--final .qv-services-home--v3 { background: #fff !important; }
.qv-home--final .qv-services-side > p { margin: 0; color: #555b5e; }
.qv-home--final .qv-services-home__grid article {
  background: #fff !important; color: var(--qv-final-ink) !important;
  transition: background 350ms ease, transform 350ms ease, box-shadow 350ms ease;
}
.qv-home--final .qv-services-home__grid article:hover,
.qv-home--final .qv-services-home__grid article:focus-within {
  background: linear-gradient(135deg, #f9fafa, #cfd3d4) !important;
  transform: translateY(-.25rem);
  box-shadow: 0 18px 45px rgb(25 28 30 / 10%);
}
.qv-home--final .qv-services-home__grid article :where(h3,p,span),
.qv-home--final .qv-services-home__grid article:hover :where(h3,p,span) { color: var(--qv-final-ink) !important; }
.qv-home--final .qv-services-home__grid article > span { color: var(--qv-final-red) !important; }

/* Lead: safe line breaks and white surface. */
.qv-home--final .qv-lead--v3 { background: #fff !important; }
.qv-home--final .qv-lead__intro,
.qv-home--final .qv-lead__form-wrap { min-width: 0; }
.qv-home--final .qv-lead__intro h2 { max-width: 13ch !important; }
.qv-home--final .qv-lead__intro > p { max-width: 42rem; }

/* Footer: red conversion panel, steel information area, black credit bar. */
.qv-footer--final { background: var(--qv-final-steel) !important; color: var(--qv-final-ink) !important; }
.qv-footer--final .qv-footer__cta {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, .65fr);
  gap: clamp(2.5rem, 7vw, 7rem); align-items: end;
  background: var(--qv-final-red) !important; color: #fff !important;
}
.qv-footer--final .qv-footer__cta :where(h2,p,.qv-kicker,a,a:visited) { color: #fff !important; }
.qv-footer--final .qv-footer__grid {
  background: linear-gradient(135deg, #eef0f0 0%, #cfd3d4 55%, #f3f4f4 100%) !important;
  color: var(--qv-final-ink) !important;
}
.qv-footer--final .qv-footer__grid :where(h3,a,a:visited,address,p,small,span) { color: var(--qv-final-ink) !important; }
.qv-footer--final .qv-footer__brand img { filter: none !important; }
.qv-footer--final .qv-footer__bottom {
  min-height: 88px;
  background: #090a0b !important; color: #fff !important; border: 0 !important;
}
.qv-footer--final .qv-footer__bottom > span { color: rgb(255 255 255 / 72%); }
.qv-footer--final .qv-footer__credit {
  display: flex; align-items: center; justify-content: flex-end; gap: .9rem;
  color: #fff !important; text-decoration: none;
}
.qv-footer--final .qv-footer__credit span { color: rgb(255 255 255 / 72%); font-size: .68rem; text-transform: uppercase; letter-spacing: .1em; }
.qv-footer--final .qv-footer__credit img { width: min(12.5rem, 42vw); max-height: 2.6rem; object-fit: contain; filter: brightness(0) invert(1); }
.qv-text-action--white,
.qv-text-action--white:visited { color: #fff !important; }

/* Listing and detail pages. */
.qv-page-hero--dark,
.qv-listing .qv-page-hero {
  background: linear-gradient(135deg, #f8f9f9 0%, #d9ddde 100%) !important;
  color: var(--qv-final-ink) !important;
}
.qv-listing .qv-page-hero :where(h1,p,.qv-page-hero__eyebrow) { color: var(--qv-final-ink) !important; }
.qv-content-grid { background: #fff; }
.qv-content-card { background: #fff; border: 1px solid #dfe1e2; }
.qv-content-card__body h2 { line-height: 1.08; }

.qv-detail { background: #fff; color: var(--qv-final-ink); }
.qv-detail-hero {
  position: relative; min-height: min(82svh, 58rem); display: grid; align-items: end;
  overflow: hidden; background: #0b0c0d; color: #fff;
}
.qv-detail-hero__media,
.qv-detail-hero__shade { position: absolute; inset: 0; }
.qv-detail-hero__media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.06); }
.qv-detail-hero__shade { background: linear-gradient(90deg, rgb(0 0 0 / 88%) 0%, rgb(0 0 0 / 52%) 50%, transparent 85%), linear-gradient(0deg, rgb(0 0 0 / 72%), transparent 55%); }
.qv-detail-hero__content {
  position: relative; z-index: 2; width: min(calc(100% - 2 * var(--qv-final-gutter)), 88rem); margin-inline: auto;
  padding: clamp(10rem, 17vw, 14rem) 0 clamp(5rem, 9vw, 8rem);
}
.qv-detail-hero__content h1,
.qv-service-hero h1 { max-width: 13ch; margin: .25em 0; font-size: clamp(3rem, 6.6vw, 7rem); line-height: .94; letter-spacing: -.055em; }
.qv-detail-hero__content > p:not(.qv-kicker) { max-width: 48rem; color: rgb(255 255 255 / 82%); font-size: clamp(1.05rem, 1.5vw, 1.3rem); line-height: 1.65; }
.qv-detail-shell { width: min(calc(100% - 2 * var(--qv-final-gutter)), 88rem); margin-inline: auto; }
.qv-detail-section { padding: clamp(5rem, 8vw, 8rem) 0; }
.qv-detail-section--silver { background: linear-gradient(135deg, #f7f8f8, #d7dbdc); }
.qv-detail-section--red { background: var(--qv-final-red); color: #fff; }
.qv-detail-section--red :where(h2,p,li,.qv-kicker) { color: #fff !important; }
.qv-detail-split { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(3rem, 8vw, 8rem); align-items: start; }
.qv-detail-heading { max-width: 68rem; margin-bottom: 3rem; }
.qv-detail-section h2 { max-width: 15ch; margin: .25em 0; font-size: clamp(2.5rem, 4.9vw, 5.5rem); line-height: 1; letter-spacing: -.045em; }
.qv-detail-copy p { font-size: clamp(1.03rem, 1.3vw, 1.18rem); line-height: 1.75; color: #4e5356; }
.qv-detail-grid { display: grid; gap: 1px; background: #d7d9da; }
.qv-detail-grid--four { grid-template-columns: repeat(4,1fr); }
.qv-detail-grid article { min-height: 18rem; padding: clamp(2rem,3vw,3rem); background: #fff; }
.qv-detail-grid article span { color: var(--qv-final-red); font-size: .75rem; font-weight: 800; letter-spacing: .12em; }
.qv-detail-grid article h3 { margin: 3.5rem 0 .8rem; font-size: 1.5rem; line-height: 1.1; }
.qv-detail-grid article p { color: #5a5f62; line-height: 1.65; }
.qv-detail-timeline { list-style: none; margin: 0; padding: 0; border-top: 1px solid #bfc3c4; }
.qv-detail-timeline li { display: grid; grid-template-columns: 4rem 1fr; gap: 1.2rem; padding: 1.4rem 0; border-bottom: 1px solid #bfc3c4; align-items: center; }
.qv-detail-timeline li span { color: var(--qv-final-red); font-size: .74rem; font-weight: 900; letter-spacing: .12em; }
.qv-detail-timeline li strong { font-size: clamp(1.1rem, 1.7vw, 1.45rem); line-height: 1.2; }
.qv-detail-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid #d2d5d6; }
.qv-detail-list li { position: relative; padding: 1.25rem 0 1.25rem 2rem; border-bottom: 1px solid #d2d5d6; font-size: clamp(1.05rem, 1.5vw, 1.3rem); }
.qv-detail-list li::before { position: absolute; left: 0; color: var(--qv-final-red); content: "↗"; }
.qv-detail-list--light { border-color: rgb(255 255 255 / 35%); }
.qv-detail-list--light li { border-color: rgb(255 255 255 / 35%); }
.qv-detail-list--light li::before { color: #fff; }
.qv-detail-cta {
  position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0,1fr) minmax(14rem,.45fr); gap: 3rem;
  align-items: end; padding: clamp(5rem,8vw,8rem) var(--qv-final-gutter); background: var(--qv-final-red); color: #fff;
}
.qv-detail-cta__media { position: absolute; inset: 0 0 0 55%; opacity: .22; }
.qv-detail-cta__media::after { position: absolute; inset: 0; background: linear-gradient(90deg,var(--qv-final-red),transparent); content:""; }
.qv-detail-cta__media img { width:100%; height:100%; object-fit:cover; filter:grayscale(.35); }
.qv-detail-cta > *:not(.qv-detail-cta__media) { position: relative; z-index: 2; }
.qv-detail-cta h2 { max-width: 16ch; margin: .25em 0; color: #fff; font-size: clamp(2.5rem,4.8vw,5.3rem); line-height: 1; letter-spacing:-.045em; }
.qv-detail-cta p { max-width: 45rem; color: rgb(255 255 255 / 82%); }
.qv-service-hero { padding: clamp(10rem,16vw,14rem) 0 clamp(5rem,8vw,8rem); background:#fff; }
.qv-service-hero__visual { min-height: 30rem; overflow:hidden; background:#d7dbdc; clip-path:polygon(0 0,100% 0,100% 88%,84% 100%,0 100%); }
.qv-service-hero__visual img { width:100%; height:100%; object-fit:cover; filter:saturate(.75) contrast(1.06); }

/* Internal pages final white/steel identity. */
.qv-internal { background: #fff !important; }
.qv-internal-hero { background: #fff !important; color: var(--qv-final-ink) !important; }
.qv-internal-hero :where(h1,p:not(.qv-kicker)) { color: var(--qv-final-ink) !important; }
.qv-internal-section--dark { background: linear-gradient(135deg,#f7f8f8,#d7dbdc) !important; color:var(--qv-final-ink) !important; }
.qv-internal-section--dark :where(h2,h3,p,span) { color:var(--qv-final-ink) !important; }

/* Breakpoints */
@media (max-width: 80rem) {
  .qv-home--final .qv-section-heading--editorial,
  .qv-detail-split,
  .qv-footer--final .qv-footer__cta { grid-template-columns: 1fr; }
  .qv-heading-aside,.qv-services-side,.qv-footer__cta-side { max-width: 44rem; }
  .qv-detail-grid--four { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 64rem) {
  .qv-header__inner { height: 78px !important; min-height: 78px !important; max-height:78px !important; }
  .qv-home--final .qv-hero--v3 .qv-hero__content { grid-template-columns: 1fr; }
  .qv-home--final .qv-hero__signature { display:none; }
  .qv-home--final .qv-hero--v3 h1 { max-width: 12ch; }
  .qv-detail-cta { grid-template-columns: 1fr; }
  .qv-detail-cta__media { inset: 45% 0 0; }
}
@media (max-width: 48rem) {
  :root { --qv-final-gutter: clamp(1.15rem,5vw,1.6rem); }
  .qv-header,.qv-header.qv-header--compact { max-height:72px !important; height:72px !important; }
  .qv-header__inner,.qv-header.qv-header--compact .qv-header__inner { height:72px !important; min-height:72px !important; max-height:72px !important; }
  .qv-home--final .qv-hero--v3 .qv-hero__content { width: calc(100% - 2 * var(--qv-final-gutter)) !important; padding-top: 8rem; padding-bottom: 13rem; }
  .qv-home--final .qv-hero--v3 h1 { max-width:none; font-size:clamp(2.85rem,12vw,4.3rem); line-height:1; }
  .qv-home--final .qv-section-heading--editorial h2,
  .qv-home--final .qv-process-system__heading h2,
  .qv-home--final .qv-credibility__headline h2,
  .qv-home--final .qv-lead__intro h2 { max-width:none !important; font-size:clamp(2.35rem,10.5vw,3.7rem); line-height:1.04 !important; letter-spacing:-.035em !important; }
  .qv-motion-visual { min-height: 9.5rem; }
  .qv-home--final .qv-journeys--v3 .qv-journey { min-height:auto; }
  .qv-detail-hero { min-height: 72svh; }
  .qv-detail-hero__content h1,.qv-service-hero h1 { max-width:none; font-size:clamp(2.75rem,12vw,4.4rem); line-height:1; }
  .qv-detail-section h2,.qv-detail-cta h2 { max-width:none; font-size:clamp(2.3rem,10vw,3.65rem); line-height:1.04; }
  .qv-detail-grid--four { grid-template-columns:1fr; }
  .qv-detail-grid article { min-height:auto; }
  .qv-detail-timeline li { grid-template-columns:3rem 1fr; }
  .qv-footer--final .qv-footer__bottom { display:grid; gap:1.2rem; min-height:0; padding-block:1.5rem; }
  .qv-footer--final .qv-footer__credit { justify-content:flex-start; flex-wrap:wrap; }
}
@media (prefers-reduced-motion: reduce) {
  .qv-motion-visual img,.qv-motion-visual::after,.qv-home--final .qv-journey::before { transition:none !important; animation:none !important; }
}

/* Final internal and contact refinements. */
.qv-internal-shell,
.qv-page-hero > div,
.qv-content-grid,
.qv-catalogue-filter,
.qv-pagination {
  width: min(calc(100% - 2 * var(--qv-final-gutter)), 88rem);
  margin-inline: auto;
}
.qv-internal-hero { padding: clamp(9rem, 14vw, 12rem) 0 clamp(4.5rem, 7vw, 7rem); }
.qv-internal-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(24rem, 1.08fr);
  gap: clamp(3rem, 7vw, 7rem);
  align-items: center;
}
.qv-internal-hero h1 {
  max-width: 12ch;
  margin: .22em 0;
  font-size: clamp(3rem, 6.2vw, 6.8rem);
  line-height: .96;
  letter-spacing: -.055em;
}
.qv-internal-hero p:not(.qv-kicker) { max-width: 46rem; font-size: clamp(1.05rem, 1.45vw, 1.25rem); line-height: 1.7; color: #52575a !important; }
.qv-internal-hero__media { position: relative; min-height: clamp(24rem, 42vw, 42rem); margin: 0; overflow: hidden; background: #d7dbdc; clip-path: polygon(0 0,100% 0,100% 88%,85% 100%,0 100%); }
.qv-internal-hero__media img,
.qv-internal-hero figure img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; filter: saturate(.78) contrast(1.06); }
.qv-internal-section { padding: clamp(5rem, 8vw, 8rem) 0; }
.qv-internal-section--steel { background: linear-gradient(135deg,#f8f9f9 0%,#d6dadb 55%,#f3f4f4 100%); border-block: 1px solid #d0d4d5; }
.qv-internal-split { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(3rem,8vw,8rem); align-items: start; }
.qv-internal-section h2,
.qv-contact-final-grid h2 { max-width: 15ch; margin: .25em 0; font-size: clamp(2.45rem,4.8vw,5.2rem); line-height: 1; letter-spacing: -.045em; }
.qv-internal-copy p { max-width: 48rem; color:#51575a; font-size: clamp(1.03rem,1.25vw,1.18rem); line-height: 1.78; }
.qv-company-feature { display:grid; grid-template-columns:minmax(22rem,1.05fr) minmax(0,.95fr); gap:clamp(3rem,8vw,8rem); align-items:center; }
.qv-motion-visual--company { min-height: clamp(24rem,36vw,38rem); }
.qv-company-feature > div:last-child p { max-width: 42rem; color:#505659; line-height:1.75; }
.qv-company-values article { min-width:0; }
.qv-company-values h3 { overflow-wrap:normal; }

.qv-contact-final-grid { display:grid; grid-template-columns:minmax(19rem,.72fr) minmax(0,1.28fr); gap:clamp(3rem,8vw,8rem); align-items:start; }
.qv-contact-final-info { position:sticky; top:7rem; display:grid; gap:.9rem; padding:clamp(2rem,3vw,3rem); background:linear-gradient(145deg,#f7f8f8,#d9ddde); border:1px solid #d0d4d5; }
.qv-contact-final-info h2 { margin-bottom:1.2rem; }
.qv-contact-final-info address { font-style:normal; line-height:1.65; }
.qv-contact-final-info > a:not(.qv-arrow-link) { color:var(--qv-final-ink); font-weight:700; }
.qv-contact-socials { display:flex; flex-wrap:wrap; gap:.7rem; padding-top:1rem; border-top:1px solid #c5c9ca; }
.qv-contact-socials a { display:inline-flex; padding:.65rem .9rem; border:1px solid #aeb3b5; color:var(--qv-final-ink); font-weight:700; }
.qv-contact-socials a:hover { background:var(--qv-final-red); border-color:var(--qv-final-red); color:#fff; }
.qv-contact-final-form { min-width:0; }
.qv-contact-final-form .qv-lead-form { margin-top:2.4rem; }
.qv-form-status { margin:1.4rem 0; padding:1rem 1.2rem; border-left:4px solid; }
.qv-form-status--success { background:#e6f3ea; border-color:#2f6b45; }
.qv-form-status--error { background:#f9e2e5; border-color:var(--qv-final-red); }

.qv-listing .qv-page-hero { padding:clamp(9rem,14vw,12rem) 0 clamp(4rem,7vw,6.5rem); }
.qv-listing .qv-page-hero h1 { max-width:15ch; margin:.25em 0; font-size:clamp(3rem,6vw,6.5rem); line-height:.96; letter-spacing:-.05em; }
.qv-listing .qv-page-hero__intro { max-width:48rem; color:#555b5e !important; font-size:clamp(1.05rem,1.4vw,1.25rem); line-height:1.7; }
.qv-catalogue-filter { display:flex; flex-wrap:wrap; gap:1rem; align-items:end; padding-block:2.4rem; }
.qv-catalogue-filter label { width:100%; font-weight:800; }
.qv-catalogue-filter select { min-width:min(100%,24rem); min-height:3.25rem; padding:.75rem 1rem; border:1px solid #bfc4c5; background:#fff; }
.qv-content-grid { padding-block:clamp(3.5rem,6vw,6rem); }
.qv-content-card__body { min-width:0; }
.qv-content-card h2 { font-size:clamp(1.55rem,2.1vw,2.25rem); line-height:1.08; letter-spacing:-.025em; }
.qv-content-card h2 a { overflow-wrap:normal; }
.qv-pagination { padding-bottom:clamp(4rem,7vw,7rem); }
.qv-search-inline { display:flex; gap:.75rem; max-width:48rem; margin-top:2rem; }
.qv-search-inline input { flex:1; min-width:0; min-height:3.5rem; padding:.8rem 1rem; border:1px solid #bfc4c5; background:#fff; }
.qv-empty-state--search { grid-column:1/-1; max-width:48rem; padding:3rem; background:linear-gradient(135deg,#f7f8f8,#dde0e1); }

@media (max-width: 70rem) {
  .qv-internal-hero__grid,
  .qv-internal-split,
  .qv-company-feature,
  .qv-contact-final-grid { grid-template-columns:1fr; }
  .qv-internal-hero__media { min-height:30rem; }
  .qv-contact-final-info { position:static; }
}
@media (max-width: 48rem) {
  .qv-internal-hero { padding-top:7.5rem; }
  .qv-internal-hero h1,
  .qv-listing .qv-page-hero h1 { max-width:none; font-size:clamp(2.75rem,12vw,4.25rem); line-height:1; letter-spacing:-.04em; }
  .qv-internal-hero__media { min-height:22rem; }
  .qv-internal-section h2,
  .qv-contact-final-grid h2 { max-width:none; font-size:clamp(2.25rem,10vw,3.6rem); line-height:1.03; }
  .qv-search-inline { display:grid; }
  .qv-catalogue-filter { display:grid; }
  .qv-catalogue-filter select,.qv-catalogue-filter .qv-button { width:100%; }
}
