/* Native Elementor background video on the existing first Home hero.
 * Conditional selectors preserve the old layout if an editor removes video. */
/* The decorative pseudo-element must not enlarge the page after Gotham loads.
 * The company subbar is a sibling, so clipping the main bar does not hide it. */
body.page-id-17.sv-site-header-page .sv-main-menu-bar { overflow: clip !important; }
body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) {
  min-height: clamp(560px, 46.875vw, 900px);
  isolation: isolate;
  background-color: #052954;
}
body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) > .elementor-background-video-container { z-index: -2; }
body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container)::after {
  content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(90deg, rgba(0,18,43,.50), rgba(0,18,43,.12) 65%, transparent);
}
body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-element-309473c { display: none; }
body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-element-9b92a46 {
  background: transparent !important; min-height: inherit; justify-content: center;
}
body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-element-9b92a46 :is(.elementor-heading-title,.elementor-widget-text-editor) { color: white !important; }
body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-button {
  background: #052954 !important; color: white !important; border-color: #052954 !important;
}
/* SV_HOME.pdf: 900px hero, 64/80 heading, 26/30 copy, 454x90 CTA
 * at the 1920px artboard. Interpolate only this newly enabled video hero. */
@media(min-width:1025px) {
  body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-heading-title {
    font-size: clamp(40px,3.333333vw,64px) !important; line-height: 1.25 !important;
  }
  body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-widget-text-editor {
    font-size: clamp(20px,1.354167vw,26px) !important; line-height: 1.153846 !important; max-width: 720px;
  }
  body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-widget-button { margin-top: 56px; }
  body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-button {
    font-size: clamp(20px,1.354167vw,26px) !important; font-weight: 400;
    min-height: 90px; width: 454px; max-width: 100%; display: inline-flex; align-items: center; justify-content: center;
  }
}
@media(max-width:1024px) {
  body.page-id-17.sv-site-header-page .sv-institutional-topbar { background: #00285a !important; color: white !important; }
  body.page-id-17.sv-site-header-page .sv-institutional-topbar a { color: white !important; }
  body.page-id-17.sv-site-header-page .sv-main-menu-bar { background: linear-gradient(90deg,#00285a,#e63237) !important; color: white !important; }
  body.page-id-17.sv-site-header-page .sv-main-menu-bar .elementor-heading-title a { color: white !important; }
  body.page-id-17.sv-site-header-page .sv-header-brand .elementor-heading-title {
    width: 264px !important; max-width: 100% !important; height: 80px !important;
    background: url('logo-sestriere-correct.jpg') center/contain no-repeat !important;
    text-indent: -9999px !important; overflow: hidden !important;
  }
  body.page-id-17.sv-site-header-page .sv-header-brand .elementor-heading-title > a { display: block !important; width: 100% !important; height: 100% !important; }
  body.page-id-17.sv-site-header-page .elementor-element.sv-main-menu-bar,
  body.page-id-17.sv-site-header-page .elementor-element.sv-main-menu-bar > .e-con-inner {
    display: flex !important; flex-direction: column !important; align-items: stretch !important;
    height: auto !important; min-height: 0 !important; max-height: none !important; gap: 24px !important;
  }
  body.page-id-17.sv-site-header-page .elementor-element.sv-main-menu-bar { padding: 24px !important; }
  body.page-id-17.sv-site-header-page .elementor-element.sv-main-menu-bar > .e-con-inner { padding: 0 !important; }
  body.page-id-17.sv-site-header-page .elementor-element.sv-main-menu-bar .e-con {
    width: 100% !important; flex-basis: auto !important; margin: 0 !important; padding: 0 !important;
    display: flex !important; flex-wrap: wrap !important; justify-content: flex-start !important; gap: 20px !important;
  }
  body.page-id-17.sv-site-header-page .elementor-element.sv-main-menu-bar .e-con:has(> .sv-header-brand) { height: 80px !important; min-height: 80px !important; }
  body.page-id-17.sv-site-header-page .elementor-element.sv-main-menu-bar .elementor-widget {
    position: static !important; margin: 0 !important; transform: none !important; width: auto !important; flex: 0 0 auto !important;
  }
  body.page-id-17.sv-site-header-page .sv-main-menu-bar::before { transform: none !important; max-width: 100%; }
  body.page-id-17.sv-site-header-page .sv-azienda-subbar {
    background: linear-gradient(90deg,#00285a,#e63237) !important;
  }
  body.page-id-17.sv-site-header-page .sv-azienda-subbar a { color: white !important; }
  body.page-id-17.sv-site-header-page .sv-azienda-subbar:not(.is-open):not(.is-persistent) {
    height: 0 !important; min-height: 0 !important; max-height: 0 !important;
    padding: 0 !important; border: 0 !important; margin: 0 !important; overflow: hidden !important;
  }
  body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-element-9b92a46 {
    width: 100%; padding: 48px 5.5%; min-height: 560px;
  }
}
@media(max-width:767px) {
  body.page-id-17 .elementor-element-5fba7a8:has(> .elementor-background-video-container) .elementor-heading-title {
    font-size: clamp(30px,8.2vw,48px) !important; line-height: 1.2 !important; overflow-wrap: break-word;
  }
}
