:root {
  --sv-navy: #00285a;
  --sv-red: #e63237;
  --sv-paper: #ffffff;
  --sv-soft: #efedeb;
  --sv-line: #707070;
}

/* 02/10 Chi Siamo: native Elementor grid matching the alternating PDF rows.
 * The timeline's extra scroll distance is intentionally independent. */
@media (min-width: 768px) {
  body.page-id-21 .elementor-element-5280ee4.sv-chi-pdf-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: 572px 960px 960px !important;
    height: 2492px !important;
    min-height: 2492px !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  body.page-id-21 .sv-chi-pdf-grid > .e-con {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    transform: none !important;
    box-shadow: none !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #707070 !important;
    border-right: 1px solid #707070 !important;
  }
  body.page-id-21 .sv-chi-pdf-grid > .e-con:nth-child(even) { border-right: 0 !important; }
  body.page-id-21 .sv-chi-pdf-grid .elementor-widget-heading {
    position: absolute !important;
    top: 76px !important;
    left: 80px !important;
    right: 80px !important;
    width: auto !important;
    margin: 0 !important;
  }
  body.page-id-21 .sv-chi-pdf-grid .elementor-heading-title {
    font-size: 40px !important;
    line-height: 46px !important;
    color: #00285a !important;
  }
  body.page-id-21 .sv-chi-pdf-grid .elementor-widget-text-editor {
    position: absolute !important;
    left: 80px !important;
    right: 80px !important;
    top: 482px !important;
    width: auto !important;
    margin: 0 !important;
    font-family: Roboto, sans-serif !important;
    font-size: 28px !important;
    line-height: 33px !important;
    color: #2e2e2e !important;
  }
  body.page-id-21 .sv-chi-pdf-grid .elementor-widget-text-editor p { margin: 0 0 33px !important; }
  body.page-id-21 .sv-chi-pdf-grid .elementor-element-4df42b3 { top: 680px !important; }
  body.page-id-21 .sv-chi-pdf-grid .elementor-element-c952a4a { width: 460px !important; }
  body.page-id-21 .sv-chi-pdf-grid > :nth-child(-n+2) .elementor-widget-heading {
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 92px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #00285a !important;
  }
  body.page-id-21 .sv-chi-pdf-grid > :nth-child(2) .elementor-widget-heading { background: #e63237 !important; }
  body.page-id-21 .sv-chi-pdf-grid > :nth-child(-n+2) .elementor-heading-title {
    font-size: 26px !important;
    line-height: 33px !important;
    color: #fff !important;
  }
  body.page-id-21 .sv-chi-pdf-grid > :nth-child(-n+2) .elementor-widget-text-editor {
    top: 398px !important;
    left: 40px !important;
    right: 40px !important;
    max-width: 580px !important;
  }
  body.page-id-21 .sv-chi-media .elementor-widget-image,
  body.page-id-21 .sv-chi-media .elementor-widget-image img {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: contain !important;
  }
}

/* Shared footer geometry: Elementor assigns different generated IDs to the
 * same footer columns on each institutional page. */
@media (min-width: 768px) {
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > :first-child {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > :first-child > .elementor-widget-heading {
    position: absolute !important;
    left: 80px !important;
    top: 24px !important;
    width: 262px !important;
    height: 78px !important;
    margin: 0 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > :first-child .sv-footer-logo {
    content: url('/wp-content/plugins/sestriere-catalogo/assets/logo-sestriere-correct.jpg') !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 262px !important;
    height: 78px !important;
    object-fit: fill !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > :first-child > .elementor-widget-text-editor {
    position: absolute !important;
    left: 80px !important;
    top: 154px !important;
    width: 520px !important;
    margin: 0 !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > :first-child > .elementor-widget-text-editor::before {
    content: 'SESTRIERE VERNICI S.r.l.\A Via Quarto 11, 10042 Nichelino (TO) - ITALIA\A\A P.IVA e codice fiscale: 00481120012 / REA: TO - 390529\A Capitale sociale: 2.631.600€ interamente versato' !important;
    display: block !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    white-space: pre !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > :first-child > .elementor-widget-text-editor::after {
    content: '© 2026 Sestriere Vernici S.r.l. Tutti i diritti riservati' !important;
    display: block !important;
    margin-top: 18px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-overlay {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    width: 100% !important;
    height: 150px !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-overlay > .elementor-widget-heading {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 1920px !important;
    height: 150px !important;
    margin: 0 !important;
    text-align: left !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-overlay > .elementor-widget-heading .elementor-heading-title {
    color: rgba(40,95,155,.55) !important;
    font-size: 160px !important;
    line-height: 192px !important;
    white-space: nowrap !important;
    text-align: left !important;
  }
}

/* Footer PDF alignment overrides: Elementor's generated grid rules use a
 * more specific percentage offset, so the PDF artboard coordinates must win. */
@media (min-width: 768px) {
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column {
    position: absolute !important;
    left: 1118px !important;
    top: 24px !important;
    width: 300px !important;
    height: 205px !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-legal-column {
    position: absolute !important;
    left: 1415px !important;
    top: 24px !important;
    width: 300px !important;
    height: 165px !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column > .sv-footer-column-title,
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column > a {
    position: absolute !important;
    left: 0 !important;
    margin: 0 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column > .sv-footer-column-title { top: 0 !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column > a:nth-of-type(1) { top: 44px !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column > a:nth-of-type(2) { top: 86px !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column > a:nth-of-type(3) { top: 129px !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-menu-column > a:nth-of-type(4) { top: 173px !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-legal-column > .elementor-widget-heading {
    position: absolute !important;
    left: 0 !important;
    width: 260px !important;
    margin: 0 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-legal-column > .elementor-widget-heading:nth-child(1) { top: 0 !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-legal-column > .elementor-widget-heading:nth-child(2) { top: 44px !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-legal-column > .elementor-widget-heading:nth-child(3) { top: 86px !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .sv-footer-legal-column > .elementor-widget-heading:nth-child(4) { top: 129px !important; }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host .sv-footer-column-title,
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host .sv-footer-menu-column a,
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host .sv-footer-legal-column .elementor-heading-title,
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host .sv-footer-legal-column a { color: #ffffff !important; }
}

/* Footer legal block follows the PDF copy exactly; the phone line is not in
 * the approved artboard and must not occupy an extra row. */
@media (min-width: 768px) {
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .elementor-element-32c258e .elementor-element-efe8d7a {
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .elementor-element-32c258e .elementor-element-efe8d7a::before {
    content: 'SESTRIERE VERNICI S.r.l.\A Via Quarto 11, 10042 Nichelino (TO) - ITALIA\A\A P.IVA e codice fiscale: 00481120012 / REA: TO - 390529\A Capitale sociale: 2.631.600€ interamente versato' !important;
    display: block !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    white-space: pre !important;
  }
  body.sv-institutional-page .elementor-element.e-con.e-parent.sv-footer-host > .elementor-element-32c258e .elementor-element-efe8d7a::after {
    content: '© 2026 Sestriere Vernici S.r.l. Tutti i diritti riservati' !important;
    display: block !important;
    margin-top: 18px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
  }
}

/* The institutional navigation is a full-width horizontal bar. The parent
 * remains the clickable Azienda landing page; the bar is kept adjacent to the
 * main menu so there is no hover dead zone. */
.sv-azienda-menu {
  position: relative !important;
  z-index: 1002 !important;
}

.sv-azienda-menu > .elementor-widget-container,
.sv-azienda-menu > .elementor-heading-title {
  position: relative;
  z-index: 2;
}

.sv-azienda-subbar {
  position: relative;
  z-index: 1001;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(28px, 4vw, 72px);
  width: 100%;
  min-height: 0;
  max-height: 0;
  box-sizing: border-box;
  padding: 0 48px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-12px);
  background: #ffffff;
/* Keep the collapsed submenu visually absent; open/persistent states restore
 * its height and links without requiring a visible border frame. */
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  box-shadow: none;
  transition: max-height .22s ease, padding .22s ease, opacity .18s ease,
    transform .22s ease, visibility 0s linear .22s,
    border-color .18s ease, box-shadow .18s ease;
}

.sv-azienda-subbar.is-open,
.sv-azienda-submenu-open .sv-azienda-subbar {
  min-height: 58px;
  max-height: 58px;
  padding: 12px 48px;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  border-top-color: rgba(0, 40, 90, .18);
  border-bottom-color: rgba(0, 40, 90, .25);
  box-shadow: 0 8px 18px rgba(0, 40, 90, .08);
  transition-delay: 0s;
}

.sv-azienda-subbar.is-persistent {
  min-height: 58px;
  max-height: 58px;
  padding: 12px 48px;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  border-top-color: rgba(0, 40, 90, .18);
  border-bottom-color: rgba(0, 40, 90, .25);
  box-shadow: 0 8px 18px rgba(0, 40, 90, .08);
}

.sv-azienda-submenu-persistent .sv-main-menu-bar {
  position: sticky !important;
  top: 32px;
  z-index: 1003 !important;
}

.sv-azienda-submenu-persistent .sv-azienda-subbar {
  position: sticky;
  top: 0;
}

.sv-azienda-subbar a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  color: var(--sv-navy) !important;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none !important;
  white-space: nowrap;
  transition: color .2s ease, background-color .2s ease;
}

.sv-azienda-subbar a:hover,
.sv-azienda-subbar a:focus-visible {
  color: var(--sv-red) !important;
}


.sv-topbar-contact {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 18px;
  column-gap: 18px !important;
}

.sv-topbar-contact > .elementor-widget-container {
  display: flex !important;
  align-items: center;
  column-gap: 18px !important;
}

.sv-topbar-contact a,
.sv-topbar-contact span {
  color: #ffffff !important;
  text-decoration: none !important;
  white-space: nowrap;
}

body.sv-institutional-page .sv-topbar-contact a:hover,
body.sv-institutional-page .sv-topbar-contact a:focus-visible {
  color: #ffffff !important;
}

/* The institutional PDFs place the two header rows over the hero gradient.
 * Keep the Azienda subbar in the document flow, but let the branded topbar
 * and main navigation sit over the hero on the initial desktop viewport. */
body.sv-institutional-page > .elementor.elementor-page > .elementor-element > .elementor-element:first-child,
body.sv-institutional-page .sv-institutional-topbar,
body.sv-institutional-page .sv-main-menu-bar {
  background: transparent !important;
  color: #ffffff !important;
  position: relative !important;
  z-index: 1003 !important;
}

body.sv-institutional-page .sv-main-menu-bar .elementor-heading-title,
body.sv-institutional-page .sv-main-menu-bar .elementor-widget-text-editor,
body.sv-institutional-page .sv-main-menu-bar .elementor-widget-text-editor *,
body.sv-institutional-page .sv-main-menu-bar a,
body.sv-institutional-page .sv-main-menu-bar span {
  color: #ffffff !important;
}

body.sv-institutional-page .sv-pdf-hero {
  box-sizing: border-box !important;
  height: 720px !important;
  min-height: 720px !important;
  margin-top: -240px !important;
  padding-top: 240px !important;
}

body.sv-institutional-page.sv-institutional-header-scrolled .sv-main-menu-bar {
  background: #ffffff !important;
}

body.sv-institutional-page.sv-institutional-header-scrolled .sv-main-menu-bar .elementor-heading-title,
body.sv-institutional-page.sv-institutional-header-scrolled .sv-main-menu-bar .elementor-widget-text-editor,
body.sv-institutional-page.sv-institutional-header-scrolled .sv-main-menu-bar .elementor-widget-text-editor *,
body.sv-institutional-page.sv-institutional-header-scrolled .sv-main-menu-bar a,
body.sv-institutional-page.sv-institutional-header-scrolled .sv-main-menu-bar span {
  color: var(--sv-navy) !important;
}

/* WAME's institutional desktop palette: navy-to-red hero, red contact CTA,
 * navy footer. Product list/detail are frozen and never receive this scope. */
  body.sv-institutional-page .sv-pdf-hero {
    color: #ffffff !important;
    background: linear-gradient(112deg, #00285a 0%, #123d70 34%, #6a315d 69%, #e63237 100%) !important;
    background-size: 180% 180% !important;
    animation: sv-hero-gradient 18s ease-in-out infinite alternate;
    position: relative !important;
    z-index: 1 !important;
  }

body.sv-institutional-page .sv-pdf-hero .elementor-heading-title,
body.sv-institutional-page .sv-pdf-hero .elementor-widget-text-editor,
body.sv-institutional-page .sv-pdf-hero .elementor-widget-text-editor * {
  color: #ffffff !important;
}

body.sv-institutional-page .sv-pdf-contact {
  background: var(--sv-red) !important;
  color: #ffffff !important;
}

body.sv-institutional-page .sv-pdf-contact .elementor-heading-title,
body.sv-institutional-page .sv-pdf-contact .elementor-widget-text-editor,
body.sv-institutional-page .sv-pdf-contact .elementor-widget-text-editor * {
  color: #ffffff !important;
}

body.sv-institutional-page .sv-pdf-contact .elementor-button,
body.sv-institutional-page .sv-pdf-contact a.elementor-button {
  background: var(--sv-navy) !important;
  border-color: #ffffff !important;
  color: #ffffff !important;
}

body.sv-institutional-page .sv-footer-host {
  background: var(--sv-navy) !important;
  color: #ffffff !important;
  position: relative !important;
  overflow: hidden !important;
  min-height: 792px !important;
  height: 792px !important;
}

body.sv-institutional-page .sv-footer-host .elementor-heading-title,
body.sv-institutional-page .sv-footer-host .elementor-widget-text-editor,
body.sv-institutional-page .sv-footer-host .elementor-widget-text-editor *,
body.sv-institutional-page .sv-footer-host a {
  color: #ffffff !important;
}

body.sv-institutional-page .sv-footer-host .sv-footer-overlay,
body.sv-institutional-page .sv-footer-host .sv-footer-overlay .elementor-element {
  background: transparent !important;
}

body.sv-institutional-page .sv-footer-host > .sv-footer-overlay {
  position: absolute !important;
  inset: auto 0 0 !important;
  z-index: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-start !important;
  width: 100% !important;
  height: 150px !important;
  min-height: 150px !important;
  padding: 0 !important;
  margin: 0 !important;
  pointer-events: none !important;
}

body.sv-institutional-page .sv-footer-host > .sv-footer-overlay > .e-con-inner {
  align-items: flex-end !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-height: 150px !important;
  padding: 0 !important;
}

body.sv-institutional-page .sv-footer-host > .sv-footer-overlay .elementor-heading-title,
body.sv-institutional-page .sv-footer-host > .sv-footer-overlay .elementor-widget-text-editor {
  color: rgba(255, 255, 255, .18) !important;
  font-size: clamp(34px, 7vw, 104px) !important;
  line-height: .86 !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

body.sv-institutional-page .sv-footer-host > :not(.sv-footer-overlay) {
  position: relative;
  z-index: 1;
}

body.sv-institutional-page .sv-footer-host .sv-footer-overlay .elementor-heading-title {
  color: rgba(40, 95, 155, .55) !important;
}

body.sv-institutional-page .sv-pdf-history {
  background: var(--sv-navy) !important;
  color: #ffffff !important;
  min-height: 390px;
}

body.sv-institutional-page .sv-pdf-history .elementor-heading-title,
body.sv-institutional-page .sv-pdf-history .elementor-widget-text-editor,
body.sv-institutional-page .sv-pdf-history .elementor-widget-text-editor * {
  color: #ffffff !important;
}

.sv-history-years {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,.32);
}

.sv-history-year {
  min-height: 118px;
  padding: 20px 24px 18px;
  border-right: 1px solid rgba(255,255,255,.32);
  box-sizing: border-box;
}

.sv-history-year:last-child { border-right: 0; }
.sv-history-year strong { display: block; font-size: 30px; line-height: 1; color: #ffffff; }
.sv-history-year span { display: block; margin-top: 12px; font-size: 14px; line-height: 1.25; color: rgba(255,255,255,.9); }

/* Scroll-driven history scene: vertical page input advances this horizontal
 * track while the pin stays centered in the viewport. */
@media (min-width: 768px) {
  body.page-id-21 .sv-history-horizontal-scene {
    position: relative !important;
    display: block !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.page-id-21 .sv-history-horizontal-scene > .e-con-inner {
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body.page-id-21 .sv-history-horizontal-scene::before,
  body.page-id-21 .sv-history-horizontal-scene::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 13vw;
    z-index: 0;
    pointer-events: none;
  }

  body.page-id-21 .sv-history-horizontal-scene::before {
    left: 0;
    background: linear-gradient(90deg, #00285a 0%, rgba(0,40,90,.9) 32%, transparent 100%);
  }

  body.page-id-21 .sv-history-horizontal-scene::after {
    right: 0;
    background: linear-gradient(270deg, #ee3038 0%, rgba(238,48,56,.75) 32%, transparent 100%);
  }

  body.page-id-21 .sv-history-pin {
    position: sticky !important;
    top: 0 !important;
    display: flex !important;
    flex: 0 0 100vh !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 34px !important;
    width: 100% !important;
    height: 100vh !important;
    min-height: 100vh !important;
    overflow: hidden !important;
  }

  body.page-id-21 .sv-history-pin > .elementor-widget-heading {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    text-align: center !important;
  }

  body.page-id-21 .sv-history-pin > .sv-history-track {
    flex: 0 0 auto !important;
  }

  body.page-id-21 .sv-history-track {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    grid-template-columns: none !important;
    width: max-content !important;
    margin: 0 !important;
    border-top: 1px solid rgba(255,255,255,.32) !important;
    will-change: transform;
    transition: transform .08s linear;
  }

  body.page-id-21 .sv-history-track .sv-history-year {
    flex: 0 0 var(--sv-history-card-width, 480px) !important;
    width: var(--sv-history-card-width, 480px) !important;
    min-height: 180px !important;
    padding: 30px 32px 26px !important;
  }

  body.page-id-21 .sv-history-track .sv-history-year strong {
    font-size: 42px !important;
  }

  body.page-id-21 .sv-history-track .sv-history-year span {
    max-width: 340px;
    font-size: 17px !important;
    line-height: 1.25 !important;
  }

  body.page-id-25 .sv-rd-work,
  body.page-id-32 .sv-qs-cert-grid {
    align-items: start !important;
  }

  body.page-id-25 .sv-rd-left.sv-fixed-media-column,
  body.page-id-32 .sv-qs-cert-intro.sv-fixed-media-column {
    position: sticky !important;
    top: 0 !important;
    align-self: start !important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow: hidden !important;
    z-index: 2;
  }

  body.page-id-34 .elementor-element-db66842.sv-fixed-media-column {
    position: sticky !important;
    top: 0 !important;
    align-self: start !important;
    z-index: 2;
  }
}

@keyframes sv-hero-gradient {
  from { background-position: 0% 50%; }
  to { background-position: 100% 50%; }
}

/* The value cards use both the supplied hover copy and a small elevation cue;
 * the flip remains a real CSS transform so keyboard focus works as well. */
body.page-id-19 .sv-value-card:hover,
body.page-id-19 .sv-value-card:focus-within {
  z-index: 4;
  box-shadow: 0 18px 34px rgba(0, 40, 90, .18);
}

body.sv-institutional-page .sv-pdf-content-grid > .e-con-inner > .elementor-element,
body.sv-institutional-page .sv-pdf-section-label {
  border-color: rgba(0, 40, 90, .28) !important;
}

body.sv-institutional-page .elementor-button:hover,
body.sv-institutional-page .elementor-button:focus-visible {
  background: var(--sv-navy) !important;
  color: #ffffff !important;
}

/* Desktop proportions from the supplied page PDFs. These overrides only touch
 * institutional page containers; they do not alter the validated catalog. */
body.page-id-21 .elementor-element-b67360e { min-height: 760px !important; }
body.page-id-21 .elementor-element-ca822b6 { min-height: 620px !important; }
body.page-id-21 .elementor-element-5280ee4 { min-height: 2354px !important; }
body.page-id-21 .elementor-element-5280ee4 > .e-con-inner { min-height: 100% !important; }

body.page-id-23 .elementor-element-46a2f86 { min-height: 170px !important; }
body.page-id-23 .elementor-element-759134e { min-height: 792px !important; }
body.page-id-23 .elementor-element-759134e > .e-con-inner { min-height: 100% !important; }

body.page-id-25 .elementor-element-f61810c { min-height: 650px !important; }
body.page-id-25 .elementor-element-1c34cf5 { min-height: 240px !important; }
body.page-id-25 .elementor-element-ef8087b { min-height: 1652px !important; }
body.page-id-25 .elementor-element-ef8087b > .e-con-inner { min-height: 100% !important; }

body.page-id-32 .elementor-element-a6712ae { min-height: 760px !important; }
body.page-id-32 .elementor-element-7adec06 { min-height: 240px !important; }
body.page-id-32 .elementor-element-4afe27f { min-height: 4844px !important; }
body.page-id-32 .elementor-element-4afe27f > .e-con-inner { min-height: 100% !important; }

body.sv-institutional-page .sv-pdf-content-grid > .e-con-inner > .elementor-element {
  transition: transform .35s ease, box-shadow .35s ease, background-color .35s ease;
}

body.sv-institutional-page .sv-pdf-content-grid > .e-con-inner > .elementor-element:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 26px rgba(0, 40, 90, .12);
}

/* Legacy class retained for old cached markup; it now has no hover dead zone. */
.sv-azienda-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  display: flex;
  flex-direction: column;
  min-width: 250px;
  padding: 0;
  background: #fff;
  border: 1px solid rgba(39, 44, 64, .18);
  box-shadow: 0 14px 34px rgba(39, 44, 64, .16);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-4px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.sv-azienda-menu:hover .sv-azienda-dropdown,
.sv-azienda-menu:focus-within .sv-azienda-dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.sv-azienda-dropdown a {
  display: block;
  padding: 11px 20px;
  color: var(--sv-navy) !important;
  font-size: 15px;
  line-height: 1.2;
  text-decoration: none !important;
  white-space: nowrap;
}

.sv-azienda-dropdown a:hover,
.sv-azienda-dropdown a:focus-visible {
  color: #fff !important;
  background: var(--sv-navy);
}

/* I nostri valori: normal content stays in the Elementor front face and the
 * supplied HOOVER copy is rendered as a real flip side. */
body.page-id-19 .sv-value-card {
  perspective: 1200px;
  overflow: hidden;
  isolation: isolate;
  padding: 0 !important;
}

body.page-id-19 .sv-value-card > .e-con-inner {
  display: block !important;
  height: 100% !important;
  min-height: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  transform-style: preserve-3d;
}

body.page-id-19 .sv-card-flip {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: inherit;
  margin: 0 !important;
  overflow: hidden;
  transform-style: preserve-3d;
}

body.page-id-19 .sv-card-face {
  position: absolute;
  inset: 0;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 20px;
  box-sizing: border-box;
  padding: 55px 56px;
  overflow: hidden;
  transition: transform 1.2s cubic-bezier(.2, .7, .2, 1);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

body.page-id-19 .sv-card-front > * {
  flex: 0 0 auto;
}

body.page-id-19 .sv-card-back {
  color: #fff;
  transform: rotateY(180deg);
}

body.page-id-19 .sv-value-card:hover .sv-card-front,
body.page-id-19 .sv-value-card:focus .sv-card-front,
body.page-id-19 .sv-value-card:focus-within .sv-card-front {
  transform: rotateY(-180deg);
}

body.page-id-19 .sv-value-card:hover .sv-card-back,
body.page-id-19 .sv-value-card:focus .sv-card-back,
body.page-id-19 .sv-value-card:focus-within .sv-card-back {
  transform: rotateY(0deg);
}

body.page-id-19 .sv-card-back h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(24px, 2vw, 38px);
  line-height: 1.05;
  font-weight: 700;
}

body.page-id-19 .sv-card-back p {
  margin: 0;
  color: #fff;
  font-size: clamp(16px, 1.35vw, 24px);
  line-height: 1.25;
}

/* The latest WAME brief calls for moving gradients on the institutional
 * highlights. The motion is deliberately slow and stops for reduced-motion. */
.sv-gradient-motion {
  background-size: 160% 160% !important;
  animation: sv-presentation-gradient 14s ease-in-out infinite alternate;
}

@keyframes sv-presentation-gradient {
  from { background-position: 0% 50%; }
  to { background-position: 100% 50%; }
}

body.sv-institutional-scroll-page .elementor-element-f61810c,
body.sv-institutional-scroll-page .elementor-element-a6712ae {
  scroll-margin-top: 120px;
}

body.sv-tintometric-system-page .elementor-element-8788330,
body.sv-tintometric-system-page .elementor-element-9d29a34 {
  scroll-margin-top: 120px;
}

@media (prefers-reduced-motion: reduce) {
  .sv-azienda-dropdown,
  .sv-azienda-subbar,
  body.sv-institutional-page .sv-pdf-hero,
  body.page-id-19 .sv-card-face,
  .sv-gradient-motion {
    transition: none !important;
    animation: none !important;
  }
}

@media (max-width: 767px) {
  .sv-azienda-subbar {
    justify-content: flex-start;
    gap: 18px;
    overflow-x: auto;
    padding: 10px 20px;
  }

  .sv-azienda-submenu-persistent .sv-main-menu-bar {
    top: 0;
  }

  .sv-azienda-submenu-persistent .sv-azienda-subbar {
    top: 0;
  }

  .sv-history-years {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sv-azienda-dropdown {
    right: auto;
    left: -20px;
    min-width: min(250px, calc(100vw - 40px));
  }

  body.page-id-19 .sv-value-card {
    perspective: none;
  }

  body.page-id-19 .sv-card-flip {
    height: auto;
    transform: none !important;
  }

  body.page-id-19 .sv-card-face {
    position: relative;
    inset: auto;
    transform: none !important;
  }

  body.page-id-19 .sv-card-back {
    display: none;
  }
}

/* 22/09/2026 PDF alignment pass. The supplied institutional PDFs are laid
 * out on a 1920px desktop artboard. Keep their section boundaries exact so
 * that the browser capture and the source artboard have the same rhythm. */
@media (min-width: 768px) {
  body.sv-institutional-page .sv-institutional-topbar {
    position: relative !important;
    z-index: 1004 !important;
    background: #00285a !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  body.sv-institutional-page .sv-pdf-hero {
    box-sizing: border-box !important;
    height: 660px !important;
    min-height: 660px !important;
    margin-top: -240px !important;
    padding-top: 120px !important;
    background-size: 100% 100% !important;
    animation: none !important;
    position: relative !important;
    overflow: hidden !important;
  }

  body.sv-institutional-page .sv-pdf-hero::before {
    content: "DENTRO L’INDUSTRIA";
    position: absolute;
    top: 18px;
    left: 0;
    z-index: 0;
    width: 100%;
    overflow: hidden;
    color: rgba(255,255,255,.12);
    font-size: clamp(84px, 10vw, 192px);
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: .86;
    white-space: nowrap;
    pointer-events: none;
  }

  body.sv-institutional-page .sv-pdf-hero > .e-con-inner {
    position: relative;
    z-index: 1;
  }

  body.sv-institutional-page .sv-footer-host {
    flex: 0 0 454px !important;
    height: 454px !important;
    min-height: 454px !important;
  }

  body.sv-institutional-page .sv-pdf-hero {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.sv-institutional-page .sv-pdf-hero > .e-con-inner {
    width: 50% !important;
    max-width: 960px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: clamp(40px, 4.1667vw, 80px) !important;
    padding-right: clamp(40px, 4.1667vw, 80px) !important;
  }

  body.sv-institutional-page .sv-pdf-history > .e-con-inner,
  body.sv-institutional-page .sv-pdf-contact > .e-con-inner {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    padding-left: 80px !important;
    padding-right: 80px !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner {
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .elementor-widget-heading,
  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .elementor-widget-text-editor {
    width: 100% !important;
    text-align: center !important;
  }

  body.sv-institutional-page .sv-pdf-contact .sv-pdf-contact-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 314px;
    width: 314px;
    min-width: 314px;
    height: 88px;
    min-height: 88px;
    box-sizing: border-box;
    margin-top: 22px;
    padding: 12px 24px;
    border: 1px solid #ffffff;
    background: var(--sv-navy);
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .02em;
    text-decoration: none !important;
  }

  body.sv-institutional-page .sv-footer-host .elementor-heading-title,
  body.sv-institutional-page .sv-footer-host .elementor-widget-text-editor,
  body.sv-institutional-page .sv-footer-host .elementor-widget-text-editor *,
  body.sv-institutional-page .sv-footer-host a {
    color: #ffffff !important;
  }

  body.sv-institutional-page .sv-footer-host .elementor-heading-title,
  body.sv-institutional-page .sv-footer-host .elementor-widget-heading,
  body.sv-institutional-page .sv-footer-host .elementor-widget-heading * {
    color: #ffffff !important;
  }

  body.sv-site-header-page .sv-header-brand .elementor-heading-title {
    width: 264px !important;
    height: 80px !important;
    overflow: hidden !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    background: url('../assets/logo-sestriere-correct.jpg') center / 100% 100% no-repeat !important;
    position: relative !important;
    top: 0 !important;
  }

  /* The logo is a real home link: give the anchor the whole visible logo hit area. */
  body.sv-site-header-page .sv-header-brand .elementor-heading-title > a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }

  body.sv-site-header-page .sv-header-brand .elementor-heading-title::after {
    content: '';
  }

  body.sv-institutional-page .sv-main-menu-bar > .e-con-inner {
    align-items: flex-start !important;
    padding-top: 18px !important;
  }

  body.sv-azienda-submenu-persistent .sv-main-menu-bar {
    top: 0 !important;
  }

  body.sv-azienda-submenu-persistent .sv-azienda-subbar {
    top: 0 !important;
  }

  /* Keep the requested persistent company bar without hiding the PDF hero
   * gradient beneath an extra opaque strip. */
  body.sv-institutional-page .sv-azienda-subbar {
    background: linear-gradient(90deg, #00285a 0%, #00285a 20%, #e63237 100%) !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }

  body.sv-institutional-page .sv-azienda-subbar a {
    color: #ffffff !important;
  }

  /* Exact pre-contact section totals taken from the PDF artboards. */
  body.page-id-21 .elementor-element-b67360e { min-height: 960px !important; }
  body.page-id-21 .elementor-element-ca822b6 { min-height: 620px !important; }
  body.page-id-21 .elementor-element-5280ee4 { min-height: 2552px !important; }

  body.page-id-23 .elementor-element-e6f4e8f { min-height: 960px !important; }
  body.page-id-23 .elementor-element-46a2f86 { min-height: 170px !important; }
  body.page-id-23 .elementor-element-759134e { min-height: 790px !important; }

  body.page-id-25 .elementor-element-f61810c { min-height: 960px !important; }
  body.page-id-25 .elementor-element-1c34cf5 { min-height: 240px !important; }
  body.page-id-25 .elementor-element-ef8087b { min-height: 1740px !important; }

  body.page-id-32 .elementor-element-a6712ae { min-height: 960px !important; }
  body.page-id-32 .elementor-element-7adec06 { min-height: 240px !important; }
  body.page-id-32 .elementor-element-4afe27f { min-height: 5042px !important; }

  body.page-id-19 .sv-pdf-hero {
    margin-top: -180px !important;
  }

  body.sv-institutional-page .sv-pdf-contact {
    background-color: #707070 !important;
    height: 540px !important;
    min-height: 540px !important;
    max-height: 540px !important;
    overflow: hidden !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner {
    height: 100% !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
    justify-content: center !important;
    align-items: center !important;
  }

  body.sv-institutional-page .sv-pdf-contact .sv-pdf-contact-cta {
    flex: 0 0 88px !important;
    height: 88px !important;
    min-height: 88px !important;
    max-height: 88px !important;
  }

  /* Match the Group PDF mosaic and its child columns. The 1,440px height is
   * required by the 480px + 960px card stacks; a shorter wrapper made the
   * final cards overlap the following "I brand del gruppo" section. */
  body.page-id-19 .elementor-element-36c98ec {
    min-height: 960px !important;
  }

  body.page-id-19 .elementor-element-b9caa5c {
    height: 200px !important;
    min-height: 200px !important;
  }

  body.page-id-19 .elementor-element-0612876 {
    height: 1440px !important;
    min-height: 1440px !important;
  }

  body.page-id-19 .elementor-element-66eb2c4,
  body.page-id-19 .elementor-element-b310fdc {
    height: 1440px !important;
    min-height: 1440px !important;
  }

  body.page-id-19 .elementor-element-96c6acf,
  body.page-id-19 .elementor-element-d436612 {
    flex-basis: 480px !important;
    height: 480px !important;
    min-height: 480px !important;
  }

  body.page-id-19 .elementor-element-cb79b5b,
  body.page-id-19 .elementor-element-a2f8556 {
    flex-basis: 960px !important;
    height: 960px !important;
    min-height: 960px !important;
  }

  body.page-id-19 .elementor-element-6bcf5cc {
    height: 200px !important;
    min-height: 200px !important;
  }

  body.page-id-19 .elementor-element-98d371d,
  body.page-id-19 .elementor-element-621346c,
  body.page-id-19 .elementor-element-061db17,
  body.page-id-19 .elementor-element-18255d1,
  body.page-id-19 .elementor-element-b8a8053 {
    height: 400px !important;
    min-height: 400px !important;
  }

  body.page-id-19 .elementor-element-5a7cab2,
  body.page-id-19 .elementor-element-d747d51,
  body.page-id-19 .elementor-element-736f07b,
  body.page-id-19 .elementor-element-c58793d,
  body.page-id-19 .elementor-element-eeee51,
  body.page-id-19 .elementor-element-783324e,
  body.page-id-19 .elementor-element-85ed13f,
  body.page-id-19 .elementor-element-4b77c4a,
  body.page-id-19 .elementor-element-f5b7f4f,
  body.page-id-19 .elementor-element-77c4534 {
    width: 50% !important;
    height: 400px !important;
    min-height: 400px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    flex-basis: 50% !important;
  }

  body.page-id-19 .sv-group-brand-copy-host {
    border-left: 1px solid rgba(0, 40, 90, .35) !important;
    background: #ffffff !important;
  }

  body.page-id-19 .sv-group-brand-copy-host .sv-group-brand-copy-inner {
    display: block !important;
    height: 100% !important;
    padding: 52px 64px !important;
    box-sizing: border-box !important;
  }

  body.page-id-19 .sv-group-brand-copy-host .sv-group-brand-copy-inner > *:not(.sv-group-brand-copy) {
    display: none !important;
  }

  body.page-id-19 .sv-group-brand-copy {
    display: flex !important;
    height: 100% !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    color: var(--sv-navy) !important;
  }

  body.page-id-19 .sv-group-brand-copy .sv-group-brand-category {
    display: block !important;
    color: var(--sv-navy) !important;
    font-size: 14px !important;
    line-height: 1.1 !important;
    letter-spacing: .02em !important;
  }

  body.page-id-19 .sv-group-brand-copy h3 {
    margin: 0 0 20px !important;
    color: var(--sv-navy) !important;
    font-size: 30px !important;
    line-height: 1.08 !important;
    font-weight: 700 !important;
  }

  body.page-id-19 .sv-group-brand-copy p {
    margin: 0 !important;
    color: var(--sv-navy) !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  body.page-id-19 .sv-group-brand-mark {
    position: relative !important;
    background: #00285a !important;
  }

  body.page-id-19 .elementor-element-736f07b { background: #f07800 !important; }
  body.page-id-19 .elementor-element-eeee51 { background: #506070 !important; }
  body.page-id-19 .elementor-element-85ed13f { background: #f02020 !important; }
  body.page-id-19 .elementor-element-f5b7f4f { background: #e0e0e0 !important; }

  body.page-id-19 .sv-group-brand-mark .e-con-inner {
    position: relative !important;
    height: 100% !important;
  }

  body.page-id-19 .sv-group-brand-mark .e-con-inner > * {
    visibility: hidden !important;
  }

  body.page-id-19 .sv-group-brand-mark .e-con-inner::after {
    content: '×' !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 92px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
  }

  body.page-id-19 .elementor-element-f5b7f4f .e-con-inner::after {
    color: rgba(38,43,63,.45) !important;
  }

  /* Match the PDF hero typography and baseline positions. The Elementor
   * source widgets remain intact; only the desktop presentation is pinned to
   * the artboard coordinates so each institutional page uses the same
   * reference frame as its PDF. */
  body.sv-site-header-page .sv-header-brand .elementor-heading-title {
    margin-left: 12px !important;
  }

  body.sv-institutional-page .sv-pdf-hero > .e-con-inner {
    position: absolute !important;
    inset: 0 auto auto 0 !important;
    width: 960px !important;
    max-width: 960px !important;
    height: 100% !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
    padding: 0 80px !important;
  }

  body.sv-institutional-page .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor,
  body.sv-institutional-page .sv-pdf-hero > .e-con-inner > .elementor-widget-heading {
    position: absolute !important;
    left: 80px !important;
    width: 1100px !important;
    max-width: 1100px !important;
    margin: 0 !important;
  }

  body.sv-institutional-page .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor:first-child {
    top: 260px !important;
  }

  body.sv-institutional-page .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor:nth-child(3) {
    width: 960px !important;
    max-width: 960px !important;
  }

  body.sv-institutional-page .sv-pdf-hero > .e-con-inner > .elementor-widget-heading h1 {
    margin: 0 !important;
    font-size: 42px !important;
    line-height: 48px !important;
    letter-spacing: 0 !important;
  }

  body.page-id-23 .sv-pdf-hero > .e-con-inner > .elementor-widget-heading h1 {
    font-size: 36px !important;
    line-height: 42px !important;
  }

  body.page-id-19 .sv-pdf-hero > .e-con-inner > .elementor-widget-heading { top: 348px !important; }
  body.page-id-19 .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor:nth-child(3) { top: 461px !important; }
  body.page-id-21 .sv-pdf-hero > .e-con-inner > .elementor-widget-heading { top: 396px !important; }
  body.page-id-21 .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor:nth-child(3) { top: 461px !important; }
  body.page-id-23 .sv-pdf-hero > .e-con-inner > .elementor-widget-heading { top: 456px !important; }
  body.page-id-23 .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor:nth-child(3) { top: 521px !important; }
  body.page-id-25 .sv-pdf-hero > .e-con-inner > .elementor-widget-heading { top: 366px !important; }
  body.page-id-25 .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor:nth-child(3) { top: 431px !important; }
  body.page-id-32 .sv-pdf-hero > .e-con-inner > .elementor-widget-heading { top: 396px !important; }
  body.page-id-32 .sv-pdf-hero > .e-con-inner > .elementor-widget-text-editor:nth-child(3) { top: 461px !important; }
}

@media (min-width: 768px) {
  body.page-id-21 .sv-history-years { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
  body.page-id-21 .sv-history-year { min-height: 118px !important; padding: 20px 24px 18px !important; }

  body.page-id-32 .sv-qs-rebuild,
  body.page-id-25 .sv-rd-rebuild {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
  }

  body.page-id-32 .sv-qs-rebuild { height: 5282px !important; }
  body.page-id-32 .elementor-element-a6712ae {
    height: 960px !important;
    min-height: 960px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    align-items: stretch !important;
  }
  body.page-id-32 .elementor-element-a6712ae > .elementor-element-1f790e3,
  body.page-id-32 .elementor-element-a6712ae > .elementor-element-53d3738 {
    height: 960px !important;
    min-height: 960px !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
  body.page-id-32 .elementor-element-a6712ae > .elementor-element-1f790e3 {
    border-right: 1px solid #707070 !important;
  }
  body.page-id-32 .elementor-element-a6712ae > .elementor-element-53d3738 {
    position: relative !important;
    display: block !important;
    padding: 0 !important;
    background: #ffffff !important;
  }
  body.page-id-32 .elementor-element-a6712ae > .elementor-element-53d3738 > .e-con-inner {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
  }
  body.page-id-32 .elementor-element-a6712ae > .elementor-element-53d3738 .elementor-element-46739fb {
    position: absolute !important;
    top: 80px !important;
    left: 80px !important;
    right: 80px !important;
    width: auto !important;
    margin: 0 !important;
  }
  body.page-id-32 .elementor-element-a6712ae > .elementor-element-53d3738 .elementor-element-7bc8c9f {
    position: absolute !important;
    top: 470px !important;
    left: 80px !important;
    right: 80px !important;
    width: auto !important;
    margin: 0 !important;
  }
  body.page-id-32 .sv-qs-iso-cta {
    position: absolute !important;
    top: 795px !important;
    left: 80px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 314px !important;
    height: 88px !important;
    box-sizing: border-box !important;
    border: 1px solid #ffffff !important;
    background: #00285a !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-decoration: none !important;
  }
  body.page-id-32 .sv-qs-cert-grid {
    height: 3360px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    background: #ffffff !important;
    border-top: 1px solid #707070 !important;
    border-bottom: 1px solid #707070 !important;
  }
  body.page-id-32 .sv-qs-cert-intro {
    position: relative !important;
    height: 3360px !important;
    padding: 80px !important;
    box-sizing: border-box !important;
    border-right: 1px solid #707070 !important;
    background: #ffffff !important;
  }
  body.page-id-32 .sv-qs-cert-intro h2,
  body.page-id-32 .sv-qs-impact h2 {
    margin: 0 0 34px !important;
    color: #00285a !important;
    font-size: 26px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
  }
  body.page-id-32 .sv-qs-cert-intro p,
  body.page-id-32 .sv-qs-impact p,
  body.page-id-32 .sv-qs-impact small {
    color: #2e2e2e !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
  }
  body.page-id-32 .sv-qs-cert-list {
    height: 3360px !important;
    display: grid !important;
    grid-template-rows: repeat(7, 480px) !important;
    background: #ffffff !important;
  }
  body.page-id-32 .sv-qs-cert-list article {
    position: relative !important;
    height: 480px !important;
    min-height: 480px !important;
    padding: 56px 80px 44px !important;
    box-sizing: border-box !important;
    border-bottom: 1px solid #707070 !important;
    background: #ffffff !important;
  }
  body.page-id-32 .sv-qs-cert-list article:last-child { border-bottom: 0 !important; }
  body.page-id-32 .sv-qs-cert-list h3 {
    margin: 0 0 28px !important;
    color: #00285a !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
  }
  body.page-id-32 .sv-qs-cert-list p {
    margin: 0 !important;
    max-width: 720px !important;
    color: #2e2e2e !important;
    font-size: 15px !important;
    line-height: 1.22 !important;
  }
  body.page-id-32 .sv-pdf-placeholder {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: rgba(112,112,112,.72) !important;
    font-size: 92px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
  }
  body.page-id-32 .sv-qs-cert-list .sv-pdf-placeholder {
    position: absolute !important;
    right: 80px !important;
    bottom: 22px !important;
    width: 86px !important;
    height: 86px !important;
    font-size: 58px !important;
  }
  body.page-id-32 .sv-qs-impact {
    height: 960px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    border-bottom: 1px solid #707070 !important;
  }
  body.page-id-32 .sv-qs-impact > div {
    position: relative !important;
    height: 960px !important;
    padding: 80px !important;
    box-sizing: border-box !important;
  }
  body.page-id-32 .sv-qs-impact > div:first-child { background: #ffffff !important; }
  body.page-id-32 .sv-qs-impact > div:last-child { background: #f2f2f2 !important; }
  body.page-id-32 .sv-qs-impact h2 { margin-top: 0 !important; }
  body.page-id-32 .sv-qs-impact h2 {
    position: absolute !important;
    top: 80px !important;
    left: 80px !important;
    right: 80px !important;
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
  }
  body.page-id-32 .sv-qs-impact p {
    position: absolute !important;
    left: 80px !important;
    right: 80px !important;
    margin: 0 !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
  }
  body.page-id-32 .sv-qs-energy > div:first-child p { top: 435px !important; }
  body.page-id-32 .sv-qs-safety > div:last-child p { top: 360px !important; }
  body.page-id-32 .sv-qs-impact small {
    position: absolute !important;
    top: 625px !important;
    left: 80px !important;
    margin: 0 !important;
    font-size: 12px !important;
  }

  body.page-id-25 .sv-rd-rebuild { height: 2940px !important; }
  body.page-id-25 .sv-rd-work {
    height: 2400px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    background: #ffffff !important;
  }
  body.page-id-25 .sv-rd-left {
    height: 2400px !important;
    display: grid !important;
    grid-template-rows: 240px 960px 1200px !important;
    border-right: 1px solid #707070 !important;
    background: #ffffff !important;
  }
  body.page-id-25 .sv-rd-left h2 {
    margin: 0 !important;
    padding: 58px 80px !important;
    color: #00285a !important;
    font-size: 26px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
  }
  body.page-id-25 .sv-rd-left .sv-pdf-placeholder {
    height: 960px !important;
    border-top: 1px solid #707070 !important;
    border-bottom: 1px solid #707070 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: rgba(112,112,112,.72) !important;
    font-size: 92px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
  }
  body.page-id-25 .sv-rd-cards {
    height: 2400px !important;
    display: grid !important;
    grid-template-rows: repeat(5, 480px) !important;
  }
  body.page-id-25 .sv-rd-cards article {
    height: 480px !important;
    min-height: 480px !important;
    padding: 56px 80px 44px !important;
    box-sizing: border-box !important;
    border-bottom: 1px solid #707070 !important;
    background: #ffffff !important;
  }
  body.page-id-25 .sv-rd-cards article:last-child { border-bottom: 0 !important; }
  body.page-id-25 .sv-rd-cards h3 {
    margin: 0 0 28px !important;
    color: #00285a !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
  }
  body.page-id-25 .sv-rd-cards p {
    margin: 0 !important;
    max-width: 720px !important;
    color: #2e2e2e !important;
    font-size: 15px !important;
    line-height: 1.22 !important;
  }
  body.page-id-25 .sv-rd-closing {
    height: 540px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #00285a !important;
    color: #ffffff !important;
    text-align: center !important;
  }
  body.page-id-25 .sv-rd-closing p {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 42px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
  }

  body.page-id-23 .sv-formation-rebuild {
    height: 1920px !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
  }
  body.page-id-23 .sv-formation-intro {
    height: 960px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    border-top: 1px solid #707070 !important;
    border-bottom: 1px solid #707070 !important;
  }
  body.page-id-23 .sv-formation-copy,
  body.page-id-23 .sv-formation-media,
  body.page-id-23 .sv-formation-blank {
    position: relative !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  body.page-id-23 .sv-formation-copy {
    height: 960px !important;
    padding: 64px !important;
    border-right: 1px solid #707070 !important;
    background: #ffffff !important;
  }
  body.page-id-23 .sv-formation-copy h2 {
    margin: 0 !important;
    color: #00285a !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
  }
  body.page-id-23 .sv-formation-body {
    position: absolute !important;
    top: 280px !important;
    left: 64px !important;
    right: 64px !important;
  }
  body.page-id-23 .sv-formation-body p {
    margin: 0 0 28px !important;
    color: #2e2e2e !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
  }
  body.page-id-23 .sv-formation-media {
    background: #f2f2f2 !important;
    border-right: 1px solid #707070 !important;
  }
  body.page-id-23 .sv-formation-media:last-child { border-right: 0 !important; }
  body.page-id-23 .sv-formation-media::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(255,255,255,.08) !important;
    pointer-events: none !important;
  }
  body.page-id-23 .sv-formation-x {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: rgba(112,112,112,.72) !important;
    font-size: 92px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
  }
  body.page-id-23 .sv-formation-media strong {
    position: absolute !important;
    z-index: 1 !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    color: #00285a !important;
    font-size: 34px !important;
    line-height: 1.08 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }
  body.page-id-23 .sv-formation-media em {
    position: absolute !important;
    z-index: 1 !important;
    left: 32px !important;
    right: 32px !important;
    bottom: 32px !important;
    color: #00285a !important;
    font-size: 22px !important;
    font-style: normal !important;
    line-height: 1.1 !important;
    text-align: center !important;
  }
  body.page-id-23 .sv-formation-grid {
    height: 960px !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    grid-template-rows: repeat(2, 480px) !important;
    border-bottom: 1px solid #707070 !important;
  }
  body.page-id-23 .sv-formation-grid > * {
    border-bottom: 1px solid #707070 !important;
  }
  body.page-id-23 .sv-formation-grid > :nth-child(-n+3) { border-top: 0 !important; }
  body.page-id-23 .sv-formation-grid > :nth-child(4),
  body.page-id-23 .sv-formation-grid > :nth-child(7) { border-right: 0 !important; }
  body.page-id-23 .sv-formation-grid > :nth-child(3),
  body.page-id-23 .sv-formation-grid > :nth-child(4) { background: #ffffff !important; }
  body.page-id-23 .sv-formation-grid > :nth-child(1) { grid-column: 1; grid-row: 1; }
  body.page-id-23 .sv-formation-grid > :nth-child(2) { grid-column: 2; grid-row: 1; }
  body.page-id-23 .sv-formation-grid > :nth-child(3) { grid-column: 3 / 5; grid-row: 1; }
  body.page-id-23 .sv-formation-grid > :nth-child(4) { grid-column: 1; grid-row: 2; }
  body.page-id-23 .sv-formation-grid > :nth-child(5) { grid-column: 2; grid-row: 2; }
  body.page-id-23 .sv-formation-grid > :nth-child(6) { grid-column: 3; grid-row: 2; }
  body.page-id-23 .sv-formation-grid > :nth-child(7) { grid-column: 4; grid-row: 2; }

  /* Contact banners: the PDF uses fixed desktop coordinates, not the
   * accumulated Elementor flex gap/margins used by the legacy section. */
  body.sv-institutional-page .sv-pdf-contact > .e-con-inner {
    position: relative !important;
    display: block !important;
    padding-left: 80px !important;
    padding-right: 80px !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .elementor-widget-heading,
  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .elementor-widget-text-editor,
  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .sv-pdf-contact-cta {
    position: absolute !important;
    box-sizing: border-box !important;
    margin: 0 !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .elementor-widget-heading {
    top: 129px !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    text-align: center !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .elementor-widget-text-editor {
    top: 213px !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    text-align: center !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .elementor-widget-text-editor p {
    margin: 0 !important;
    line-height: 1.15 !important;
  }

  body.sv-institutional-page .sv-pdf-contact > .e-con-inner > .sv-pdf-contact-cta {
    top: 316px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
  }

  /* Chi Siamo has the compact contact composition shown in its PDF. */
  body.page-id-21 .sv-pdf-contact > .e-con-inner > .elementor-widget-heading {
    top: 97px !important;
  }

  body.page-id-21 .sv-pdf-contact > .e-con-inner > .elementor-widget-text-editor {
    top: 181px !important;
  }

  body.page-id-21 .sv-pdf-contact > .e-con-inner > .sv-pdf-contact-cta {
    top: 284px !important;
  }

  /* Il Gruppo contains the contact copy in an extra Elementor wrapper;
   * place that wrapper on the same 213px baseline as the other PDF pages. */
  body.page-id-19 .sv-pdf-contact > .e-con-inner > .elementor-element-8222445 {
    position: absolute !important;
    top: 213px !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    margin: 0 !important;
  }
}

/* Shared desktop header for pages whose PDF does not provide a hero behind
 * the navigation (notably the product list/detail). Institutional pages get
 * the same treatment from the existing gradient hero underneath the header. */
@media (min-width: 768px) {
  body.sv-site-header-page:not(.sv-institutional-page)::before {
    content: "DENTRO L’INDUSTRIA";
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    height: 180px;
    overflow: hidden;
    box-sizing: border-box;
    padding-top: 18px;
    background: linear-gradient(112deg, #00285a 0%, #123d70 34%, #6a315d 69%, #e63237 100%);
    color: rgba(255,255,255,.12);
    font-size: clamp(84px, 10vw, 192px);
    font-weight: 700;
    letter-spacing: -.075em;
    line-height: .86;
    white-space: nowrap;
    pointer-events: none;
  }

  body.sv-site-header-page:not(.sv-institutional-page) .sv-institutional-topbar,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar {
    position: relative !important;
    z-index: 1003 !important;
    background: transparent !important;
    color: #ffffff !important;
  }

  body.sv-site-header-page:not(.sv-institutional-page) .sv-institutional-topbar {
    z-index: 1004 !important;
    background: #00285a !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar {
    height: 120px !important;
    min-height: 120px !important;
    max-height: 120px !important;
    overflow: visible !important;
  }

  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar > .e-con-inner {
    min-height: 120px !important;
    box-sizing: border-box !important;
    align-items: flex-start !important;
    padding-top: 18px !important;
  }

  body.sv-site-header-page:not(.sv-institutional-page) .sv-institutional-topbar,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-institutional-topbar a,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-institutional-topbar span,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar .elementor-heading-title,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar .elementor-widget-text-editor,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar .elementor-widget-text-editor *,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar a,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar span {
    color: #ffffff !important;
  }

  body.sv-site-header-page:not(.sv-institutional-page) .sv-azienda-subbar {
    background: linear-gradient(112deg, #00285a 0%, #123d70 34%, #6a315d 69%, #e63237 100%);
    border-color: rgba(255,255,255,.24);
    box-shadow: none;
  }

  body.sv-site-header-page:not(.sv-institutional-page) .sv-azienda-subbar a {
    color: #ffffff !important;
  }
}

/* One shared PDF header: solid navy utility row above the transparent
 * 120px navigation row, with both rows layered over the branded hero. */
@media (min-width: 768px) {
  /* Logged-in screenshots include WordPress's 32px admin bar. Extend only
   * the decorative banner behind the shared header so it still reaches the
   * end of the 60px utility row + 120px navigation row. */
  body.logged-in.admin-bar.sv-site-header-page:not(.sv-institutional-page)::before {
    height: 212px;
  }

  body.sv-site-header-page .sv-institutional-topbar {
    position: relative !important;
    z-index: 1004 !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
    background: #00285a !important;
    color: #ffffff !important;
  }

  body.sv-site-header-page .sv-institutional-topbar > .e-con-inner {
    display: flex !important;
    min-height: 60px !important;
    height: 60px !important;
    align-items: center !important;
  }

  body.sv-site-header-page .sv-institutional-topbar > .elementor-widget-text-editor:first-child {
    position: absolute !important;
    left: clamp(32px, 4.1667vw, 80px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: clamp(14px, .78125vw, 15px) !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  body.sv-site-header-page .sv-topbar-contact {
    position: absolute !important;
    right: clamp(32px, 4.2708vw, 82px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: clamp(24px, 2.2917vw, 44px) !important;
    margin: 0 !important;
    font-size: clamp(15px, .9375vw, 18px) !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  body.sv-site-header-page .sv-topbar-contact::after {
    content: "in";
    display: inline-flex;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    margin-left: clamp(-6px, -.3125vw, -4px);
    border-radius: 3px;
    background: #ffffff;
    color: #00285a;
    font-family: Arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.06em;
  }

  body.sv-site-header-page .sv-main-menu-bar > .elementor-element-a51c93e {
    column-gap: 0 !important;
    padding-right: clamp(12px, 1.1458vw, 22px) !important;
  }

  /* Header widget IDs differ between Elementor page exports. Target the
   * shared two-column header structure so every page gets identical nav
   * coordinates rather than only the Il Gruppo template. */
  body.sv-site-header-page .sv-main-menu-bar > .e-con:last-child {
    column-gap: 0 !important;
    padding-right: clamp(12px, 1.1458vw, 22px) !important;
  }

  body.sv-site-header-page .sv-main-menu-bar > .e-con:last-child > .elementor-widget-heading:nth-child(2) {
    margin-left: clamp(36px, 3.1771vw, 61px) !important;
  }

  body.sv-site-header-page .sv-main-menu-bar > .e-con:last-child > .elementor-widget-heading:nth-child(3) {
    margin-left: clamp(26px, 2.2917vw, 44px) !important;
  }

  body.sv-site-header-page .sv-main-menu-bar > .e-con:last-child > .elementor-widget-heading:nth-child(4) {
    margin-left: clamp(27px, 2.3958vw, 46px) !important;
  }

  body.sv-site-header-page .sv-main-menu-bar > .elementor-element-5577fb0 { margin-left: 0 !important; }
  body.sv-site-header-page .sv-main-menu-bar .elementor-element-838cb8f { margin-left: clamp(36px, 3.1771vw, 61px) !important; }
  body.sv-site-header-page .sv-main-menu-bar .elementor-element-54ddb7c { margin-left: clamp(26px, 2.2917vw, 44px) !important; }
  body.sv-site-header-page .sv-main-menu-bar .elementor-element-22165e5 { margin-left: clamp(27px, 2.3958vw, 46px) !important; }

  body.sv-site-header-page .sv-main-menu-bar .elementor-widget-heading:not(.sv-header-brand) a {
    font-size: clamp(16px, .9375vw, 18px) !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  body.sv-site-header-page .sv-azienda-menu a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  body.sv-site-header-page .sv-azienda-menu a::after {
    content: "";
    display: inline-block;
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    margin-top: -4px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg);
  }

  body.sv-site-header-page .sv-institutional-topbar,
  body.sv-site-header-page .sv-institutional-topbar a,
  body.sv-site-header-page .sv-institutional-topbar span {
    color: #ffffff !important;
  }

  body.sv-site-header-page .sv-main-menu-bar {
    position: relative !important;
    z-index: 1003 !important;
  }
}

/* Keep the decorative title inside the actual shared navigation box. */
@media (min-width: 768px) {
  body.sv-institutional-page .sv-pdf-hero::before {
    content: none !important;
  }

  body.sv-site-header-page:not(.sv-institutional-page)::before {
    content: "" !important;
    color: transparent !important;
  }

  body.sv-site-header-page .sv-main-menu-bar::before {
    content: "DENTRO L’INDUSTRIA";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 120px;
    transform: scaleX(var(--sv-header-wordmark-scale, 1));
    transform-origin: center;
    padding-bottom: .075em;
    overflow: hidden;
    box-sizing: border-box;
    border: 0 !important;
    border-bottom: 0 !important;
    --border-top-width: 0px !important;
    --border-right-width: 0px !important;
    --border-bottom-width: 0px !important;
    --border-left-width: 0px !important;
    --border-block-start-width: 0px !important;
    --border-block-end-width: 0px !important;
    color: rgba(255,255,255,.12);
    font-size: clamp(64px, 8.333333vw, 160px);
    font-weight: 700;
    letter-spacing: -.075em;
    line-height: 1;
    white-space: nowrap;
    pointer-events: none;
  }

  body.sv-site-header-page .sv-main-menu-bar > .e-con-inner {
    position: relative !important;
    z-index: 1 !important;
  }

  /* The breadcrumb frame inherited a one-pixel Elementor divider. The PDF
   * header meets the breadcrumb/content area without this extra rule. */
  body.sv-site-header-page .e-con.e-parent:has(.sv-breadcrumb-widget) {
    border-bottom: 0 !important;
    --border-bottom-width: 0px !important;
    --border-block-end-width: 0px !important;
  }
}

/* The shared header must meet the page hero cleanly. The submenu itself is
 * still revealed on hover/focus and kept on company pages; only its frame
 * and the collapsed spacer are removed. */
@media (min-width: 768px) {
  /* The injected company bar is a sibling of the menu inside Elementor's
   * header wrapper. Remove the wrapper gap and inherited dividers so the
   * collapsed bar cannot leave a ruled spacer under the shared header. */
  body.sv-site-header-page .e-con:has(.sv-main-menu-bar + .sv-azienda-subbar),
  body.sv-site-header-page .e-con-inner:has(.sv-main-menu-bar + .sv-azienda-subbar) {
    gap: 0 !important;
    row-gap: 0 !important;
    --row-gap: 0px !important;
    --column-gap: 0px !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.sv-site-header-page .sv-main-menu-bar {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  body.sv-site-header-page .sv-azienda-subbar {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  body.sv-site-header-page:not(.sv-azienda-submenu-open):not(.sv-azienda-submenu-persistent)
    .sv-azienda-subbar:not(.is-open):not(.is-persistent) {
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  /* Keep the menu row at the shared PDF height. The institutional header
   * had an 18px taller row than the catalog header, leaving a gray strip
   * between navigation and page content. */
  body.sv-site-header-page .sv-main-menu-bar {
    height: 120px !important;
    min-height: 120px !important;
    max-height: 120px !important;
    box-sizing: border-box !important;
  }
  body.sv-site-header-page .sv-main-menu-bar > .e-con-inner {
    height: 120px !important;
    min-height: 120px !important;
    box-sizing: border-box !important;
  }
  body.sv-site-header-page .sv-main-menu-bar + .sv-azienda-subbar {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
  }

  /* No negative compensation: it would overlap the final 19px of the menu. */
  body.sv-site-header-page:not(.sv-azienda-submenu-open):not(.sv-azienda-submenu-persistent)
    .sv-azienda-subbar:not(.is-open):not(.is-persistent) {
    margin-block-end: 0 !important;
  }

  body.sv-site-header-page.sv-azienda-submenu-open .sv-azienda-subbar,
  body.sv-site-header-page.sv-azienda-submenu-persistent .sv-azienda-subbar {
    margin-block-end: 0 !important;
  }
}

/* WAME 02/10 typography and copy-column measurements, 1920px artboards.
 * Scoped to the four pages under review; catalog styles remain untouched. */
@media (min-width: 768px) {
  body:is(.page-id-21,.page-id-23,.page-id-25,.page-id-32) .sv-pdf-hero h1 {
    font-size: 40px !important;
    line-height: 48px !important;
  }
  body:is(.page-id-21,.page-id-23,.page-id-25,.page-id-32) .sv-pdf-hero .elementor-widget-text-editor:first-child {
    font-family: Roboto, sans-serif !important;
    font-size: 20px !important;
    line-height: 24px !important;
  }
  body:is(.page-id-21,.page-id-23,.page-id-25,.page-id-32) .sv-pdf-hero .elementor-widget-text-editor:nth-child(3) {
    font-family: Roboto, sans-serif !important;
    font-size: 26px !important;
    line-height: 30px !important;
    max-width: 1040px !important;
    width: 1040px !important;
  }
  body.page-id-21 .elementor-element-b67360e {
    display: grid !important;
    grid-template-columns: 61.458333% 38.541667% !important;
    height: 960px !important;
    padding: 0 !important;
    gap: 0 !important;
  }
  body.page-id-21 .elementor-element-b67360e > .e-con {
    position: relative !important;
    width: 100% !important;
    height: 960px !important;
    padding: 0 !important;
  }
  body.page-id-21 .elementor-element-16ef444 > .e-con-inner {
    position: relative !important;
    width: 100% !important;
    height: 960px !important;
    padding: 0 !important;
  }
  body.page-id-21 .elementor-element-16ef444 .elementor-widget-heading { display: none !important; }
  body.page-id-21 .elementor-element-d511497 {
    position: absolute !important;
    top: 284px !important;
    left: 80px !important;
    right: 80px !important;
    width: auto !important;
    margin: 0 !important;
    font-family: Roboto, sans-serif !important;
    font-size: 28px !important;
    line-height: 33px !important;
    color: #2e2e2e !important;
  }
  body.page-id-21 .elementor-element-d511497 p { margin: 0 0 33px !important; }
  body.page-id-21 .sv-chi-pdf-grid .elementor-element-53ac2ac { max-width: 720px !important; }
  body.page-id-21 .sv-chi-pdf-grid > :nth-child(-n+2) .elementor-widget-text-editor { max-width: 560px !important; }
  body.page-id-23 .sv-formation-copy { padding: 76px 80px !important; }
  body.page-id-23 .sv-formation-copy h2 { font-size: 40px !important; line-height: 46px !important; }
  body.page-id-23 .sv-formation-body { top: 351px !important; left: 80px !important; right: 80px !important; }
  body.page-id-23 .sv-formation-body p { font-family: Roboto, sans-serif !important; font-size: 28px !important; line-height: 33px !important; margin-bottom: 33px !important; }
  body.page-id-23 .sv-formation-media em { font-family: Roboto, sans-serif !important; font-size: 36px !important; line-height: 42px !important; left: 40px !important; right: 40px !important; bottom: 46px !important; }
  body.page-id-25 .sv-rd-left h2 { font-size: 40px !important; line-height: 46px !important; padding-top: 76px !important; }
  body.page-id-25 .sv-rd-cards article { padding-top: 76px !important; }
  body.page-id-25 .sv-rd-cards h3,
  body.page-id-32 .sv-qs-cert-list h3 { font-family: Roboto, sans-serif !important; font-size: 36px !important; line-height: 42px !important; margin-bottom: 32px !important; }
  body.page-id-25 .sv-rd-cards p,
  body.page-id-32 .sv-qs-cert-list p { font-family: Roboto, sans-serif !important; font-size: 28px !important; line-height: 33px !important; }
  body.page-id-25 .sv-rd-closing p { font-size: 40px !important; line-height: 48px !important; }
  body.page-id-32 .elementor-element-46739fb h2 { font-size: 40px !important; line-height: 46px !important; }
  body.page-id-32 .elementor-element-7bc8c9f { font-family: Roboto, sans-serif !important; font-size: 28px !important; line-height: 33px !important; }
  body.page-id-32 .sv-qs-cert-intro h2,
  body.page-id-32 .sv-qs-impact h2 { font-size: 40px !important; line-height: 46px !important; }
  body.page-id-32 .sv-qs-cert-intro p { font-family: Roboto, sans-serif !important; font-size: 28px !important; line-height: 33px !important; margin-top: 76px !important; }
  body.page-id-32 .sv-qs-cert-list article { padding-top: 76px !important; }
  body.page-id-32 .sv-qs-impact p { font-family: Roboto, sans-serif !important; font-size: 28px !important; line-height: 33px !important; }
  body.page-id-32 .sv-qs-energy > div:first-child p { top: 529px !important; }
  body.page-id-32 .sv-qs-safety > div:last-child p { top: 652px !important; }
}

/* Shared PDF header typography. Closed submenus must not leave a divider. */
@media (min-width: 768px) {
  body.sv-site-header-page .sv-main-menu-bar .elementor-widget-heading:not(.sv-header-brand) a,
  body.sv-site-header-page .sv-institutional-topbar .elementor-widget-text-editor,
  body.sv-site-header-page .sv-institutional-topbar .elementor-widget-text-editor * {
    font-family: Roboto, sans-serif !important;
    font-size: 20px !important;
    line-height: 24px !important;
  }
  body.sv-site-header-page .sv-azienda-subbar:is(.is-open,.is-persistent) {
    border-top: 1px solid rgba(255,255,255,.35) !important;
    border-bottom: 1px solid rgba(255,255,255,.35) !important;
    box-sizing: border-box !important;
  }
  /* Editorial shooting notes are not public copy; retain the agreed X. */
  body.page-id-23 .sv-formation-media strong { display: none !important; }
  body.sv-site-header-page .sv-main-menu-bar::before { letter-spacing: -.035em !important; }
  body.sv-site-header-page .sv-main-menu-bar .elementor-widget-heading:not(.sv-header-brand) a { font-weight: 400 !important; }
  body.sv-site-header-page .sv-institutional-topbar > .elementor-widget-text-editor:first-child { font-size: 20px !important; }
  body:is(.page-id-21,.page-id-23,.page-id-25,.page-id-32) .sv-pdf-hero .elementor-widget-text-editor:last-child {
    width: 1040px !important;
    max-width: calc(100% - 160px) !important;
  }
  body.page-id-23 .sv-formation-copy h2 { max-width: 700px !important; }
  body.page-id-23 .sv-formation-body { max-width: 720px !important; }
  body.sv-site-header-page .sv-azienda-subbar:is(.is-open,.is-persistent) {
    height: 60px !important;
    min-height: 60px !important;
  }
  body.page-id-19 .sv-pdf-hero { margin-top: -240px !important; }
  body:is(.page-id-34,.page-id-36):not(.sv-azienda-submenu-open) .sv-pdf-hero {
    margin-top: -161px !important;
  }
}

/* Sistema Tintometrico PDF100926: native, measured desktop sections; approved X media. */
@media (min-width: 768px) {
  body.page-id-34 .sv-pdf-hero { margin-top: 0 !important; height: 480px !important; min-height: 480px !important; }
  body.page-id-34 .sv-pdf-hero > .e-con-inner { width: 1920px !important; max-width: 100% !important; }
  body.page-id-34 .sv-pdf-hero .elementor-element-69b8d6d { top: 88px !important; }
  body.page-id-34 .sv-pdf-hero .elementor-element-496df26 { top: 214px !important; width: 1600px !important; }
  body.page-id-34 .sv-pdf-hero .elementor-element-496df26 h1 { font-size: 50px !important; line-height: 58px !important; }
  body.page-id-34 .sv-pdf-hero .elementor-element-70fed87 { top: 285px !important; width: 1100px !important; font-size: 28px !important; line-height: 32px !important; }
  body.page-id-34 :is(.sv-tint-stats,.sv-tint-section-heading,.sv-tint-split,.sv-tint-partner-band,.sv-tint-stat,.sv-tint-card,.sv-tint-card-column,.sv-tint-media-column) { padding: 0 !important; margin: 0 !important; gap: 0 !important; box-sizing: border-box !important; flex-shrink: 0 !important; }
  body.page-id-34 .sv-tint-stats { display: grid !important; grid-template-columns: repeat(3,1fr) !important; height: 280px !important; color: #00285a; }
  body.page-id-34 .sv-tint-stat { position: relative !important; width: 100% !important; height: 280px !important; border: 1px solid #707070; }
  body.page-id-34 .sv-tint-section-heading { position: relative !important; display: block !important; height: 319px !important; min-height: 319px !important; border-bottom: 1px solid #707070; color: #00285a; }
  body.page-id-34 .sv-tint-section-heading:nth-of-type(8) { height: 320px !important; min-height: 320px !important; }
  body.page-id-34 .sv-tint-heading-logo { position: absolute !important; right: 80px !important; margin: 0 !important; }
  body.page-id-34 .sv-tint-systems-logo { top: 60px !important; width: 580px !important; }
  body.page-id-34 .sv-tint-sfera-logo { top: 80px !important; width: 227px !important; }
  body.page-id-34 .sv-tint-split { display: grid !important; grid-template-columns: 50% 50% !important; align-items: stretch !important; }
  body.page-id-34 :is(.sv-tint-card-column,.sv-tint-media-column) { width: 100% !important; min-width: 0 !important; }
  body.page-id-34 .sv-tint-card-column { display: block !important; }
  body.page-id-34 .sv-tint-card { position: relative !important; display: block !important; height: 380px !important; min-height: 380px !important; border: 1px solid #707070; color: #00285a; }
  body.page-id-34 .sv-tint-pdf-text p { font: inherit !important; color: inherit !important; margin: 0 !important; }
  body.page-id-34 .sv-tint-media-column { display: block !important; border-right: 1px solid #707070; }
  body.page-id-34 .sv-tint-placeholder { width: 100% !important; height: 960px !important; min-height: 960px !important; position: sticky !important; top: 0 !important; background: white !important; }
  body.page-id-34 .sv-tint-placeholder::before, body.page-id-34 .sv-tint-placeholder::after { content: ''; position: absolute; left: 25%; top: 50%; width: 50%; height: 2px; background: #999; transform: rotate(45deg); }
  body.page-id-34 .sv-tint-placeholder::after { transform: rotate(-45deg); }
  body.page-id-34 .sv-tint-partner-band { position: relative !important; height: 560px !important; min-height: 560px !important; display: block !important; color: white; background: #00285a !important; overflow: hidden !important; }
}

/* Group PDF 100926: measured intro and five 400px brand rows. */
@media (min-width: 768px) {
  body.page-id-19 .elementor-element-36c98ec {
    display: grid !important; grid-template-columns: 61.458333% 38.541667% !important;
    padding: 0 !important; gap: 0 !important;
  }
  body.page-id-19 .elementor-element-36c98ec > .e-con { width: 100% !important; }
  body.page-id-19 .elementor-element-f10fba5 {
    padding: 416px 80px 0 !important; justify-content: flex-start !important; gap: 33px !important;
  }
  body.page-id-19 .elementor-element-f10fba5 .elementor-heading-title {
    font-family: Roboto, sans-serif !important; font-size: 28px !important;
    line-height: 33px !important; font-weight: 700 !important;
    margin: 0 !important;
  }
  body.page-id-19 .elementor-element-f10fba5 .elementor-widget-heading { --widgets-spacing: 0px; margin: 0 !important; }
  body.page-id-19 :is(.elementor-element-98d371d,.elementor-element-621346c,.elementor-element-061db17,.elementor-element-18255d1,.elementor-element-b8a8053) { padding: 0 !important; gap: 0 !important; }
  body.page-id-19 .sv-group-brand-copy-host {
    position: relative !important; padding: 0 !important;
  }
  body.page-id-19 .sv-group-brand-copy-host .sv-group-brand-copy-inner { padding: 0 !important; }
  body.page-id-19 .sv-group-brand-copy {
    position: absolute !important; inset: 0 40px !important; display: block !important;
  }
  body.page-id-19 .sv-group-brand-copy .sv-group-brand-category {
    position: absolute !important; top: 38px !important;
    font-family: Roboto, sans-serif !important; font-size: 20px !important; line-height: 24px !important;
  }
  body.page-id-19 .sv-group-brand-copy h3 {
    position: absolute !important; top: 177px !important; margin: 0 !important;
    font-family: Roboto, sans-serif !important; font-size: 36px !important; line-height: 42px !important;
  }
  body.page-id-19 .sv-group-brand-copy p {
    position: absolute !important; top: 245px !important;
    font-family: Roboto, sans-serif !important; font-size: 24px !important; line-height: 28px !important;
    color: #2e2e2e !important;
  }
  body.page-id-19 .elementor-element-4b77c4a .sv-group-brand-copy p { top: 287px !important; }
  body.page-id-19 .elementor-element-736f07b { background: #f37f00 !important; }
  body.page-id-19 .elementor-element-eeee51 { background: #596372 !important; }
  body.page-id-19 .elementor-element-85ed13f { background: #f32c2f !important; }
  body.page-id-19 .elementor-element-f5b7f4f { background: #efeeeb !important; }
  body.page-id-19 .elementor-element-c58793d .sv-group-brand-copy :is(h3,.sv-group-brand-category) { color: #f37f00 !important; }
  body.page-id-19 .elementor-element-783324e .sv-group-brand-copy :is(h3,.sv-group-brand-category) { color: #596372 !important; }
  body.page-id-19 .elementor-element-4b77c4a .sv-group-brand-copy :is(h3,.sv-group-brand-category) { color: #f32c2f !important; }
  body.page-id-19 .elementor-element-77c4534 .sv-group-brand-copy :is(h3,.sv-group-brand-category) { color: #2e2e2e !important; }
  body.sv-institutional-header-scrolled .sv-azienda-subbar.is-persistent { background: #00285a !important; }
}

@media (min-width: 768px) {
  body.page-id-19 .elementor-element-b19a9c8,
  body.page-id-19 .sv-group-brand-copy-host > .elementor-widget { display: none !important; }
  body.page-id-19 .elementor-element-eeee51d { width: 50% !important; height: 400px !important; background: #596372 !important; }
  body.page-id-19 .elementor-element-b9caa5c { background: #00285a !important; }
  body.page-id-19 .elementor-element-b9caa5c .e-con-inner { justify-content: center !important; align-items: center !important; }
  body.page-id-19 .elementor-element-baf8a4b { width: 100% !important; text-align: center !important; }
  body.page-id-19 .elementor-element-baf8a4b h2 { font-size: 40px !important; line-height: 48px !important; }
  body.page-id-19 .elementor-element-cb79b5b { width: 50% !important; height: 480px !important; min-height: 480px !important; flex-basis: 50% !important; }
  body.page-id-19 .elementor-element-7903095 { width: 50% !important; height: 480px !important; min-height: 480px !important; flex-basis: 50% !important; }
  body.page-id-19 .elementor-element-50a0e87 { width: 100% !important; height: 960px !important; min-height: 960px !important; flex-basis: 960px !important; }
}

/* PDF colors are sampled from the desktop reference, not approximated stops. */
@media (min-width: 768px) {
  body.sv-institutional-page .sv-pdf-hero { background: linear-gradient(90deg, #00285a 0%, #00285a 20%, #e63237 100%) !important; }
  body.sv-institutional-page .sv-footer-host .sv-footer-logo {
    content: url('logo-sestriere-correct.jpg'); width: 264px !important; height: 80px !important;
    object-fit: contain; border: 1px solid #fff; box-sizing: border-box; filter: none !important;
  }
  body.sv-institutional-page .sv-footer-host > .sv-footer-overlay {
    height: 150px !important; min-height: 150px !important; left: 0 !important; right: 0 !important;
    width: 100% !important; align-items: flex-start !important;
  }
  body.sv-institutional-page .sv-footer-host > .sv-footer-overlay .elementor-widget-heading {
    width: 100% !important; margin: 0 !important; padding: 0 !important;
  }
  body.sv-institutional-page .sv-footer-host > .sv-footer-overlay .elementor-heading-title {
    font-size: 160px !important; line-height: 192px !important; letter-spacing: -.035em !important;
    text-align: left !important; width: 100% !important; margin: 0 !important;
  }
  body.admin-bar.sv-institutional-header-scrolled .sv-azienda-subbar.is-persistent { top: 32px !important; }
}

/* Shared header 07/10: the gradient belongs to the actual navigation box,
 * never to a body-level banner with a different height/admin-bar offset.
 * Native Elementor content remains editable; only the shared frame is fixed. */
@media (min-width: 768px) {
  body.sv-site-header-page::before { content: none !important; }
  body.sv-site-header-page .sv-main-menu-bar,
  body.sv-site-header-page:not(.sv-institutional-page) .sv-main-menu-bar {
    background: linear-gradient(90deg, #00285a 0%, #00285a 20%, #e63237 100%) !important;
    padding-block: 0 !important;
    align-items: center !important;
  }
  body.sv-site-header-page .sv-main-menu-bar > .e-con-inner {
    padding-block: 0 !important;
    align-items: center !important;
  }
  body.sv-site-header-page .sv-main-menu-bar :is(.e-con,.e-con-inner):has(> .sv-header-brand) {
    height: 120px !important;
    min-height: 120px !important;
    padding-block: 0 !important;
    justify-content: center !important;
  }
  body.sv-site-header-page .sv-header-brand,
  body.sv-site-header-page .sv-header-brand .elementor-heading-title {
    margin-block: 0 !important;
    align-self: flex-start !important;
  }
  body.sv-site-header-page .sv-main-menu-bar .sv-header-brand .elementor-heading-title > a {
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }
  body.sv-site-header-page .sv-azienda-subbar {
    background: linear-gradient(90deg, #00285a 0%, #00285a 20%, #e63237 100%) !important;
  }
  body.sv-site-header-page .sv-azienda-subbar a { color: #fff !important; }
}
.sv-language-links { margin: 0; white-space: nowrap; }
.sv-site-contact-links { display: flex; align-items: center; gap: clamp(24px, 2.2917vw, 44px); margin: 0; }
.sv-language-links a { color: inherit !important; font: inherit; text-decoration: none; }
.sv-language-links a:hover, .sv-language-links a:focus-visible { text-decoration: underline; }
