html.adv-home-page, .adv-home-page body{overflow-x:hidden;}
body.adv-home-page{overflow-x:hidden;}

/* Mobile only: page background is amaranto (Melanzana) at the Elementor
   page-settings level, which is invisible on desktop (the full-viewport
   fixed slide always covers it) but shows as a colored strip above the
   header gap and below the last section on mobile, where the slide track
   is in normal flow. Force white there so those gaps blend like every
   other page instead of reading as a separate colored block. */
@media (max-width:767px){
  body{ background-color:#FFFFFF !important; }
}

@media (min-width:1025px){
  /* Scroll continuo (rif. saatchi.it): la finestra visibile sta tra header e barra footer; ogni slide e' alta l'80% della finestra, cosi' sopra e sotto resta il 10% della slide precedente/successiva. */
  :root{--adv-hdr:76px;--adv-ftr:75px;--adv-side:clamp(40px,5.5vw,96px);--adv-frame-h:calc(100vh - var(--adv-hdr) - var(--adv-ftr));--adv-slide-h:calc(var(--adv-frame-h) * .8);--adv-peek:calc(var(--adv-frame-h) * .1);}
  .adv-home-viewport{position:fixed !important;top:var(--adv-hdr) !important;bottom:var(--adv-ftr) !important;left:var(--adv-side) !important;right:var(--adv-side) !important;height:auto !important;width:auto !important;overflow:hidden !important;z-index:1 !important;background:linear-gradient(var(--adv-bg-first,#003152) 50%, var(--adv-bg-last,#651341) 50%);}
  .adv-home-track{transform:translateY(calc(var(--adv-peek) - var(--adv-i,0) * var(--adv-slide-h))) !important;transition:transform .9s cubic-bezier(.77,0,.18,1) !important;width:100% !important;}
  .adv-slide{height:var(--adv-slide-h) !important;min-height:0 !important;width:100% !important;flex-shrink:0 !important;padding-top:20px !important;padding-bottom:20px !important;}
}
@media (max-width:1024px){
  .adv-home-viewport{position:static !important;height:auto !important;overflow:visible !important;}
  .adv-home-track{transform:none !important;}
  .adv-slide{height:auto !important;min-height:100vh !important;}
  .adv-split-media{order:2;}
}
.adv-slide{padding-top:64px;padding-bottom:52px;box-sizing:border-box;}
@media (max-width:1024px){
  .adv-slide{padding-bottom:96px;}
}
.adv-media-img{width:100% !important;height:100% !important;}
.adv-media-img img{width:100% !important;height:100% !important;max-width:100% !important;object-fit:cover !important;}

@media (min-width:1025px){
  /* All slides (hero included): "principi" scroll-linked two-phase
     choreography - the exact same technique and timing as the Manifesto
     page's .adv-pslide-dual slides (adv-page-slider.css). Column 1
     (nth-child(1)) travels top->bottom continuously through
     before->current->after (it descends the whole time); column 2
     (nth-child(2)) travels bottom->top continuously (it ascends the whole
     time) - so the two columns are always moving asynchronously, in
     opposite vertical directions, exactly like principi's left/right
     drift. The hero slide previously had its own bespoke, single-phase,
     different-duration/-distance entrance (1.15s/.62s, 80vh/70vh); it now
     gets identical treatment to every other slide, and adv-home-slider.js
     drives ALL slides through the same two-phase pause+settle timing. */
  .adv-home-track > .adv-slide > .e-con:nth-child(1),
  .adv-home-track > .adv-slide > .e-con:nth-child(2){
    /* Home-only: part of the ~1.8s total slide-change timing - see note
       above on .adv-home-track's own transition duration. Slowed down
       (was .38s) so text enters/exits more gradually. */
    transition: transform .9s cubic-bezier(.77,0,.18,1) !important;
    transition-delay: 0s !important;
    will-change: transform;
  }
  /* lontane: colonne fuori campo; adiacenti (next/prev): restano visibili nella fascia del 10% con un leggero scarto opposto; corrente: a riposo */
  .adv-home-track > .adv-slide[data-col-state="before"] > .e-con:nth-child(1){ transform: translateY(-100vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="before"] > .e-con:nth-child(2){ transform: translateY(100vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="after"] > .e-con:nth-child(1){ transform: translateY(100vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="after"] > .e-con:nth-child(2){ transform: translateY(-100vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="next"] > .e-con:nth-child(1){ transform: translateY(-6vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="next"] > .e-con:nth-child(2){ transform: translateY(6vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="prev"] > .e-con:nth-child(1){ transform: translateY(6vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="prev"] > .e-con:nth-child(2){ transform: translateY(-6vh) !important; }
  .adv-home-track > .adv-slide[data-col-state="current"] > .e-con:nth-child(1),
  .adv-home-track > .adv-slide[data-col-state="current"] > .e-con:nth-child(2){ transform: translateY(0) !important; }
}


/* Mobile: hero (first slide) logo column fills the whole screen and the
   logo image itself is centered, both axes, in the actually-VISIBLE area
   (a fixed ~76px header and a fixed ~90px bottom bar permanently overlay
   the top/bottom of the viewport, so the column gets matching top/bottom
   padding carved out of its own 100dvh height rather than being centered
   against the full, partly-hidden viewport). 100dvh (with 100vh as a
   fallback for older browsers) avoids the classic iOS Safari issue where
   100vh includes the area the collapsible address bar can cover, which is
   the other source of the "space above/below" the user saw. The earlier
   selector here (.adv-media-img) does not exist on this element at all -
   the widget fb8f296 is a plain elementor-widget-image - so it had zero
   effect; fb8f296's own generated class is the correct target. */
@media (max-width:1024px){
  /* The hero slide itself still carries ~44px of its own top padding on
     mobile (from Elementor's own responsive container padding, separate
     from this stylesheet) on top of the 76px the page already reserves
     for the fixed header (body's padding-top). Zeroing it here - for the
     hero slide only - means the media column starts right where the
     fixed header ends, so a height of "one viewport minus header" lines
     up exactly with the bottom of the visible screen instead of
     overshooting it by that leftover padding. */
  .adv-home-track > .adv-slide:first-child{
    padding-top:0 !important;
  }
  .elementor-element-eb5188a.adv-split-media{
    width:100vw !important;
    max-width:100vw !important;
    height:calc(100vh - 76px) !important;
    height:calc(100dvh - 76px) !important;
    min-height:calc(100vh - 76px) !important;
    min-height:calc(100dvh - 76px) !important;
    margin-left:calc(50% - 50vw) !important;
    margin-top:0 !important;
    margin-right:calc(50% - 50vw) !important;
    box-sizing:border-box !important;
    padding-top:0 !important;
    padding-bottom:90px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .elementor-element-eb5188a > .e-con-inner,
  .elementor-element-eb5188a .elementor-widget-image,
  .elementor-element-eb5188a .elementor-widget-image .elementor-widget-container{
    width:100% !important;
    height:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .elementor-element-fb8f296 img{
    width:auto !important;
    height:auto !important;
    max-width:82% !important;
    max-height:74% !important;
    margin:0 auto !important;
    display:block !important;
  }
}

/* "Risultati" slide: clickable demo partner logos (PNG images, all the
   same box size regardless of each PNG's own dimensions) that swap the
   testimonial quote/name/company below (see adv-home-slider.js). */
.adv-partner-logo{
  cursor:pointer;
  box-sizing:border-box;
  padding:10px 16px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:4px;
  opacity:.8;
  filter:grayscale(20%);
  transition: background-color .2s ease, border-color .2s ease, opacity .2s ease, filter .2s ease;
  user-select:none;
}
.adv-partner-logo .elementor-widget-container{
  display:flex !important;
  align-items:center;
  justify-content:center;
}
.adv-partner-logo img{
  width:120px !important;
  height:44px !important;
  object-fit:contain !important;
}
.adv-partner-logo:hover,
.adv-partner-logo.is-active{
  background-color:rgba(255,222,69,.14) !important;
  border-color:#ffde45 !important;
  opacity:1;
  filter:grayscale(0%);
}

/* Mobile: the text column of every other home slide (hero excluded, which
   has no text-column padding issue) carries its own asymmetric Elementor
   padding (20px on one side, 0 on the other - alternating by slide, meant
   to sit flush against the image column on desktop). On mobile the two
   columns stack full-width, so that leftover asymmetry reads as an
   uneven left/right margin instead. Forced symmetric here, same 20px
   convention used everywhere else on the site. */
@media (max-width:1024px){
  .elementor-element-680ea5d,
  .elementor-element-8b48b29,
  .elementor-element-d9fe3cb,
  .elementor-element-a313cf2{
    padding-left:20px !important;
    padding-right:20px !important;
  }
}

/* Mobile: center the whole "Risultati" text column (title, partner logos,
   testimonial quote + name/company) dead in the middle of the screen. The
   column (c98a6d4) carries its own asymmetric Elementor padding
   (top:8 right:20 bottom:8 left:0), which on a full-width mobile column
   shifts every centered child a few px off true screen-center - zeroing
   it out on mobile is what actually finishes the centering. */
@media (max-width:1024px){
  .elementor-element-c98a6d4{
    align-items:center !important;
    padding:0 !important;
    width:100% !important;
  }
  .elementor-element-c98a6d4 .elementor-heading-title,
  .elementor-element-c98a6d4 .elementor-testimonial-content,
  .elementor-element-c98a6d4 .elementor-testimonial-meta-inner{
    text-align:center !important;
    justify-content:center !important;
    width:100% !important;
  }
  .elementor-element-9fc306d{
    justify-content:center !important;
    width:100% !important;
  }
}
/* Responsive H1 (56px) / subtitle (24px) on short desktop viewports so slides stay between the fixed header and footer bar. */
/* Schermi bassi: la slide e' alta l'80% della finestra tra header e footer, quindi le colonne di testo si riducono a gradini. */
@media (min-width:1025px) and (max-height:820px){ .adv-home-track > .adv-slide > .e-con{ zoom:.92; } }
@media (min-width:1025px) and (max-height:760px){ .adv-home-track > .adv-slide > .e-con{ zoom:.82; } }
@media (min-width:1025px) and (max-height:700px){ .adv-home-track > .adv-slide > .e-con{ zoom:.74; } }
@media (min-width:1025px) and (max-height:640px){ .adv-home-track > .adv-slide > .e-con{ zoom:.66; } }
@media (min-width:1025px) and (max-height:580px){ .adv-home-track > .adv-slide > .e-con{ zoom:.58; } }
@media (min-width:1025px) and (max-height:520px){ .adv-home-track > .adv-slide > .e-con{ zoom:.5; } }

/* ===== Home "Portfolio" slide (shortcode [adv_portfolio_switcher]) =====
   Row of project featured images at their native 4:5 proportions; click
   swaps the detail block below. No side placeholder, content centred. */
.adv-pf{ width:100%; display:flex; flex-direction:column; align-items:center; text-align:center; }
.adv-pf-thumbs{ display:flex; justify-content:center; gap:14px; width:100%; margin:6px 0 20px; }
.adv-pf-thumb{
  flex:0 0 auto; width:min(12vw, 22vh); padding:0; margin:0; border:2px solid transparent;
  background:none !important; cursor:pointer; opacity:.55; filter:grayscale(35%);
  transition:opacity .2s ease, filter .2s ease, border-color .2s ease, transform .2s ease;
  -webkit-appearance:none; appearance:none; outline:none; box-shadow:none !important; line-height:0;
}
.adv-pf-thumb img{ display:block; width:100% !important; height:auto !important; aspect-ratio:4/5; object-fit:cover; }
.adv-pf-thumb:hover, .adv-pf-thumb:focus-visible{ opacity:.9; filter:none; }
.adv-pf-thumb.is-active{ opacity:1; filter:none; border-color:#ffde45; transform:translateY(-4px); }
.adv-pf-detail{ max-width:640px; color:#fff; }
.adv-pf-title{ margin:0 0 6px; font-family:'Rubik',sans-serif; font-weight:700; font-size:20px; letter-spacing:.02em; text-transform:uppercase; color:#fff; }
.adv-pf-cats{ margin:0 0 10px; font-family:'Rubik',sans-serif; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#ffde45; }
.adv-pf-text{ margin:0 0 16px; font-family:'Rubik',sans-serif; font-size:14px; line-height:1.5; color:rgba(255,255,255,.85); }
.adv-pf-link, .adv-pf-link:visited{ display:inline-block; padding:11px 22px; background:#ffde45; color:#1B1B1B !important; font-family:'Rubik',sans-serif; font-weight:700; font-size:12px; letter-spacing:.06em; text-transform:uppercase; text-decoration:none; transition:background-color .3s ease; }
.adv-pf-link:hover{ background:#fff; }
@media (max-width:1024px){
  .adv-pf-thumbs{ flex-wrap:wrap; }
  .adv-pf-thumb{ width:calc(33.333% - 10px); }
}
@media (min-width:1025px) and (max-height:700px){
  .adv-pf-text{ font-size:13px; margin-bottom:12px; }
  .adv-pf-title{ font-size:17px; }
}

/* Centred single-column slides (Servizi, Portfolio, CTA): whole stack centred. */
.adv-home-track > .adv-slide > .e-con:only-child{ margin-left:auto; margin-right:auto; }

.adv-home-track > .adv-slide{overflow:hidden !important;}

/* Contatore slide (pallini a destra, rif. saatchi.it). Solo desktop. */
.adv-dots{display:none}
@media (min-width:1025px){
  .adv-dots{position:fixed;right:0;width:var(--adv-side);top:50%;transform:translateY(-50%);z-index:50;display:flex;flex-direction:column;align-items:center;gap:14px}
  .adv-dots button{width:11px;height:11px;padding:0;border:1.5px solid #1B1B1B;border-radius:50%;background:transparent;cursor:pointer;opacity:.4;transition:background .3s,opacity .3s,transform .3s;-webkit-appearance:none;appearance:none;box-shadow:none !important;outline:none}
  .adv-dots button:hover,.adv-dots button:focus{background:transparent;opacity:1;transform:scale(1.25)}
  .adv-dots button.is-active,.adv-dots button.is-active:hover{background:#1B1B1B;opacity:1}
  html body.page-id-9154{background:#FFFFFF !important}\n  body.page-id-9154::before{content:"";position:fixed;inset:0;background:#FFFFFF;z-index:0;pointer-events:none}
}
/* Effetti di entrata/uscita dei testi (sopra lo scroll continuo): i testi della slide corrente entrano con ritardo e sfalsati; quelli delle altre slide restano nascosti e escono rapidamente. */
@media (min-width:1025px){
  .adv-home-track > .adv-slide :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode){transition:opacity .3s ease,transform .3s ease !important;transition-delay:0s !important;will-change:opacity,transform}
  .adv-home-track > .adv-slide:not([data-col-state="current"]) :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode){opacity:0 !important;transform:translateY(38px) !important}
  .adv-home-track > .adv-slide:is([data-col-state="prev"],[data-col-state="after"]) :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode){transform:translateY(-38px) !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode){opacity:1 !important;transform:translateY(0) !important;transition:opacity .7s ease,transform .8s cubic-bezier(.22,.61,.18,1) !important;transition-delay:.45s !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode):nth-child(2){transition-delay:0.55s !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode):nth-child(3){transition-delay:0.65s !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode):nth-child(4){transition-delay:0.75s !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode):nth-child(5){transition-delay:0.85s !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode):nth-child(6){transition-delay:0.95s !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode):nth-child(7){transition-delay:1.05s !important}
  .adv-home-track > .adv-slide[data-col-state="current"] :is(.elementor-widget-heading,.elementor-widget-text-editor,.elementor-widget-button,.elementor-widget-icon-box,.elementor-widget-icon,.elementor-widget-shortcode):nth-child(8){transition-delay:1.15s !important}
}
/* Placeholder media: riempiono tutta la colonna in cover */
@media (min-width:1025px){
.adv-home-track > .adv-slide > .e-con.adv-split-media{align-self:stretch!important;min-height:100%!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;}
}
@media (max-width:1024px){
.adv-home-track > .adv-slide > .e-con.adv-split-media{min-height:260px!important;background-size:cover!important;background-position:center!important;}
}
.adv-split-media .adv-media-img,.adv-split-media .adv-media-img img{width:100%!important;height:100%!important;object-fit:cover!important;}
/* Placeholder a filo bordo slide (desktop) */
@media (min-width:1025px){
.adv-home-track > .adv-slide > .e-con.adv-split-media{margin-top:-20px!important;margin-bottom:-20px!important;min-height:calc(100% + 40px)!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con.adv-split-media{margin-left:-6vw!important;}
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con.adv-split-media{margin-right:-6vw!important;}
}
/* Colonne solidali con lo sfondo sulle slide 4-6 */
.adv-home-track > .adv-slide:nth-child(n+4)[data-col-state] > .e-con:nth-child(1),
.adv-home-track > .adv-slide:nth-child(n+4)[data-col-state] > .e-con:nth-child(2){transform:none!important;transition:none!important;}
/* Placeholder a tutta colonna senza margini (desktop) */
@media (min-width:1025px){
.adv-home-track > .adv-slide.elementor-element-5f8ad24,
.adv-home-track > .adv-slide.elementor-element-40017cb{padding-left:0!important;padding-right:0!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con.adv-split-media,
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con.adv-split-media{margin-left:-0px!important;margin-right:0!important;width:50%!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con:not(.adv-split-media){padding-right:6vw!important;}
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con:not(.adv-split-media){padding-left:6vw!important;}
}
/* Tablet e mobile: come prima, immagine intera non in cover */
@media (max-width:1024px){
.adv-home-track > .adv-slide > .e-con.adv-split-media:not(.elementor-element-eb5188a){min-height:0!important;height:auto!important;aspect-ratio:1/1;background-size:contain!important;background-position:center center!important;background-repeat:no-repeat!important;margin:0!important;}
}
/* Menu overlay: apertura/chiusura rapide */
#elementor-popup-modal-9235 .dialog-widget-content,
#elementor-popup-modal-9235 .dialog-widget-content.animated{animation-duration:.25s!important;transition-duration:.25s!important;}

/* Fit automatico dei contenuti: margini di respiro sopra/sotto in ogni altezza */
@media (min-width:1025px){
.adv-home-track > .adv-slide > .e-con:not(.adv-split-media){zoom:var(--adv-z,1)!important;width:50%!important;justify-content:center!important;}
.adv-home-track > .adv-slide > .e-con:only-child:not(.adv-split-media){width:100%!important;}
.adv-home-track > .adv-slide > .e-con.adv-split-media{zoom:1!important;}
}
@media (max-width:1024px){
.adv-home-track > .adv-slide{padding-top:40px!important;padding-bottom:48px!important;}
}
/* === Prime 3 slide: due nastri indipendenti come la reference (sinistro scende, destro sale) === */
@media (min-width:1025px){
.adv-home-track{transition:transform 1.4s cubic-bezier(.16,1,.3,1)!important;}
.adv-home-track > .adv-slide.elementor-element-2b5da2f{--adv-slide-bg:#FFFFFF;background:transparent!important;overflow:visible!important;padding:0!important;}
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con:nth-child(1){transform:translateY(calc(2 * (var(--adv-i,0) - 0) * var(--adv-slide-h)))!important;transition:transform 1.4s cubic-bezier(.16,1,.3,1)!important;}
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con:nth-child(2){transform:none!important;transition:none!important;}
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con{height:100%!important;margin:0!important;min-height:0!important;align-self:stretch!important;}
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con.elementor-element-680ea5d{background-color:#FFFFFF!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24{--adv-slide-bg:#651341;background:transparent!important;overflow:visible!important;padding:0!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con:nth-child(2){transform:translateY(calc(2 * (var(--adv-i,0) - 1) * var(--adv-slide-h)))!important;transition:transform 1.4s cubic-bezier(.16,1,.3,1)!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con:nth-child(1){transform:none!important;transition:none!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con{height:100%!important;margin:0!important;min-height:0!important;align-self:stretch!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con.elementor-element-8b48b29{background-color:#651341!important;}
.adv-home-track > .adv-slide.elementor-element-40017cb{--adv-slide-bg:#003152;background:transparent!important;overflow:visible!important;padding:0!important;}
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con:nth-child(1){transform:translateY(calc(2 * (var(--adv-i,0) - 2) * var(--adv-slide-h)))!important;transition:transform 1.4s cubic-bezier(.16,1,.3,1)!important;}
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con:nth-child(2){transform:none!important;transition:none!important;}
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con{height:100%!important;margin:0!important;min-height:0!important;align-self:stretch!important;}
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con.elementor-element-d9fe3cb{background-color:#003152!important;}
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con.elementor-element-680ea5d{padding-right:6vw!important;}
}

@media (min-width:1025px){
.adv-home-track > .adv-slide.elementor-element-2b5da2f,.adv-home-track > .adv-slide.elementor-element-5f8ad24,.adv-home-track > .adv-slide.elementor-element-40017cb{gap:0!important;column-gap:0!important;row-gap:0!important;--gap:0px!important;--column-gap:0px!important;--row-gap:0px!important;}
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con,.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con,.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con{flex:0 0 auto!important;}
}

@media (min-width:1025px){
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con,.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con,.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con{box-sizing:border-box!important;}
}

/* Fix prime 3 slide */
@media (min-width:1025px){
/* slide 1 pulita: niente anteprima colorata sopra il logo */
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con:nth-child(2){transition:transform 1.4s cubic-bezier(.16,1,.3,1),opacity .5s ease!important;}
.adv-home-track > .adv-slide.elementor-element-5f8ad24[data-col-state="next"] > .e-con:nth-child(2){opacity:0!important;}
/* slide 2: margini del testo (lato interno e lato esterno) */
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con.elementor-element-8b48b29{padding-left:6vw!important;padding-right:6vw!important;}
/* slide 3: sulla slide 4 la colonna sinistra resta in anteprima sopra, come la destra */
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con:nth-child(1){transform:translateY(calc(2 * (min(var(--adv-i,0), 2) - 2) * var(--adv-slide-h)))!important;}
}
/* Cornice su pixel interi: le colonne combaciano esattamente (niente sfalsamenti ne' righini) */
@media (min-width:1025px){
:root{--adv-side:round(clamp(40px,5.5vw,96px),2px);--adv-slide-h:round(calc(var(--adv-frame-h) * .8),2px);--adv-peek:calc((var(--adv-frame-h) - var(--adv-slide-h)) / 2);}
.adv-home-track > .adv-slide.elementor-element-2b5da2f > .e-con.elementor-element-680ea5d,
.adv-home-track > .adv-slide.elementor-element-5f8ad24 > .e-con.elementor-element-8b48b29,
.adv-home-track > .adv-slide.elementor-element-40017cb > .e-con.elementor-element-d9fe3cb{position:relative;z-index:2;box-shadow:none!important;}
}
/* Portfolio home: miniature come link */
a.adv-pf-thumb{display:block;text-decoration:none;color:inherit}
a.adv-pf-thumb:focus-visible{outline:2px solid #ffde45}
