.elementor-84 .elementor-element.elementor-element-24a74e1{--display:flex;}/* Start custom CSS for html, class: .elementor-element-a41de2e *//* ============================================================
   UNIVEX FREIGHT — Landing CSS (Fase 1)
   Sezioni incluse: Header · Hero · Trust bar
   Tutto scoped sotto #uvx-freight-landing — zero CSS globale.
   Classi prefissate .uvx-fr-*.
   ============================================================ */


/* ---------- RESET minimale per visualizzazione standalone in browser
   (in Elementor il body è già full-width, queste regole sono inerti) ---------- */
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  background: #0c0c25;
}


/* ---------- TOKENS (custom properties scoped) ---------- */
#uvx-freight-landing {
  /* Brand — colori ufficiali Freight (logo): navy #262655 + giallo #eee52c.
     Le sfumature sono derivate da questi due valori, non sono inventate. */
  --uvx-fr-navy: #262655;             /* navy ufficiale logo */
  --uvx-fr-navy-deep: #14143b;        /* navy 50% più scuro (gradient hero top) */
  --uvx-fr-navy-darker: #0c0c25;      /* navy 80% più scuro (gradient hero bottom) */
  --uvx-fr-navy-tint: #5a5ac8;        /* navy schiarito (alone blu hero) */
  --uvx-fr-ink: #262655;              /* testi su bianco */
  --uvx-fr-ink-muted: #5d6075;        /* muted derivato dal navy */
  --uvx-fr-white: #ffffff;
  --uvx-fr-bg-light: #ffffff;
  --uvx-fr-border-soft: rgba(38, 38, 85, 0.10);

  /* Accent — giallo ufficiale */
  --uvx-fr-accent: #eee52c;
  --uvx-fr-accent-ink: #262655;       /* navy ufficiale come testo su giallo */
  --uvx-fr-accent-soft: rgba(238, 229, 44, 0.18);
  --uvx-fr-accent-icon: #262655;
  --uvx-fr-accent-glow: rgba(238, 229, 44, 0.38);
  --uvx-fr-accent-glow-bg: rgba(238, 229, 44, 0.14);

  /* Layout */
  --uvx-fr-container-max: 1480px;
  --uvx-fr-header-h: 104px;

  /* Font stack di sistema */
  --uvx-fr-font: "Inter", "Manrope", system-ui, -apple-system,
    BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* Tipografia / colore base sul wrapper */
  font-family: var(--uvx-fr-font);
  font-size: 16px;
  line-height: 1.55;
  color: var(--uvx-fr-ink);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;

  /* Garantisce contesto per gli :sticky figli */
  position: relative;
  width: 100%;
  /* clip evita scrollbar orizzontale senza creare scroll container (sticky continua a funzionare) */
  overflow-x: clip;
}


/* ---------- RESET scoped ---------- */
#uvx-freight-landing,
#uvx-freight-landing *,
#uvx-freight-landing *::before,
#uvx-freight-landing *::after {
  box-sizing: border-box;
}

#uvx-freight-landing *,
#uvx-freight-landing *::before,
#uvx-freight-landing *::after {
  margin: 0;
  padding: 0;
}

#uvx-freight-landing img,
#uvx-freight-landing svg {
  display: block;
  max-width: 100%;
  height: auto;
}

#uvx-freight-landing a {
  color: inherit;
  text-decoration: none;
}

#uvx-freight-landing button {
  font: inherit;
  cursor: pointer;
  border: 0;
  background: none;
  color: inherit;
}

#uvx-freight-landing ul,
#uvx-freight-landing ol {
  list-style: none;
}

#uvx-freight-landing :focus-visible {
  outline: 2px solid var(--uvx-fr-accent);
  outline-offset: 3px;
  border-radius: 4px;
}


/* ---------- CONTAINER ---------- */
#uvx-freight-landing .uvx-fr-container {
  width: 100%;
  max-width: var(--uvx-fr-container-max);
  margin-inline: auto;
  padding-inline: clamp(24px, 5vw, 56px);
}


/* ---------- REVEAL animation ---------- */
#uvx-freight-landing .uvx-fr-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s cubic-bezier(0.2, 0.7, 0.2, 1),
              transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1);
}

#uvx-freight-landing .uvx-fr-reveal.is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  #uvx-freight-landing .uvx-fr-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}


/* ===========================================================
   BUTTON
   =========================================================== */
#uvx-freight-landing .uvx-fr-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 14px 30px;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.005em;
  white-space: nowrap;
  transition: transform 0.18s ease, box-shadow 0.18s ease,
              background 0.18s ease, color 0.18s ease;
}

#uvx-freight-landing .uvx-fr-btn--primary {
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  box-shadow: 0 10px 26px rgba(238, 229, 44, 0.22);
}
#uvx-freight-landing .uvx-fr-btn--primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px var(--uvx-fr-accent-glow);
}

#uvx-freight-landing .uvx-fr-btn--ghost {
  background: transparent;
  color: var(--uvx-fr-white);
  box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, 0.32);
}
#uvx-freight-landing .uvx-fr-btn--ghost:hover {
  background: rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, 0.65);
  transform: translateY(-2px);
}

#uvx-freight-landing .uvx-fr-btn__arrow {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}


/* ===========================================================
   HEADER
   - sticky (non fixed) per non collidere con header tema WP
   =========================================================== */
#uvx-freight-landing .uvx-fr-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: var(--uvx-fr-navy);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: var(--uvx-fr-white);
}

#uvx-freight-landing .uvx-fr-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--uvx-fr-header-h);
  gap: 24px;
}

#uvx-freight-landing .uvx-fr-header__logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  height: auto;
  width: auto;
  line-height: 0;
  background: transparent;
}
#uvx-freight-landing .uvx-fr-header__logo img {
  height: 58px;
  width: auto;
  max-width: 220px;
  display: block;
}

/* Sopra 980px la CTA "in-nav" è nascosta: vale solo per il menu mobile */
@media (min-width: 981px) {
  #uvx-freight-landing .uvx-fr-header__nav .uvx-fr-header__cta {
    display: none;
  }
}

#uvx-freight-landing .uvx-fr-header__nav {
  display: flex;
  align-items: center;
  gap: 32px;
  margin-left: auto;
}

#uvx-freight-landing .uvx-fr-header__link {
  font-size: 14px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.78);
  position: relative;
  padding: 6px 0;
  transition: color 0.18s ease;
}
#uvx-freight-landing .uvx-fr-header__link:hover {
  color: var(--uvx-fr-white);
}
#uvx-freight-landing .uvx-fr-header__link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: var(--uvx-fr-accent);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.22s ease;
}
#uvx-freight-landing .uvx-fr-header__link:hover::after {
  transform: scaleX(0.7);
}

#uvx-freight-landing .uvx-fr-header__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  font-size: 14px;
  font-weight: 700;
  border-radius: 999px;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
  flex-shrink: 0;
}
#uvx-freight-landing .uvx-fr-header__cta:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px var(--uvx-fr-accent-glow);
}
#uvx-freight-landing .uvx-fr-header__cta svg {
  width: 14px;
  height: 14px;
}

#uvx-freight-landing .uvx-fr-header__burger {
  display: none;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.06);
  transition: background 0.18s ease;
}
#uvx-freight-landing .uvx-fr-header__burger:hover {
  background: rgba(255, 255, 255, 0.12);
}
#uvx-freight-landing .uvx-fr-header__burger span,
#uvx-freight-landing .uvx-fr-header__burger span::before,
#uvx-freight-landing .uvx-fr-header__burger span::after {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--uvx-fr-white);
  border-radius: 2px;
  transition: transform 0.22s ease, top 0.22s ease, background 0.22s ease;
}
#uvx-freight-landing .uvx-fr-header__burger span {
  position: relative;
}
#uvx-freight-landing .uvx-fr-header__burger span::before,
#uvx-freight-landing .uvx-fr-header__burger span::after {
  content: "";
  position: absolute;
  left: 0;
}
#uvx-freight-landing .uvx-fr-header__burger span::before { top: -7px; }
#uvx-freight-landing .uvx-fr-header__burger span::after  { top:  7px; }

#uvx-freight-landing .uvx-fr-header__burger[aria-expanded="true"] span {
  background: transparent;
}
#uvx-freight-landing .uvx-fr-header__burger[aria-expanded="true"] span::before {
  top: 0;
  transform: rotate(45deg);
}
#uvx-freight-landing .uvx-fr-header__burger[aria-expanded="true"] span::after {
  top: 0;
  transform: rotate(-45deg);
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-header__nav {
    position: absolute;
    top: var(--uvx-fr-header-h);
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 20px clamp(20px, 4vw, 40px) 32px;
    background: var(--uvx-fr-navy-deep);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    transform: translateY(-12px);
    opacity: 0;
    visibility: hidden;
    transition: transform 0.22s ease, opacity 0.22s ease, visibility 0.22s;
  }
  #uvx-freight-landing .uvx-fr-header__nav.is-open {
    transform: none;
    opacity: 1;
    visibility: visible;
  }
  #uvx-freight-landing .uvx-fr-header__link {
    width: 100%;
    padding: 14px 0;
    font-size: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  }
  #uvx-freight-landing .uvx-fr-header__link::after {
    display: none;
  }
  #uvx-freight-landing .uvx-fr-header__nav .uvx-fr-header__cta {
    margin-top: 16px;
  }
  #uvx-freight-landing .uvx-fr-header__cta--desktop {
    display: none;
  }
  #uvx-freight-landing .uvx-fr-header__burger {
    display: inline-flex;
  }
}


/* ===========================================================
   HERO
   =========================================================== */
#uvx-freight-landing .uvx-fr-hero {
  position: relative;
  padding-top: 36px;
  padding-bottom: 24px;
  background: var(--uvx-fr-navy-deep);
  color: var(--uvx-fr-white);
  overflow: hidden;
  isolation: isolate;
}

#uvx-freight-landing .uvx-fr-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    /* glow accent giallo soft dietro il van (più diffuso e centrato) */
    radial-gradient(50% 60% at 72% 50%, var(--uvx-fr-accent-glow-bg) 0%, transparent 70%),
    /* alone blu derivato dal navy ufficiale (sotto il van) */
    radial-gradient(45% 45% at 80% 60%, rgba(90, 90, 200, 0.22) 0%, transparent 65%),
    /* highlight sottile sul lato destro */
    radial-gradient(30% 35% at 82% 70%, rgba(255, 255, 255, 0.05) 0%, transparent 70%),
    /* vignettatura sinistra */
    radial-gradient(50% 75% at -10% 50%, rgba(0, 0, 0, 0.55) 0%, transparent 60%),
    /* vignettatura inferiore */
    radial-gradient(80% 45% at 50% 115%, rgba(0, 0, 0, 0.55) 0%, transparent 65%),
    /* base navy gradient (derivata dal navy ufficiale #262655) */
    linear-gradient(180deg, var(--uvx-fr-navy-deep) 0%, var(--uvx-fr-navy) 55%, var(--uvx-fr-navy-darker) 100%);
  z-index: -2;
  pointer-events: none;
}

#uvx-freight-landing .uvx-fr-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 28px 28px;
  background-position: 0 0;
  mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, black 30%, transparent 80%);
  -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, black 30%, transparent 80%);
  z-index: -1;
  opacity: 0.5;
  pointer-events: none;
}

/* Frecce decorative — elemento brand, lato sinistro hero.
   Posizionate parzialmente fuori canvas (left negativo) per dare movimento alla scena.
   PNG su fondo navy: blend lighten + mask gradient per dissolverle verso il centro. */
#uvx-freight-landing .uvx-fr-hero__arrows {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -120px;
  width: 56vw;
  max-width: 820px;
  background-image: url("https://univexfreight.net/wp-content/uploads/2026/05/uvx-freight-arrows-decorative.png");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 100%;
  opacity: 0.45;
  pointer-events: none;
  user-select: none;
  mask-image: linear-gradient(90deg, black 0%, black 92%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, black 0%, black 92%, transparent 100%);
  z-index: 0;
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-hero__arrows {
    width: clamp(220px, 55vw, 360px);
    left: -80px;
    opacity: 0.22;
  }
}
@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-hero__arrows {
    width: 220px;
    left: -60px;
    opacity: 0.12;
  }
}

#uvx-freight-landing .uvx-fr-hero__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  align-items: center;
  min-height: 600px;
}
#uvx-freight-landing .uvx-fr-hero__content {
  max-width: 560px;
  position: relative;
  z-index: 2;
}

#uvx-freight-landing .uvx-fr-hero__content {
  position: relative;
  z-index: 1;
}

#uvx-freight-landing .uvx-fr-hero__title {
  font-size: clamp(40px, 4.6vw, 62px);
  line-height: 1.06;
  font-weight: 800;
  letter-spacing: -0.028em;
  margin-bottom: 22px;
  color: var(--uvx-fr-white);
  word-break: keep-all;
  overflow-wrap: break-word;
}
#uvx-freight-landing .uvx-fr-hero__title em {
  font-style: normal;
  color: var(--uvx-fr-accent);
  display: inline;
  white-space: nowrap;
}

#uvx-freight-landing .uvx-fr-hero__lead {
  font-size: clamp(15px, 1.05vw, 17px);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.74);
  max-width: 520px;
  margin-bottom: 28px;
}

#uvx-freight-landing .uvx-fr-hero__ctas {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 22px;
}

/* Visual hero: la foto ambientata si DEVE fondere col navy della hero,
   non sembrare una "card" rettangolare. Niente border-radius netto, niente shadow box.
   Mask multipla per dissolvere bordo sinistro, basso e leggermente alto. */
#uvx-freight-landing .uvx-fr-hero__visual {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 32%;
  z-index: 1;
  margin: 0;
  border-radius: 0;
  overflow: hidden;
  align-self: auto;
  min-height: 0;
  /* Sfumatura SOLO a sinistra: dx/top/bottom combaciano coi bordi della hero */
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.45) 14%, #000 32%, #000 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.45) 14%, #000 32%, #000 100%);
}

/* L'<img> riempie il visual: cover per fill totale; object-position center
   in modo che il furgone sia visibile interamente. */
#uvx-freight-landing .uvx-fr-hero__van {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
  mask-image: none;
  -webkit-mask-image: none;
}


/* ---------- Trust chips dentro hero ---------- */
#uvx-freight-landing .uvx-fr-hero__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
  z-index: 1;
}

#uvx-freight-landing .uvx-fr-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 16px 8px 8px;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
#uvx-freight-landing .uvx-fr-chip__dot {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
#uvx-freight-landing .uvx-fr-chip__dot svg {
  width: 12px;
  height: 12px;
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-hero {
    padding-top: 40px;
    padding-bottom: 56px;
  }
  #uvx-freight-landing .uvx-fr-hero__grid {
    grid-template-columns: 1fr;
    gap: 28px;
    min-height: auto;
  }
  #uvx-freight-landing .uvx-fr-hero__visual {
    min-height: 0;
    aspect-ratio: 4 / 3;
    margin-right: 0;
    border-radius: 18px;
  }
  #uvx-freight-landing .uvx-fr-hero__visual::before {
    /* su mobile non serve fondere a sinistra: foto sotto il testo, full width */
    display: none;
  }
  #uvx-freight-landing .uvx-fr-hero__title {
    font-size: clamp(36px, 8.5vw, 52px);
  }
  #uvx-freight-landing .uvx-fr-hero__chips {
    margin-top: 28px;
  }
}

@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-btn {
    width: 100%;
  }
  #uvx-freight-landing .uvx-fr-hero__ctas {
    flex-direction: column;
  }
  #uvx-freight-landing .uvx-fr-hero__title {
    font-size: clamp(32px, 8vw, 44px);
  }
}


/* ===========================================================
   TRUST BAR
   =========================================================== */
#uvx-freight-landing .uvx-fr-trust-bar {
  background: var(--uvx-fr-white);
  padding: 36px 0;
  border-bottom: 1px solid var(--uvx-fr-border-soft);
  color: var(--uvx-fr-ink);
}

#uvx-freight-landing .uvx-fr-trust-bar__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

#uvx-freight-landing .uvx-fr-trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 14px;
  padding: 2px 24px;
  position: relative;
}
#uvx-freight-landing .uvx-fr-trust-item:first-child {
  padding-left: 0;
}
#uvx-freight-landing .uvx-fr-trust-item:last-child {
  padding-right: 0;
}
#uvx-freight-landing .uvx-fr-trust-item + .uvx-fr-trust-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 1px;
  background: var(--uvx-fr-border-soft);
}

#uvx-freight-landing .uvx-fr-trust-item__icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--uvx-fr-accent-icon);
  /* niente cerchio, niente bg */
}
#uvx-freight-landing .uvx-fr-trust-item__icon svg,
#uvx-freight-landing .uvx-fr-trust-item__icon img {
  width: 84px;
  height: 84px;
  display: block;
  object-fit: contain;
}
#uvx-freight-landing .uvx-fr-trust-item__icon svg * {
  stroke-width: 2;
}

#uvx-freight-landing .uvx-fr-trust-item__body {
  min-width: 0;
}
#uvx-freight-landing .uvx-fr-trust-item__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--uvx-fr-navy);
  margin-bottom: 3px;
  line-height: 1.3;
}
#uvx-freight-landing .uvx-fr-trust-item__desc {
  font-size: 13px;
  line-height: 1.45;
  color: var(--uvx-fr-ink-muted);
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-trust-bar {
    padding: 36px 0;
  }
  #uvx-freight-landing .uvx-fr-trust-bar__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 20px;
  }
  #uvx-freight-landing .uvx-fr-trust-item {
    padding: 0;
  }
  #uvx-freight-landing .uvx-fr-trust-item + .uvx-fr-trust-item::before {
    display: none;
  }
}

@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-trust-bar__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}


/* ===========================================================
   SECTION 2 — CHI SIAMO / CONTROLLO E PRECISIONE
   Layout 2 colonne desktop. Sfondo bianco (stacca dalla hero scura).
   Sinistra: eyebrow + headline + lead + benefit grid (6 icone, 2×3).
   Destra: foto operatore con box brand.
   =========================================================== */
#uvx-freight-landing .uvx-fr-about {
  background: var(--uvx-fr-bg-light);
  color: var(--uvx-fr-ink);
  padding: clamp(48px, 5vw, 72px) 0;
  position: relative;
}

#uvx-freight-landing .uvx-fr-about__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.1fr);
  gap: clamp(40px, 4.5vw, 64px);
  align-items: center;
  max-width: 1320px;
  margin-inline: auto;
}

#uvx-freight-landing .uvx-fr-about__content {
  min-width: 0;
}

#uvx-freight-landing .uvx-fr-about__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: var(--uvx-fr-navy);
  margin-bottom: 16px;
}
#uvx-freight-landing .uvx-fr-about__eyebrow-dot {
  width: 22px;
  height: 2px;
  background: var(--uvx-fr-accent);
  border-radius: 2px;
}

#uvx-freight-landing .uvx-fr-about__title {
  font-size: clamp(30px, 3.4vw, 44px);
  line-height: 1.10;
  font-weight: 800;
  letter-spacing: -0.022em;
  color: var(--uvx-fr-navy);
  margin-bottom: 18px;
}
#uvx-freight-landing .uvx-fr-about__title em {
  font-style: normal;
  color: var(--uvx-fr-navy);
  position: relative;
  z-index: 0;
}
#uvx-freight-landing .uvx-fr-about__title em::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.04em;
  height: 0.24em;
  background: var(--uvx-fr-accent);
  opacity: 0.60;
  z-index: -1;
  border-radius: 2px;
}

#uvx-freight-landing .uvx-fr-about__lead {
  font-size: 15px;
  line-height: 1.62;
  color: var(--uvx-fr-ink-muted);
  margin-bottom: 14px;
  max-width: 540px;
}
#uvx-freight-landing .uvx-fr-about__lead + .uvx-fr-about__lead {
  margin-bottom: 28px;
}

/* Feature row 4 colonne sotto il paragrafo (come reference): più compatte */
#uvx-freight-landing .uvx-fr-about__features {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px 12px;
  list-style: none;
  padding: 0;
  margin: 0;
}

#uvx-freight-landing .uvx-fr-about__feature {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  gap: 4px;
}

#uvx-freight-landing .uvx-fr-about__feature-icon {
  width: 72px;
  height: 72px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--uvx-fr-navy);
}
#uvx-freight-landing .uvx-fr-about__feature-icon img {
  width: 72px;
  height: 72px;
  display: block;
  object-fit: contain;
}
#uvx-freight-landing .uvx-fr-about__feature-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
#uvx-freight-landing .uvx-fr-about__feature-icon img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

#uvx-freight-landing .uvx-fr-about__feature-title {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--uvx-fr-navy);
  line-height: 1.35;
}

/* Visual: foto operatore con box brand. Border-radius elegante, shadow morbida. */
#uvx-freight-landing .uvx-fr-about__visual {
  position: relative;
}
#uvx-freight-landing .uvx-fr-about__image {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 18px;
  box-shadow:
    0 20px 40px rgba(38, 38, 85, 0.10),
    0 6px 14px rgba(38, 38, 85, 0.06);
  object-fit: cover;
  aspect-ratio: 4 / 3;
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-about__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  #uvx-freight-landing .uvx-fr-about__visual {
    order: -1;
    max-width: 600px;
    margin-inline: auto;
  }
  #uvx-freight-landing .uvx-fr-about__image {
    border-radius: 18px;
  }
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-about__features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
  }
}

@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-about {
    padding: 56px 0;
  }
  #uvx-freight-landing .uvx-fr-about__title {
    font-size: clamp(28px, 7.5vw, 36px);
  }
  /* Su mobile rilascio il nowrap dell'em per evitare overflow */
  #uvx-freight-landing .uvx-fr-about__title em {
    white-space: normal;
  }
  #uvx-freight-landing .uvx-fr-about__features {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}


/* ===========================================================
   ORBIT / REGIA LOGISTICA
   Sezione navy: 3 colonne (testo · orbit diagram · card laterale)
   =========================================================== */
#uvx-freight-landing .uvx-fr-orbit {
  background: var(--uvx-fr-navy-deep);
  color: var(--uvx-fr-white);
  padding: clamp(64px, 8vw, 120px) 0;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
#uvx-freight-landing .uvx-fr-orbit::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(40% 60% at 50% 50%, rgba(238,229,44,0.06) 0%, transparent 70%),
    radial-gradient(70% 50% at 50% 110%, rgba(0,0,0,0.45) 0%, transparent 70%),
    linear-gradient(180deg, var(--uvx-fr-navy-deep) 0%, var(--uvx-fr-navy) 60%, var(--uvx-fr-navy-darker) 100%);
  z-index: -1;
  pointer-events: none;
}

#uvx-freight-landing .uvx-fr-orbit__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.3fr) minmax(0, 0.9fr);
  gap: clamp(24px, 3vw, 40px);
  align-items: center;
}

#uvx-freight-landing .uvx-fr-orbit__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--uvx-fr-accent);
  margin-bottom: 18px;
}
#uvx-freight-landing .uvx-fr-orbit__eyebrow-dot {
  width: 28px;
  height: 2px;
  background: var(--uvx-fr-accent);
  border-radius: 2px;
}

#uvx-freight-landing .uvx-fr-orbit__title {
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.10;
  font-weight: 800;
  letter-spacing: -0.022em;
  color: var(--uvx-fr-white);
  margin-bottom: 18px;
}
#uvx-freight-landing .uvx-fr-orbit__title em {
  font-style: normal;
  color: var(--uvx-fr-accent);
}

#uvx-freight-landing .uvx-fr-orbit__lead {
  font-size: 14.5px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.72);
}

#uvx-freight-landing .uvx-fr-orbit__diagram {
  position: relative;
  width: 100%;
  max-width: 560px;
  aspect-ratio: 1 / 1;
  margin: 0 auto;
}
#uvx-freight-landing .uvx-fr-orbit__ring {
  position: absolute;
  inset: 0;
  animation: uvx-fr-orbit-spin 40s linear infinite;
  will-change: transform;
}
@keyframes uvx-fr-orbit-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  #uvx-freight-landing .uvx-fr-orbit__ring,
  #uvx-freight-landing .uvx-fr-orbit__node { animation: none !important; }
  #uvx-freight-landing .uvx-fr-orbit__node { transform: translate(-50%, -50%); }
}
#uvx-freight-landing .uvx-fr-orbit__rings {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 0 8px rgba(238, 229, 44, 0.6))
          drop-shadow(0 0 16px rgba(238, 229, 44, 0.35));
}

#uvx-freight-landing .uvx-fr-orbit__center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
#uvx-freight-landing .uvx-fr-orbit__center img {
  height: 170px;
  width: auto;
  display: block;
}

#uvx-freight-landing .uvx-fr-orbit__node {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 110px;
  text-align: center;
  z-index: 1;
  animation: uvx-fr-orbit-counter 40s linear infinite;
}
@keyframes uvx-fr-orbit-counter {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to   { transform: translate(-50%, -50%) rotate(-360deg); }
}
#uvx-freight-landing .uvx-fr-orbit__node-icon {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
  transition: background 260ms ease, box-shadow 260ms ease, transform 260ms ease;
  overflow: hidden;
}
#uvx-freight-landing .uvx-fr-orbit__node-icon img {
  width: 80%;
  height: 80%;
  display: block;
  object-fit: contain;
}
#uvx-freight-landing .uvx-fr-orbit__node:hover .uvx-fr-orbit__node-icon {
  background: #eee52c;
  transform: scale(1.08);
  box-shadow: 0 10px 28px rgba(238, 229, 44, 0.5),
              0 0 0 4px rgba(238, 229, 44, 0.22);
}
#uvx-freight-landing .uvx-fr-orbit__node-label {
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.85);
}

#uvx-freight-landing .uvx-fr-orbit__node--1 { top: 9.2%;  left: 50%; }
#uvx-freight-landing .uvx-fr-orbit__node--2 { top: 29.6%; left: 85.4%; }
#uvx-freight-landing .uvx-fr-orbit__node--3 { top: 70.4%; left: 85.4%; }
#uvx-freight-landing .uvx-fr-orbit__node--4 { top: 90.8%; left: 50%; }
#uvx-freight-landing .uvx-fr-orbit__node--5 { top: 70.4%; left: 14.6%; }
#uvx-freight-landing .uvx-fr-orbit__node--6 { top: 29.6%; left: 14.6%; }

#uvx-freight-landing .uvx-fr-orbit__card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 16px;
  padding: 22px 24px;
  align-self: center;
}
#uvx-freight-landing .uvx-fr-orbit__card-icon {
  display: block;
  margin-bottom: 18px;
  color: var(--uvx-fr-accent);
}
#uvx-freight-landing .uvx-fr-orbit__card-icon img {
  width: 110px;
  height: 110px;
  display: block;
  margin: 0;
  object-fit: contain;
}
#uvx-freight-landing .uvx-fr-orbit__card-title {
  font-size: 18px;
  line-height: 1.25;
  font-weight: 700;
  color: var(--uvx-fr-white);
  margin-bottom: 12px;
}
#uvx-freight-landing .uvx-fr-orbit__card-text {
  font-size: 13.5px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 18px;
}
#uvx-freight-landing .uvx-fr-orbit__card-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--uvx-fr-accent);
  text-decoration: none;
  transition: gap 0.18s ease;
}
#uvx-freight-landing .uvx-fr-orbit__card-cta:hover {
  gap: 12px;
}
#uvx-freight-landing .uvx-fr-orbit__card-cta svg {
  width: 14px;
  height: 14px;
}

@media (max-width: 1100px) {
  #uvx-freight-landing .uvx-fr-orbit__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  #uvx-freight-landing .uvx-fr-orbit__diagram {
    max-width: 420px;
  }
}
@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-orbit {
    padding: 56px 0;
  }
  #uvx-freight-landing .uvx-fr-orbit__diagram {
    max-width: 340px;
  }
  #uvx-freight-landing .uvx-fr-orbit__node {
    width: 80px;
  }
  #uvx-freight-landing .uvx-fr-orbit__node-icon {
    width: 34px;
    height: 34px;
    padding: 6px;
  }
  #uvx-freight-landing .uvx-fr-orbit__node-label {
    font-size: 9.5px;
  }
  #uvx-freight-landing .uvx-fr-orbit__center {
    width: 92px;
    height: 92px;
  }
  #uvx-freight-landing .uvx-fr-orbit__brand {
    font-size: 15px;
  }
}


/* ===========================================================
   SERVIZI — 6 card bianche con icona + titolo + desc + freccia
   =========================================================== */
#uvx-freight-landing .uvx-fr-services {
  background: var(--uvx-fr-bg-light);
  color: var(--uvx-fr-ink);
  padding: clamp(64px, 8vw, 112px) 0;
}

#uvx-freight-landing .uvx-fr-services__head {
  margin-bottom: clamp(40px, 4vw, 56px);
}
#uvx-freight-landing .uvx-fr-services__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--uvx-fr-navy);
  margin-bottom: 16px;
}
#uvx-freight-landing .uvx-fr-services__title {
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.10;
  font-weight: 800;
  letter-spacing: -0.022em;
  color: var(--uvx-fr-navy);
  max-width: 720px;
}
#uvx-freight-landing .uvx-fr-services__title em {
  font-style: normal;
  color: var(--uvx-fr-navy);
  position: relative;
  z-index: 0;
}
#uvx-freight-landing .uvx-fr-services__title em::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.04em;
  height: 0.22em;
  background: var(--uvx-fr-accent);
  opacity: 0.55;
  z-index: -1;
  border-radius: 2px;
}

#uvx-freight-landing .uvx-fr-services__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
  list-style: none;
  padding: 0;
  margin: 0;
}

#uvx-freight-landing .uvx-fr-services__card {
  position: relative;
  background: #ffffff;
  border: 1px solid var(--uvx-fr-border-soft);
  border-radius: 14px;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}
#uvx-freight-landing .uvx-fr-services__card:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(38, 38, 85, 0.10);
  border-color: rgba(238, 229, 44, 0.55);
}

/* Icone SVG inline navy line-art (stesso stile della trust bar) */
#uvx-freight-landing .uvx-fr-services__card-icon {
  width: 64px;
  height: 64px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  color: var(--uvx-fr-navy);
  margin-bottom: 18px;
}
#uvx-freight-landing .uvx-fr-services__card-icon svg,
#uvx-freight-landing .uvx-fr-services__card-icon img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

#uvx-freight-landing .uvx-fr-services__card-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--uvx-fr-navy);
  line-height: 1.25;
  margin-bottom: 8px;
}
#uvx-freight-landing .uvx-fr-services__card-text {
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--uvx-fr-ink-muted);
}

#uvx-freight-landing .uvx-fr-services__card-arrow {
  align-self: flex-end;
  margin-top: 6px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
#uvx-freight-landing .uvx-fr-services__card-arrow svg {
  width: 15px;
  height: 15px;
}
#uvx-freight-landing .uvx-fr-services__card-arrow svg path {
  stroke-width: 2.1;
}

@media (max-width: 1100px) {
  #uvx-freight-landing .uvx-fr-services__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
}
@media (max-width: 700px) {
  #uvx-freight-landing .uvx-fr-services__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
}
@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-services {
    padding: 56px 0;
  }
  #uvx-freight-landing .uvx-fr-services__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}


/* ===========================================================
   PROCESSO — 4 step numerati
   =========================================================== */
#uvx-freight-landing .uvx-fr-process {
  background: #f6f7fa;
  color: var(--uvx-fr-ink);
  padding: clamp(64px, 8vw, 112px) 0;
}
#uvx-freight-landing .uvx-fr-process__head {
  margin-bottom: clamp(40px, 4vw, 56px);
}
#uvx-freight-landing .uvx-fr-process__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--uvx-fr-navy);
  margin-bottom: 16px;
}
#uvx-freight-landing .uvx-fr-process__title {
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.10;
  font-weight: 800;
  letter-spacing: -0.022em;
  color: var(--uvx-fr-navy);
  max-width: 720px;
}
#uvx-freight-landing .uvx-fr-process__title em {
  font-style: normal;
  color: var(--uvx-fr-navy);
  position: relative;
  z-index: 0;
}
#uvx-freight-landing .uvx-fr-process__title em::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.04em;
  height: 0.22em;
  background: var(--uvx-fr-accent);
  opacity: 0.55;
  z-index: -1;
  border-radius: 2px;
}

/* Layout 2 col: a sx titolo + 4 step, a dx foto operatore */
#uvx-freight-landing .uvx-fr-process__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 600px;
  gap: 40px;
  align-items: center;
}
#uvx-freight-landing .uvx-fr-process__col { min-width: 0; }

#uvx-freight-landing .uvx-fr-process__head {
  margin-bottom: 40px;
}

#uvx-freight-landing .uvx-fr-process__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
}

#uvx-freight-landing .uvx-fr-process__step {
  position: relative;
  padding: 0;
  background: transparent;
  border: 0;
  text-align: left;
}
#uvx-freight-landing .uvx-fr-process__icon {
  position: relative;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid var(--uvx-fr-border-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  box-shadow: 0 6px 18px rgba(38, 38, 85, 0.06);
  color: var(--uvx-fr-navy);
}
#uvx-freight-landing .uvx-fr-process__icon svg,
#uvx-freight-landing .uvx-fr-process__icon img {
  width: 64px;
  height: 64px;
  display: block;
  object-fit: contain;
}
#uvx-freight-landing .uvx-fr-process__icon img {
  width: 52px;
  height: 52px;
  display: block;
  object-fit: contain;
}
#uvx-freight-landing .uvx-fr-process__number {
  position: absolute;
  top: -6px;
  left: 78px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  font-size: 13px;
  font-weight: 800;
  line-height: 26px;
  text-align: center;
  z-index: 2;
}
#uvx-freight-landing .uvx-fr-process__step::after {
  content: "";
  position: absolute;
  top: 50px;
  left: 108px;
  right: -16px;
  border-top: 2px dashed rgba(38, 38, 85, 0.22);
}
#uvx-freight-landing .uvx-fr-process__step:last-child::after { display: none; }

#uvx-freight-landing .uvx-fr-process__step-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--uvx-fr-navy);
  margin-bottom: 8px;
}
#uvx-freight-landing .uvx-fr-process__step-text {
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--uvx-fr-ink-muted);
}

#uvx-freight-landing .uvx-fr-process__photo {
  border-radius: 24px;
  overflow: hidden;
  background: transparent;
  position: relative;
  isolation: isolate;
}
#uvx-freight-landing .uvx-fr-process__photo img {
  border-radius: 24px;
  display: block;
}
#uvx-freight-landing .uvx-fr-process__photo img {
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 1100px) {
  #uvx-freight-landing .uvx-fr-process__layout {
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 32px;
  }
}
@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-process__layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  #uvx-freight-landing .uvx-fr-process__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
  #uvx-freight-landing .uvx-fr-process__step::after { display: none; }
  #uvx-freight-landing .uvx-fr-process__photo {
    max-width: 380px;
    margin: 0 auto;
    aspect-ratio: 16 / 10;
  }
}
@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-process {
    padding: 56px 0;
  }
  #uvx-freight-landing .uvx-fr-process__grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}


/* ===========================================================
   CTA FINALE
   =========================================================== */
#uvx-freight-landing .uvx-fr-cta-final {
  background: var(--uvx-fr-navy-deep);
  color: var(--uvx-fr-white);
  padding: clamp(56px, 6vw, 88px) 0;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
#uvx-freight-landing .uvx-fr-cta-final::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(40% 60% at 50% 50%, rgba(238,229,44,0.10) 0%, transparent 70%),
    linear-gradient(180deg, var(--uvx-fr-navy-deep) 0%, var(--uvx-fr-navy) 100%);
  z-index: -2;
  pointer-events: none;
}
/* Frecce decorative coerenti con la hero */
#uvx-freight-landing .uvx-fr-cta-final__arrows {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -120px;
  width: 56vw;
  max-width: 820px;
  background-image: url("https://univexfreight.net/wp-content/uploads/2026/05/uvx-freight-arrows-decorative.png");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 100%;
  opacity: 0.55;
  pointer-events: none;
  user-select: none;
  mask-image: linear-gradient(90deg, black 0%, black 78%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, black 0%, black 78%, transparent 100%);
  z-index: -1;
}
@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-cta-final__arrows {
    width: clamp(220px, 55vw, 360px);
    left: -80px;
    opacity: 0.18;
  }
}
#uvx-freight-landing .uvx-fr-cta-final__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 40px;
}
#uvx-freight-landing .uvx-fr-cta-final__title {
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.022em;
  margin-bottom: 18px;
}
#uvx-freight-landing .uvx-fr-cta-final__title em {
  font-style: normal;
  color: var(--uvx-fr-accent);
}
#uvx-freight-landing .uvx-fr-cta-final__bullets {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 22px;
  list-style: none;
  padding: 0;
  margin: 0;
}
#uvx-freight-landing .uvx-fr-cta-final__bullet {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13.5px;
  color: rgba(255, 255, 255, 0.85);
}
#uvx-freight-landing .uvx-fr-cta-final__bullet-check {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
#uvx-freight-landing .uvx-fr-cta-final__bullet-check svg {
  width: 12px;
  height: 12px;
}
#uvx-freight-landing .uvx-fr-cta-final__btn {
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 28px;
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  font-weight: 700;
  font-size: 15px;
  border-radius: 999px;
  white-space: nowrap;
  box-shadow: 0 10px 26px rgba(238, 229, 44, 0.22);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}
#uvx-freight-landing .uvx-fr-cta-final__btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px var(--uvx-fr-accent-glow);
}
#uvx-freight-landing .uvx-fr-cta-final__btn svg {
  width: 16px;
  height: 16px;
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-cta-final__inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  #uvx-freight-landing .uvx-fr-cta-final__btn {
    align-self: flex-start;
  }
}


/* ===========================================================
   FOOTER
   =========================================================== */
#uvx-freight-landing .uvx-fr-footer {
  background: #ffffff;
  color: var(--uvx-fr-ink);
  padding: 56px 0 28px;
  border-top: 1px solid var(--uvx-fr-border-soft);
}
#uvx-freight-landing .uvx-fr-footer__grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 40px;
  margin-bottom: 40px;
}
#uvx-freight-landing .uvx-fr-footer__brand-logo {
  display: inline-block;
  margin-bottom: 18px;
  line-height: 0;
}
#uvx-freight-landing .uvx-fr-footer__brand-logo img {
  height: 120px;
  width: auto;
  display: block;
}
#uvx-freight-landing .uvx-fr-footer__brand-text {
  font-size: 13.5px;
  line-height: 1.6;
  color: var(--uvx-fr-ink-muted);
  max-width: 320px;
}
#uvx-freight-landing .uvx-fr-footer__col-title {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--uvx-fr-navy);
  margin-bottom: 18px;
}
#uvx-freight-landing .uvx-fr-footer__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#uvx-freight-landing .uvx-fr-footer__list a,
#uvx-freight-landing .uvx-fr-footer__list span {
  font-size: 13.5px;
  color: var(--uvx-fr-ink-muted);
  text-decoration: none;
  transition: color 0.18s ease;
}
#uvx-freight-landing .uvx-fr-footer__list a:hover {
  color: var(--uvx-fr-navy);
}
#uvx-freight-landing .uvx-fr-footer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 24px;
  border-top: 1px solid var(--uvx-fr-border-soft);
  font-size: 12.5px;
  color: var(--uvx-fr-ink-muted);
  gap: 16px;
  flex-wrap: wrap;
}
#uvx-freight-landing .uvx-fr-footer__socials {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
#uvx-freight-landing .uvx-fr-footer__social {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--uvx-fr-accent-soft);
  color: var(--uvx-fr-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.18s ease, color 0.18s ease;
}
#uvx-freight-landing .uvx-fr-footer__social:hover {
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
}
#uvx-freight-landing .uvx-fr-footer__social svg {
  width: 14px;
  height: 14px;
}

@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 32px 24px;
  }
}
@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-footer__grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

/* ===========================================================
   MOBILE POLISH — rifiniture aggregate <980 / <560 / <400
   =========================================================== */
@media (max-width: 980px) {
  #uvx-freight-landing .uvx-fr-container { padding-left: 24px; padding-right: 24px; }
  #uvx-freight-landing .uvx-fr-hero__arrows { opacity: 0.18; }
  #uvx-freight-landing .uvx-fr-cta-final__arrows { opacity: 0.18; }
  #uvx-freight-landing .uvx-fr-trust-bar__grid { grid-template-columns: repeat(2, 1fr); gap: 24px 20px; }
  #uvx-freight-landing .uvx-fr-orbit__card { max-width: 480px; margin-left: auto; margin-right: auto; }
}
@media (max-width: 560px) {
  #uvx-freight-landing { overflow-x: hidden; }
  #uvx-freight-landing .uvx-fr-container { padding-left: 20px; padding-right: 20px; }
  #uvx-freight-landing .uvx-fr-btn,
  #uvx-freight-landing .uvx-fr-header__cta,
  #uvx-freight-landing .uvx-fr-cta-final__btn { min-height: 48px; }
  #uvx-freight-landing .uvx-fr-hero__title { font-size: clamp(30px, 8.5vw, 40px); }
  #uvx-freight-landing .uvx-fr-hero__arrows { opacity: 0.10; width: 60%; }
  #uvx-freight-landing .uvx-fr-cta-final__arrows { opacity: 0.10; width: 60%; }
  #uvx-freight-landing .uvx-fr-trust-bar__grid { grid-template-columns: 1fr; gap: 18px; }
  #uvx-freight-landing .uvx-fr-hero__chips { gap: 8px; }
  #uvx-freight-landing .uvx-fr-process__photo { max-width: 100%; margin: 0 auto; }
  #uvx-freight-landing .uvx-fr-orbit__card-icon img { width: 90px; height: 90px; margin: 0; }
  #uvx-freight-landing .uvx-fr-cta-final__title { font-size: clamp(24px, 7vw, 32px); }
}
@media (max-width: 400px) {
  #uvx-freight-landing .uvx-fr-container { padding-left: 16px; padding-right: 16px; }
  #uvx-freight-landing .uvx-fr-hero__title { font-size: 28px; line-height: 1.12; }
  #uvx-freight-landing .uvx-fr-services__card { padding: 22px 18px 56px; }
  #uvx-freight-landing .uvx-fr-process__icon { width: 72px; height: 72px; }
  #uvx-freight-landing .uvx-fr-process__icon svg { width: 38px; height: 38px; }
  #uvx-freight-landing .uvx-fr-process__number { left: 54px; }
}

/* ===========================================================
   FORM CONTATTI — sezione finale dark con form richiesta preventivo
   =========================================================== */
#uvx-freight-landing .uvx-fr-form {
  background: var(--uvx-fr-navy-deep);
  padding: clamp(64px, 8vw, 120px) 0;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
#uvx-freight-landing .uvx-fr-form::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(40% 60% at 50% 50%, rgba(238, 229, 44, 0.22) 0%, transparent 70%),
    linear-gradient(180deg, var(--uvx-fr-navy-deep) 0%, var(--uvx-fr-navy) 100%);
  z-index: -2;
  pointer-events: none;
}
/* Frecce decorative ai 2 lati */
#uvx-freight-landing .uvx-fr-form__arrows {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 30vw;
  max-width: 460px;
  display: none;
  background-image: url("https://univexfreight.net/wp-content/uploads/2026/05/uvx-freight-arrows-decorative.png");
  background-repeat: no-repeat;
  background-size: auto 80%;
  opacity: 0.35;
  pointer-events: none;
  z-index: -1;
}
#uvx-freight-landing .uvx-fr-form__arrows--left {
  left: -120px;
  background-position: left center;
  mask-image: linear-gradient(90deg, black 0%, black 70%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, black 0%, black 70%, transparent 100%);
}
#uvx-freight-landing .uvx-fr-form__arrows--right {
  right: -120px;
  background-position: right center;
  transform: scaleX(-1);
  mask-image: linear-gradient(90deg, black 0%, black 70%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, black 0%, black 70%, transparent 100%);
}
#uvx-freight-landing .uvx-fr-form__inner {
  max-width: 900px;
  margin: 0 auto;
}
#uvx-freight-landing .uvx-fr-form__head {
  text-align: left;
  margin-bottom: 32px;
}
#uvx-freight-landing .uvx-fr-form__eyebrow {
  display: inline-block;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--uvx-fr-accent);
  margin-bottom: 14px;
}
#uvx-freight-landing .uvx-fr-form__title {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.12;
  font-weight: 800;
  letter-spacing: -0.022em;
  color: #ffffff;
  margin-bottom: 14px;
}
#uvx-freight-landing .uvx-fr-form__lead {
  font-size: 15px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.72);
  max-width: 620px;
}
#uvx-freight-landing .uvx-fr-form__form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
#uvx-freight-landing .uvx-fr-form__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
#uvx-freight-landing .uvx-fr-form__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
#uvx-freight-landing .uvx-fr-form__label {
  font-size: 12.5px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.82);
  letter-spacing: 0.01em;
}
#uvx-freight-landing .uvx-fr-form__form input,
#uvx-freight-landing .uvx-fr-form__form textarea,
#uvx-freight-landing .uvx-fr-form__form select {
  font: inherit;
  font-size: 14px;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  color: #ffffff;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  resize: vertical;
}
#uvx-freight-landing .uvx-fr-form__form input::placeholder,
#uvx-freight-landing .uvx-fr-form__form textarea::placeholder {
  color: rgba(255, 255, 255, 0.36);
}
#uvx-freight-landing .uvx-fr-form__form select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1l5 5 5-5' stroke='white' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
}
#uvx-freight-landing .uvx-fr-form__form input:focus,
#uvx-freight-landing .uvx-fr-form__form textarea:focus,
#uvx-freight-landing .uvx-fr-form__form select:focus {
  outline: none;
  border-color: var(--uvx-fr-accent);
  background: rgba(255, 255, 255, 0.06);
  box-shadow: 0 0 0 3px rgba(238, 229, 44, 0.22);
}
#uvx-freight-landing .uvx-fr-form__check {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.55;
  cursor: pointer;
}
#uvx-freight-landing .uvx-fr-form__check input {
  margin-top: 3px;
  accent-color: var(--uvx-fr-accent);
  cursor: pointer;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
#uvx-freight-landing .uvx-fr-form__check a {
  color: var(--uvx-fr-accent);
  text-decoration: underline;
}
#uvx-freight-landing .uvx-fr-form__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin-top: 8px;
}
#uvx-freight-landing .uvx-fr-form__submit {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 14px 32px;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  background: var(--uvx-fr-accent);
  color: var(--uvx-fr-accent-ink);
  box-shadow: 0 10px 26px rgba(238, 229, 44, 0.22);
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}
#uvx-freight-landing .uvx-fr-form__submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(238, 229, 44, 0.22);
}
#uvx-freight-landing .uvx-fr-form__submit svg {
  width: 16px;
  height: 16px;
}
#uvx-freight-landing .uvx-fr-form__urgent {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.62);
}
#uvx-freight-landing .uvx-fr-form__urgent svg {
  width: 18px;
  height: 18px;
  color: var(--uvx-fr-accent);
  flex-shrink: 0;
}
@media (max-width: 700px) {
  #uvx-freight-landing .uvx-fr-form__row {
    grid-template-columns: 1fr;
  }
  #uvx-freight-landing .uvx-fr-form__arrows {
    width: 40vw;
    opacity: 0.18;
  }
}

/* ===========================================================
   MOBILE FIX PATCH — override consolidati per risolvere
   problemi di visualizzazione su mobile (≤980 / ≤700 / ≤560 / ≤400)
   =========================================================== */
@media (max-width: 980px) {
  /* HEADER — riduci altezza header e dimensioni logo (evita collisione col burger) */
  #uvx-freight-landing { --uvx-fr-header-h: 72px; }
  #uvx-freight-landing .uvx-fr-header__logo img { height: 42px; max-width: 180px; }

  /* HERO — em con white-space:nowrap forzava overflow su parole lunghe */
  #uvx-freight-landing .uvx-fr-hero__title em { white-space: normal; }
  /* HERO — <br> forzati spezzano male, lascia wrap naturale */
  #uvx-freight-landing .uvx-fr-hero__title br { display: none; }

  /* ORBIT — disabilita animazione (i nodi escono dal viewport stretto) */
  #uvx-freight-landing .uvx-fr-orbit__ring,
  #uvx-freight-landing .uvx-fr-orbit__node { animation: none; }
  #uvx-freight-landing .uvx-fr-orbit__node { transform: translate(-50%, -50%); }
}

@media (max-width: 980px) {
  /* ABOUT — la foto restava limitata a 600px → margini bianchi laterali su tablet/mobile */
  #uvx-freight-landing .uvx-fr-about__visual {
    max-width: none;
    width: 100%;
  }
}

@media (max-width: 700px) {
  /* TRUST — limita lunghezza descrizione su tablet portrait */
  #uvx-freight-landing .uvx-fr-trust-item__desc {
    max-width: 320px;
    margin-inline: auto;
  }
}

@media (max-width: 560px) {
  /* HERO — CTA ghost non full-width (la primary sì) */
  #uvx-freight-landing .uvx-fr-hero__ctas .uvx-fr-btn--ghost {
    width: auto;
    align-self: flex-start;
  }
  /* HERO — lead più arioso su mobile */
  #uvx-freight-landing .uvx-fr-hero__lead { line-height: 1.65; }

  /* TRUST — icone troppo grandi su mobile */
  #uvx-freight-landing .uvx-fr-trust-item__icon img,
  #uvx-freight-landing .uvx-fr-trust-item__icon svg { width: 64px; height: 64px; }

  /* ORBIT — logo centrale sforava il cerchio (img 170px in box 92px) */
  #uvx-freight-landing .uvx-fr-orbit__center img { height: 76px; width: auto; }
  #uvx-freight-landing .uvx-fr-orbit__diagram { max-width: 300px; }
  /* ORBIT — nodi più compatti, icona interna leggibile */
  #uvx-freight-landing .uvx-fr-orbit__node { width: 64px; }
  #uvx-freight-landing .uvx-fr-orbit__node-icon { width: 48px; height: 48px; padding: 0; }
  #uvx-freight-landing .uvx-fr-orbit__node-icon img { width: 70%; height: 70%; }
  /* ORBIT — nodi laterali più vicini al centro per restare nel diagram */
  #uvx-freight-landing .uvx-fr-orbit__node--2,
  #uvx-freight-landing .uvx-fr-orbit__node--3 { left: 78%; }
  #uvx-freight-landing .uvx-fr-orbit__node--5,
  #uvx-freight-landing .uvx-fr-orbit__node--6 { left: 22%; }

  /* CTA FINALE — il bottone diventava full-width per la regola generica .uvx-fr-btn */
  #uvx-freight-landing .uvx-fr-cta-final__btn {
    width: auto;
    align-self: flex-start;
  }

  /* FOOTER — logo enorme rispetto al testo accanto */
  #uvx-freight-landing .uvx-fr-footer__brand-logo img { height: 80px; }
  /* FOOTER — copyright leggibile centrato */
  #uvx-freight-landing .uvx-fr-footer__bottom {
    justify-content: center;
    text-align: center;
  }
}

/* ===========================================================
   MOBILE FIX PATCH 2 — solo mobile (≤980 / ≤560)
   1) Chip hero leggibili (no più trasparenza eccessiva)
   2) About features 4 icone su una riga
   3) Orbit card full-width con icona a sinistra
   4) Process photo full-width senza crop 16:10
   5) Hero CTA auto-width (abbraccia il contenuto)
   =========================================================== */
@media (max-width: 980px) {
  /* 1) Chip hero — più contrasto, testo bianco pieno */
  #uvx-freight-landing .uvx-fr-chip {
    background: rgba(20, 20, 50, 0.55);
    border-color: rgba(255, 255, 255, 0.22);
    color: #ffffff;
  }

  /* 3) Orbit card — sblocca il max-width imposto al breakpoint precedente */
  #uvx-freight-landing .uvx-fr-orbit__card {
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 560px) {
  /* 2) About features: 4 icone in una sola riga, compatte */
  #uvx-freight-landing .uvx-fr-about__features {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px 6px;
  }
  #uvx-freight-landing .uvx-fr-about__feature {
    align-items: center;
    text-align: center;
    gap: 6px;
  }
  #uvx-freight-landing .uvx-fr-about__feature-icon,
  #uvx-freight-landing .uvx-fr-about__feature-icon img {
    width: 52px;
    height: 52px;
  }
  #uvx-freight-landing .uvx-fr-about__feature-title {
    font-size: 10.5px;
    line-height: 1.25;
  }

  /* 3) Orbit card: full-width, icona a sinistra, testo a destra */
  #uvx-freight-landing .uvx-fr-orbit__card {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 16px;
    row-gap: 4px;
    align-items: center;
    padding: 18px;
    width: 100%;
  }
  #uvx-freight-landing .uvx-fr-orbit__card-icon {
    grid-column: 1;
    grid-row: 1 / span 3;
    align-self: center;
    margin-bottom: 0;
  }
  #uvx-freight-landing .uvx-fr-orbit__card-icon img {
    width: 72px;
    height: 72px;
    margin: 0;
  }
  #uvx-freight-landing .uvx-fr-orbit__card-title,
  #uvx-freight-landing .uvx-fr-orbit__card-text,
  #uvx-freight-landing .uvx-fr-orbit__card-cta {
    grid-column: 2;
  }
  #uvx-freight-landing .uvx-fr-orbit__card-title {
    font-size: 16px;
    margin-bottom: 4px;
  }
  #uvx-freight-landing .uvx-fr-orbit__card-text {
    font-size: 12.5px;
    margin-bottom: 8px;
  }

  /* 4) Process photo: full-width come l'about image, no più crop 16:10 */
  #uvx-freight-landing .uvx-fr-process__photo {
    max-width: 100%;
    aspect-ratio: auto;
  }
  #uvx-freight-landing .uvx-fr-process__photo img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }

  /* 5) Hero CTA: bottone che abbraccia il contenuto (no più 100% width) */
  #uvx-freight-landing .uvx-fr-btn {
    width: auto;
  }
  #uvx-freight-landing .uvx-fr-hero__ctas {
    align-items: flex-start;
  }
}

/* ===========================================================
   MOBILE FIX PATCH 3 — HERO MOBILE A 2 COLONNE (≤980 / ≤560)
   La hero mobile NON cambia struttura rispetto al desktop: resta una
   composizione a 2 colonne (sinistra testo, destra foto del van),
   semplicemente compressa per il viewport mobile. Overlay scuro solo
   sulla colonna sinistra (gradiente orizzontale 90deg) per leggere il
   testo, colonna destra trasparente per mostrare il van. Desktop
   intoccato. Include anche About features → 4 colonne su una riga.
   =========================================================== */
@media (max-width: 980px) {
  /* ROOT — blocca scroll orizzontale su TUTTO il range mobile.
     Qualunque elemento decorativo (frecce, glow, orbit nodes) che
     dovesse uscire dal viewport viene clippato silenziosamente. */
  #uvx-freight-landing {
    overflow-x: hidden;
    max-width: 100vw;
  }
  #uvx-freight-landing .uvx-fr-container {
    max-width: 100%;
  }

  /* HERO — contenitore compatto, 2 colonne */
  #uvx-freight-landing .uvx-fr-hero {
    position: relative;
    overflow: hidden;
    min-height: 440px;
    padding-top: 0;
    padding-bottom: 0;
    color: #ffffff;
  }

  /* HERO grid — 2 colonne: 1fr testo | 42% foto */
  #uvx-freight-landing .uvx-fr-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 42%);
    align-items: stretch;
    min-height: 440px;
    gap: 0;
    position: relative;
  }

  /* Colonna sinistra: testo */
  #uvx-freight-landing .uvx-fr-hero__content {
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 26px 16px 22px 16px;
  }

  /* Colonna destra: visual nel flow del grid (NON più absolute) */
  #uvx-freight-landing .uvx-fr-hero__visual {
    position: relative;
    inset: auto;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    height: 100%;
    min-height: 440px;
    z-index: 1;
    overflow: hidden;
    border-radius: 0;
    aspect-ratio: auto;
    margin: 0;
    mask-image: none;
    -webkit-mask-image: none;
  }
  #uvx-freight-landing .uvx-fr-hero__visual::before,
  #uvx-freight-landing .uvx-fr-hero__visual::after {
    display: none;
    content: none;
  }
  #uvx-freight-landing .uvx-fr-hero__van {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 62% center;
    display: block;
    mask-image: none;
    -webkit-mask-image: none;
  }

  /* Overlay: solo a sinistra scuro, dissolve a destra dove sta il van.
     Posto sull'hero::before (riusato), z-index 2 → sopra visual (1),
     sotto content (3). */
  #uvx-freight-landing .uvx-fr-hero::before {
    background:
      linear-gradient(90deg,
        rgba(12, 12, 37, 0.96) 0%,
        rgba(12, 12, 37, 0.90) 28%,
        rgba(12, 12, 37, 0.74) 44%,
        rgba(12, 12, 37, 0.32) 62%,
        rgba(12, 12, 37, 0.10) 78%,
        rgba(12, 12, 37, 0.00) 100%);
    z-index: 2;
  }
  #uvx-freight-landing .uvx-fr-hero::after {
    display: none;
  }

  /* Frecce decorative dietro, soft */
  #uvx-freight-landing .uvx-fr-hero__arrows {
    opacity: 0.08;
    z-index: 0;
  }

  /* Titolo */
  #uvx-freight-landing .uvx-fr-hero__title {
    color: #ffffff;
    opacity: 1;
    font-size: clamp(24px, 5.6vw, 34px);
    line-height: 1.06;
    font-weight: 800;
    max-width: 100%;
    margin-bottom: 10px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
    overflow-wrap: break-word;
  }
  #uvx-freight-landing .uvx-fr-hero__title em {
    color: #eee52c;
    opacity: 1;
    overflow-wrap: break-word;
  }

  /* Lead */
  #uvx-freight-landing .uvx-fr-hero__lead {
    color: rgba(255, 255, 255, 0.88);
    opacity: 1;
    font-size: 11px;
    line-height: 1.4;
    max-width: 100%;
    margin-bottom: 14px;
    overflow-wrap: break-word;
    word-break: normal;
  }

  /* CTA row compatte, dentro la colonna sx */
  #uvx-freight-landing .uvx-fr-hero__ctas {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
  }
  #uvx-freight-landing .uvx-fr-hero .uvx-fr-btn {
    width: auto;
    min-height: 34px;
    padding: 8px 12px;
    font-size: 11px;
    border-radius: 999px;
  }
  #uvx-freight-landing .uvx-fr-hero__ctas .uvx-fr-btn--ghost {
    border-color: rgba(255, 255, 255, 0.55);
    color: #ffffff;
  }

  /* Chips compatte, dentro la colonna sx */
  #uvx-freight-landing .uvx-fr-hero__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 0;
    max-width: 100%;
    position: relative;
    z-index: 3;
  }
  #uvx-freight-landing .uvx-fr-chip {
    font-size: 9px;
    padding: 5px 8px 5px 5px;
    background: rgba(12, 12, 37, 0.52);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #ffffff;
    opacity: 1;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
  }

  /* ABOUT — 4 icone in una sola riga anche tra 560-980 */
  #uvx-freight-landing .uvx-fr-about__features {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px 8px;
    width: 100%;
    margin-top: 24px;
    align-items: start;
  }
  #uvx-freight-landing .uvx-fr-about__feature {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
    min-width: 0;
  }
  #uvx-freight-landing .uvx-fr-about__feature-icon {
    width: clamp(44px, 12vw, 58px);
    height: clamp(44px, 12vw, 58px);
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0 auto;
  }
  #uvx-freight-landing .uvx-fr-about__feature-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
  }
  #uvx-freight-landing .uvx-fr-about__feature-title {
    font-size: clamp(10px, 2.6vw, 12px);
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    color: var(--uvx-fr-navy);
    max-width: 100%;
    word-break: normal;
    overflow-wrap: anywhere;
  }
}

@media (max-width: 560px) {
  #uvx-freight-landing .uvx-fr-hero {
    min-height: 400px;
  }
  #uvx-freight-landing .uvx-fr-hero__grid {
    grid-template-columns: minmax(0, 1fr) 41%;
    min-height: 400px;
  }
  #uvx-freight-landing .uvx-fr-hero__visual {
    min-height: 400px;
  }
  #uvx-freight-landing .uvx-fr-hero__content {
    padding: 22px 12px 18px 12px;
  }
  #uvx-freight-landing .uvx-fr-hero__title {
    font-size: clamp(22px, 6vw, 30px);
  }
  #uvx-freight-landing .uvx-fr-hero__lead {
    font-size: 10px;
  }
  #uvx-freight-landing .uvx-fr-hero .uvx-fr-btn {
    font-size: 10px;
    padding: 7px 10px;
    min-height: 32px;
  }
  #uvx-freight-landing .uvx-fr-chip {
    font-size: 8.5px;
    padding: 4px 7px 4px 4px;
  }
  #uvx-freight-landing .uvx-fr-hero__title em {
    white-space: normal;
  }
}/* End custom CSS */