/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 11 2026 | 12:42:37 */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Manrope:wght@400;500;600&family=Tinos:wght@400;700&display=swap');

/* Vinelli Avvocati, stili sito. Palette: carbone, avorio, bordeaux, pietra, bianco */
:root{
  --vnl-carbon:#151515;
  --vnl-carbon-2:#1c1b1b;
  --vnl-ivory:#F4F1EA;
  --vnl-bordeaux:#541F2B;
  --vnl-bordeaux-2:#7a3040;
  --vnl-stone:#858585;
  --vnl-white:#FFFFFF;
  --vnl-line-d:rgba(244,241,234,.14);
  --vnl-line-l:rgba(21,21,21,.12);
  --vnl-serif:"Cormorant Garamond","Times New Roman",Times,serif;
  --vnl-sans:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --vnl-logo:"Times New Roman",Tinos,Times,serif;
  --vnl-ease:cubic-bezier(.2,.7,.1,1);
  --kit-widget-spacing:0px;
  --widgets-spacing:0px;
}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{background:var(--vnl-carbon);color:var(--vnl-carbon);font-family:var(--vnl-sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}

/* reset dei contenitori Elementor dentro il sito */
.vnl-sec.e-con,.vnl-sec .e-con,.vnl-hd-wrap.e-con{
  --padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;
  --gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;
  --content-width:100%;--width:100%;
}
.vnl-sec .elementor-widget:not(:last-child){margin-block-end:0}
.vnl-sec .elementor-widget-container{margin:0;padding:0}
.vnl-sec p{margin:0}
.vnl-sec .elementor-heading-title{font-family:var(--vnl-serif);font-weight:500;letter-spacing:-.01em;text-wrap:balance;color:inherit;margin:0}

.vnl-sec{position:relative;padding-block:clamp(88px,12vw,168px)!important;overflow:hidden}
.vnl-wrap.e-con,.vnl-wrap{max-width:1240px;margin-inline:auto!important;padding-inline:max(24px,env(safe-area-inset-left,0px))!important;box-sizing:border-box;width:100%}
.vnl-dark{background:var(--vnl-carbon);color:var(--vnl-ivory)}
.vnl-light{background:var(--vnl-ivory);color:var(--vnl-carbon)}
.vnl-white{background:var(--vnl-white);color:var(--vnl-carbon)}

.vnl-grid2.e-con{display:grid!important;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,96px)!important;align-items:start}
.vnl-col.e-con{display:flex;flex-direction:column;gap:28px!important;min-width:0}

/* tipografia */
.vnl-eyebrow{font:600 12px/1 var(--vnl-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--vnl-stone);display:flex;gap:14px;align-items:center;margin-bottom:24px!important}
.vnl-eyebrow b{color:var(--vnl-bordeaux);font-family:var(--vnl-serif);font-size:20px;letter-spacing:0;font-weight:600}
.vnl-dark .vnl-eyebrow b{color:#b9707f}
.vnl-h2 .elementor-heading-title{font-size:clamp(2.6rem,6vw,5.4rem);line-height:1}
.vnl-lead{font-family:var(--vnl-serif);font-size:clamp(1.45rem,2.2vw,1.9rem);line-height:1.3;margin-bottom:20px!important}
.vnl-sec .elementor-widget-text-editor{font-size:16px;line-height:1.7;max-width:62ch;color:inherit}
.vnl-light .elementor-widget-text-editor,.vnl-white .elementor-widget-text-editor{color:#3b3a38}
.vnl-k{display:block;font:600 11px/1 var(--vnl-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--vnl-stone);margin-bottom:10px}

/* etichetta contenuto di esempio */
.vnl-ex{display:inline-block;vertical-align:middle;font:600 9.5px/1 var(--vnl-sans);letter-spacing:.16em;text-transform:uppercase;padding:5px 7px 4px;border-radius:2px;background:var(--vnl-bordeaux);color:var(--vnl-ivory);margin-inline:2px 6px}
.vnl-note{font-size:14px;color:var(--vnl-stone);margin-top:22px!important}

/* bottoni */
.vnl-btn .elementor-button{font:600 12px/1 var(--vnl-sans);letter-spacing:.2em;text-transform:uppercase;padding:20px 30px;border-radius:0;background:var(--vnl-bordeaux);color:var(--vnl-ivory);border:1px solid var(--vnl-bordeaux);transition:background .4s var(--vnl-ease),color .4s,border-color .4s}
.vnl-btn .elementor-button:hover,.vnl-btn .elementor-button:focus-visible{background:transparent;color:var(--vnl-ivory);border-color:var(--vnl-ivory)}
.vnl-btn-light .elementor-button{background:var(--vnl-ivory);color:var(--vnl-carbon);border-color:var(--vnl-ivory)}
.vnl-btn-light .elementor-button:hover,.vnl-btn-light .elementor-button:focus-visible{background:var(--vnl-bordeaux);border-color:var(--vnl-bordeaux);color:var(--vnl-ivory)}
.vnl-sec a:focus-visible,.vnl-hd a:focus-visible,.vnl-burger:focus-visible,.vnl-sec .elementor-button:focus-visible{outline:2px solid #b9707f;outline-offset:4px}

/* ============ HEADER ============ */
.vnl-hd-wrap.e-con{position:fixed!important;top:0;left:0;right:0;z-index:999;width:100%}
.vnl-hd{display:flex;align-items:center;justify-content:space-between;gap:24px;height:88px;padding-inline:max(24px,env(safe-area-inset-left,0px)) max(24px,env(safe-area-inset-right,0px));padding-top:env(safe-area-inset-top,0px);box-sizing:content-box;transition:height .5s var(--vnl-ease),background .5s,backdrop-filter .5s;color:var(--vnl-ivory)}
.vnl-hd-brand{display:flex;align-items:center;gap:12px;color:inherit!important;text-decoration:none}
.vnl-hd-brand svg{width:13px;height:30px;fill:currentColor;flex:none;transition:height .5s var(--vnl-ease)}
.vnl-hd-brand span{font:700 15px/1 var(--vnl-logo);letter-spacing:.14em;text-transform:uppercase}
.vnl-hd-brand em{font-style:normal;font-weight:400}
.vnl-nav{display:flex;gap:34px;align-items:center}
.vnl-nav a{font:500 12px/1 var(--vnl-sans);letter-spacing:.18em;text-transform:uppercase;color:inherit;text-decoration:none;position:relative;padding-block:8px}
.vnl-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--vnl-ease)}
.vnl-nav a:hover::after,.vnl-nav a.is-active::after{transform:scaleX(1);transform-origin:left}
.vnl-nav-cta{border:1px solid rgba(244,241,234,.5);padding:12px 18px!important}
.vnl-nav-cta::after{display:none}
.vnl-hd.is-scrolled{height:64px;background:rgba(21,21,21,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.vnl-hd.is-scrolled .vnl-hd-brand svg{height:24px}
.vnl-burger{display:none;background:none;border:0;width:44px;height:44px;padding:0;cursor:pointer;position:relative;color:inherit}
.vnl-burger span:not(.vnl-sr){position:absolute;left:10px;right:10px;height:1px;background:currentColor;transition:transform .5s var(--vnl-ease),top .5s var(--vnl-ease)}
.vnl-burger span:nth-child(1){top:18px}.vnl-burger span:nth-child(2){top:26px}
.vnl-burger[aria-expanded="true"] span:nth-child(1){top:22px;transform:rotate(45deg)}
.vnl-burger[aria-expanded="true"] span:nth-child(2){top:22px;transform:rotate(-45deg)}
.vnl-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.vnl-mnav{position:fixed;inset:0;z-index:998;background:var(--vnl-carbon);color:var(--vnl-ivory);display:flex;flex-direction:column;justify-content:center;padding:120px max(24px,env(safe-area-inset-left,0px)) calc(32px + env(safe-area-inset-bottom,0px));clip-path:inset(0 0 100% 0);transition:clip-path .7s var(--vnl-ease)}
.vnl-mnav[hidden]{display:flex!important;visibility:hidden}
.vnl-mnav.is-open{clip-path:inset(0 0 0 0);visibility:visible}
.vnl-mnav nav{display:flex;flex-direction:column;gap:6px}
.vnl-mnav a{font:500 clamp(2.4rem,11vw,3.4rem)/1.15 var(--vnl-serif);color:var(--vnl-ivory);text-decoration:none;display:flex;align-items:baseline;gap:16px;opacity:0;transform:translateY(24px);transition:opacity .5s,transform .6s var(--vnl-ease)}
.vnl-mnav a i{font:600 12px/1 var(--vnl-sans);font-style:normal;color:#b9707f;letter-spacing:.1em}
.vnl-mnav.is-open a{opacity:1;transform:none}
.vnl-mnav.is-open a:nth-child(2){transition-delay:.06s}.vnl-mnav.is-open a:nth-child(3){transition-delay:.12s}.vnl-mnav.is-open a:nth-child(4){transition-delay:.18s}.vnl-mnav.is-open a:nth-child(5){transition-delay:.24s}
.vnl-mnav-foot{margin-top:auto;font-size:13px;color:var(--vnl-stone);word-break:break-all}

/* ============ HERO ============ */
.vnl-hero.e-con{min-height:100vh;min-height:100svh;display:flex!important;align-items:center;justify-content:center;background:radial-gradient(120% 80% at 50% 110%,#2a1218 0%,var(--vnl-carbon) 55%) var(--vnl-carbon);color:var(--vnl-ivory);padding-block:140px 120px!important}
.vnl-hero-bg{position:absolute!important;inset:0;pointer-events:none;width:100%!important}
.vnl-hero-bg .elementor-widget-container{height:100%}
.vnl-pillars{position:absolute;inset:0;perspective:900px;overflow:hidden}
.vnl-pillars i{position:absolute;top:-10%;bottom:-10%;width:clamp(28px,4vw,64px);background:linear-gradient(180deg,rgba(244,241,234,0) 0%,rgba(244,241,234,.055) 40%,rgba(244,241,234,.02) 100%);border-inline:1px solid rgba(244,241,234,.05);will-change:transform;animation:vnl-pillar-in 2.4s var(--vnl-ease) backwards}
.vnl-pillars i:nth-child(1){left:4%;--d:.1s;--z:-.6}
.vnl-pillars i:nth-child(2){left:17%;--d:.25s;--z:-.3}
.vnl-pillars i:nth-child(3){left:31%;--d:.4s;--z:-.1}
.vnl-pillars i:nth-child(4){right:31%;--d:.4s;--z:-.1}
.vnl-pillars i:nth-child(5){right:17%;--d:.25s;--z:-.3}
.vnl-pillars i:nth-child(6){right:4%;--d:.1s;--z:-.6}
.vnl-pillars i{animation-delay:var(--d)}
@keyframes vnl-pillar-in{from{opacity:0;transform:scaleY(.6)}to{opacity:1;transform:none}}
.vnl-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(185,112,127,.6),transparent)}
.vnl-hero-in.e-con{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:1100px;padding-inline:24px!important;gap:0!important}
.vnl-hero-logo{margin-bottom:clamp(36px,6vh,64px)!important}
.vnl-hero-title .elementor-heading-title{font-size:clamp(2.7rem,7.2vw,6.6rem);line-height:.98;font-weight:400;letter-spacing:-.015em}
.vnl-hero-sub{margin-top:28px!important}
.vnl-hero-sub p{font-family:var(--vnl-serif);font-style:italic;font-size:clamp(1.2rem,1.9vw,1.6rem);color:rgba(244,241,234,.78)}
.vnl-hero-cta.e-con{margin-top:44px!important;display:flex!important;flex-direction:row;align-items:center;justify-content:center;gap:28px!important;flex-wrap:wrap}
.vnl-hero-meta{font:500 11px/1.7 var(--vnl-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--vnl-stone);text-align:left;display:block;border-left:1px solid var(--vnl-line-d);padding-left:20px}
.vnl-scroll{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--vnl-stone)!important;text-decoration:none;font:600 10px/1 var(--vnl-sans);letter-spacing:.28em;text-transform:uppercase;z-index:3}
.vnl-scroll i{width:1px;height:44px;background:rgba(244,241,234,.2);position:relative;overflow:hidden}
.vnl-scroll i::after{content:"";position:absolute;left:0;top:-50%;width:1px;height:50%;background:var(--vnl-ivory);animation:vnl-drop 2s ease-in-out infinite}
@keyframes vnl-drop{to{top:100%}}

/* logo animato (pilastro, tre linee, scritta) */
.vnl-logo{width:clamp(120px,14vw,170px);margin-inline:auto}
.vnl-logo svg{width:100%;height:auto;display:block;overflow:visible}
.vnl-logo svg *{transform-box:fill-box}
.vnl-mark{fill:var(--vnl-ivory);width:52%!important;margin-inline:auto}
.vnl-slab{transform-origin:center;animation:vnl-slab .5s .6s cubic-bezier(.6,0,.3,1) both}
@keyframes vnl-slab{from{transform:scaleX(1);opacity:1}to{transform:scaleX(0);opacity:0}}
.vnl-b1,.vnl-b2,.vnl-b3{transform-origin:center bottom}
.vnl-b1{animation:vnl-b1 .45s 1s cubic-bezier(.5,0,.2,1) both}
.vnl-b2{animation:vnl-b2 .45s 1.3s cubic-bezier(.5,0,.2,1) both}
.vnl-b3{animation:vnl-b3 .45s 1.6s cubic-bezier(.5,0,.2,1) both}
@keyframes vnl-b1{from{transform:translateX(10px) scaleY(.9538)}to{transform:none}}
@keyframes vnl-b2{from{transform:scaleY(.9538)}to{transform:none}}
@keyframes vnl-b3{from{transform:translateX(-10px) scaleY(.9538)}to{transform:none}}
.vnl-word{margin-top:18px}
.vnl-word text{font-family:var(--vnl-logo);fill:var(--vnl-ivory)}
.vnl-w1{animation:vnl-in .6s 2.2s ease-out both}
.vnl-w2{animation:vnl-in .6s 2.45s ease-out both}
@keyframes vnl-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* titolo e cta dell'apertura entrano dopo il logo */
.vnl-hero .vnl-hero-sub{animation:vnl-in 1s 3s var(--vnl-ease) both}
.vnl-hero .vnl-hero-cta{animation:vnl-in 1s 3.2s var(--vnl-ease) both}
.vnl-scroll{animation:vnl-fade 1s 3.6s both}
@keyframes vnl-fade{from{opacity:0}to{opacity:1}}

/* ============ STUDIO ============ */
.vnl-sedi{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px;padding-top:28px;border-top:1px solid var(--vnl-line-l)}
.vnl-sedi p{font-family:var(--vnl-serif);font-size:1.3rem;line-height:1.35}
.vnl-photo{margin:0}
.vnl-photo-wide{margin-top:clamp(56px,8vw,112px)!important}
.vnl-ph{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:28px;box-sizing:border-box;overflow:hidden;color:var(--vnl-ivory);background:
 repeating-linear-gradient(90deg,rgba(244,241,234,.06) 0 2px,transparent 2px 90px),
 linear-gradient(160deg,#2b2726 0%,#151515 70%)}
.vnl-photo-wide .vnl-ph{aspect-ratio:21/9;max-width:100%}
.vnl-photo-tall .vnl-ph{aspect-ratio:4/5;max-width:100%}
.vnl-ph span{font-family:var(--vnl-serif);font-size:1.6rem}
.vnl-ph small{font-size:12px;color:var(--vnl-stone);max-width:40ch;line-height:1.5}
.vnl-ph::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--vnl-bordeaux),transparent 60%);opacity:.35}
.vnl-ph>*{position:relative}

/* ============ COMPETENZE ============ */
.vnl-comp{background:linear-gradient(180deg,var(--vnl-carbon),var(--vnl-carbon-2))}
.vnl-areas.e-con{margin-top:clamp(48px,7vw,96px)!important;display:flex;flex-direction:column}
.vnl-area.e-con{display:grid!important;grid-template-columns:120px minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:32px!important;padding:34px 0!important;border-top:1px solid var(--vnl-line-d);position:relative;cursor:default;isolation:isolate}
.vnl-area.e-con:last-child{border-bottom:1px solid var(--vnl-line-d)}
.vnl-area::before{content:"";position:absolute;inset:0 -24px;background:var(--vnl-bordeaux);transform:scaleY(0);transform-origin:bottom;transition:transform .6s var(--vnl-ease);z-index:-1}
.vnl-area-n{font:400 clamp(2.6rem,4vw,3.8rem)/1 var(--vnl-serif);color:var(--vnl-stone);display:block;transition:color .5s,transform .6s var(--vnl-ease)}
.vnl-area-t .elementor-heading-title{font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.1;transition:transform .6s var(--vnl-ease)}
.vnl-area-d{color:rgba(244,241,234,.7)!important;font-size:15px!important}
@media (hover:hover){
 .vnl-area:hover::before{transform:scaleY(1)}
 .vnl-area:hover .vnl-area-n{color:var(--vnl-ivory);transform:translateX(8px)}
 .vnl-area:hover .vnl-area-t .elementor-heading-title{transform:translateX(12px)}
}
.vnl-area.is-touched::before{transform:scaleY(1)}
.vnl-area.is-touched .vnl-area-n{color:var(--vnl-ivory)}

/* ============ METODO ============ */
.vnl-steps.e-con{margin-top:clamp(56px,8vw,104px)!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,44px)!important}
.vnl-step.e-con{display:flex;flex-direction:column;gap:14px!important;min-width:0}
.vnl-step-n{font:400 clamp(4.5rem,9vw,8.5rem)/.85 var(--vnl-serif);color:var(--vnl-bordeaux);display:block;letter-spacing:-.03em}
.vnl-step-bar{display:block;height:1px;background:var(--vnl-carbon);margin:18px 0 10px;transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--vnl-ease) .2s}
.vnl-step.is-in .vnl-step-bar{transform:scaleX(1)}
html:not(.vnl-js) .vnl-step-bar{transform:none}
.vnl-step-t .elementor-heading-title{font-size:1.9rem;line-height:1.1}
.vnl-step-d{font-size:15px!important}

/* ============ AVVOCATO ============ */
.vnl-avv-grid.e-con{grid-template-columns:5fr 6fr;align-items:center}
.vnl-name{font:500 clamp(1.8rem,2.6vw,2.4rem)/1.1 var(--vnl-serif);margin-top:8px!important}
.vnl-role{font:600 11px/1.6 var(--vnl-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--vnl-bordeaux);margin-top:10px!important}
.vnl-dl{margin:8px 0 0;display:grid;gap:0}
.vnl-dl div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;padding:16px 0;border-top:1px solid var(--vnl-line-l)}
.vnl-dl dt{font:600 11px/1.8 var(--vnl-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--vnl-stone)}
.vnl-dl dd{margin:0;font-size:15px;line-height:1.6;color:#3b3a38}

/* ============ CONTATTI ============ */
.vnl-contatti{background:radial-gradient(90% 70% at 90% 0%,rgba(84,31,43,.55),transparent 60%),var(--vnl-carbon)}
.vnl-contatti .vnl-grid2.e-con{grid-template-columns:1fr 1fr}
.vnl-info{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:24px}
.vnl-info p{font-family:var(--vnl-serif);font-size:1.25rem;line-height:1.35;word-break:break-word}
.vnl-form-col.e-con{background:rgba(244,241,234,.04);border:1px solid var(--vnl-line-d);padding:clamp(24px,4vw,48px)!important}
.vnl-form .elementor-field-group{margin-bottom:18px}
.vnl-form .elementor-field-textual,.vnl-form select.elementor-field{background:transparent!important;border:0!important;border-bottom:1px solid rgba(244,241,234,.28)!important;border-radius:0!important;color:var(--vnl-ivory)!important;font:400 16px/1.4 var(--vnl-sans)!important;padding:14px 0!important;box-shadow:none!important;transition:border-color .4s}
.vnl-form select.elementor-field option{color:#151515}
.vnl-form .elementor-select-wrapper::before{color:var(--vnl-stone)!important}
.vnl-form .elementor-field-textual::placeholder{color:rgba(244,241,234,.5)}
.vnl-form .elementor-field-textual:focus,.vnl-form select.elementor-field:focus{border-bottom-color:var(--vnl-ivory)!important;outline:0}
.vnl-form .elementor-field-type-acceptance label{font-size:13px;line-height:1.5;color:rgba(244,241,234,.75)}
.vnl-form .elementor-button{width:100%;background:var(--vnl-bordeaux)!important;color:var(--vnl-ivory)!important;border:1px solid var(--vnl-bordeaux)!important;border-radius:0!important;font:600 12px/1 var(--vnl-sans)!important;letter-spacing:.2em;text-transform:uppercase;padding:20px!important;transition:background .4s,border-color .4s}
.vnl-form .elementor-button:hover{background:transparent!important;border-color:var(--vnl-ivory)!important}
.vnl-form .elementor-message{color:var(--vnl-ivory);font-size:14px}

/* ============ FOOTER ============ */
.vnl-foot{background:var(--vnl-carbon);color:var(--vnl-ivory);padding-block:72px 32px!important;border-top:1px solid var(--vnl-line-d)}
.vnl-foot-grid.e-con{display:grid!important;grid-template-columns:1.2fr 1fr 1.3fr;gap:40px!important}
.vnl-foot-claim{font:600 11px/1 var(--vnl-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--vnl-stone);margin-top:16px!important}
.vnl-foot-nav{display:flex;flex-direction:column;gap:12px}
.vnl-foot-nav a,.vnl-foot-bottom a{color:rgba(244,241,234,.8);text-decoration:none;font-size:14px}
.vnl-foot-nav a:hover,.vnl-foot-bottom a:hover{color:var(--vnl-ivory);text-decoration:underline}
.vnl-foot-data p{font-size:14px;line-height:1.8;color:rgba(244,241,234,.75)}
.vnl-foot-small{margin-top:14px!important;font-size:12px!important;color:var(--vnl-stone)!important}
.vnl-foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:56px;padding-top:24px;border-top:1px solid var(--vnl-line-d);font-size:12px;color:var(--vnl-stone)}
.vnl-top{width:48px;height:48px;border:1px solid var(--vnl-line-d);display:grid;place-items:center;flex:none;transition:background .4s,border-color .4s}
.vnl-top svg{width:18px;height:18px;fill:none;stroke:var(--vnl-ivory);stroke-width:1.4;transition:transform .5s var(--vnl-ease)}
.vnl-top:hover{background:var(--vnl-bordeaux);border-color:var(--vnl-bordeaux)}
.vnl-top:hover svg{transform:translateY(-4px)}

/* ============ RIVELAZIONE ALLO SCROLL (solo con JS attivo) ============ */
.vnl-js .vnl-rv{opacity:0;transform:translateY(34px);transition:opacity 1s var(--vnl-ease),transform 1.2s var(--vnl-ease)}
.vnl-js .vnl-rv.is-in{opacity:1;transform:none}
.vnl-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.vnl-w>span{display:inline-block;transform:translateY(105%);transition:transform 1.1s var(--vnl-ease);transition-delay:calc(var(--i)*60ms)}
.vnl-split.is-in .vnl-w>span{transform:none}
.vnl-hero .vnl-w>span{transition-delay:calc(2.7s + var(--i)*70ms)}

/* ============ TABLET ============ */
@media (max-width:1024px){
 .vnl-nav{gap:22px}
 .vnl-grid2.e-con,.vnl-avv-grid.e-con,.vnl-contatti .vnl-grid2.e-con{grid-template-columns:1fr}
 .vnl-steps.e-con{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:56px!important}
 .vnl-area.e-con{grid-template-columns:90px minmax(0,1fr);gap:8px 24px!important}
 .vnl-area-d{grid-column:2}
 .vnl-area-n{grid-row:span 2}
 .vnl-photo-tall{max-width:520px}
 .vnl-foot-grid.e-con{grid-template-columns:1fr 1fr}
 .vnl-foot-data{grid-column:1/-1}
}
@media (max-width:880px){
 .vnl-nav{display:none}
 .vnl-burger{display:block}
}
/* ============ MOBILE ============ */
@media (max-width:767px){
 .vnl-hd{height:68px}
 .vnl-hd.is-scrolled{height:58px}
 .vnl-hero.e-con{padding-block:110px 100px!important}
 .vnl-logo{width:110px}
 .vnl-hero-cta.e-con{flex-direction:column;gap:22px!important}
 .vnl-hero-meta{text-align:center;border-left:0;padding-left:0}
 .vnl-pillars i:nth-child(1),.vnl-pillars i:nth-child(6){display:none}
 .vnl-sedi,.vnl-info{grid-template-columns:1fr}
 .vnl-steps.e-con{grid-template-columns:1fr;row-gap:44px!important}
 .vnl-step-n{font-size:5rem}
 .vnl-area.e-con{grid-template-columns:56px minmax(0,1fr);padding:26px 0!important}
 .vnl-area-n{font-size:2.2rem}
 .vnl-photo-wide .vnl-ph{aspect-ratio:4/3}
 .vnl-dl div{grid-template-columns:1fr;gap:4px}
 .vnl-foot-grid.e-con{grid-template-columns:1fr}
 .vnl-foot-bottom{flex-direction:column-reverse;align-items:flex-start}
 .vnl-scroll{bottom:18px}
}

/* ============ MOVIMENTO RIDOTTO ============ */
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .vnl-sec *,.vnl-sec *::before,.vnl-sec *::after,.vnl-mnav,.vnl-mnav a{animation:none!important;transition:none!important}
 .vnl-slab{opacity:0}
 .vnl-js .vnl-rv{opacity:1;transform:none}
 .vnl-w>span{transform:none}
 .vnl-step-bar{transform:none}
}


/* ============ CORREZIONI ============ */
.vnl-hero .elementor-widget-html:has(.vnl-scroll){position:static!important}
.vnl-hero .elementor-widget-html:has(.vnl-pillars){position:absolute!important;inset:0}
.admin-bar .vnl-hd-wrap.e-con{top:32px}
@media (max-width:782px){.admin-bar .vnl-hd-wrap.e-con{top:46px}}
.vnl-intro-done .vnl-hero .vnl-w>span{transition-delay:calc(var(--i)*60ms)}
@media (max-height:700px) and (max-width:767px){.vnl-scroll{display:none!important}}


/* ============ VIDEO APERTURA E RITRATTO ============ */
.vnl-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32;filter:grayscale(.35) blur(1.5px) contrast(1.05);transform:scale(1.06);animation:vnl-video-in 2.5s .2s ease-out both}
@keyframes vnl-video-in{from{opacity:0;transform:scale(1.14)}to{opacity:.32;transform:scale(1.06)}}
.vnl-hero-bg::after,.vnl-hero-bg .elementor-widget-container::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(21,21,21,.7) 0%,rgba(21,21,21,.35) 45%,rgba(21,21,21,.92) 100%);pointer-events:none}
.vnl-pillars{z-index:1}
.vnl-portrait{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;max-width:100%}
.vnl-js .vnl-photo-tall.vnl-rv{opacity:1;transform:none;overflow:hidden}
.vnl-js .vnl-photo-tall.vnl-rv .vnl-portrait{clip-path:inset(100% 0 0 0);transform:scale(1.12);transition:clip-path 1.4s var(--vnl-ease),transform 1.8s var(--vnl-ease)}
.vnl-js .vnl-photo-tall.vnl-rv.is-in .vnl-portrait{clip-path:inset(0 0 0 0);transform:none}
@media (max-width:767px){.vnl-hero-video{opacity:.26;filter:grayscale(.35)}}
@media (prefers-reduced-motion:reduce){.vnl-hero-video{display:none}.vnl-js .vnl-photo-tall.vnl-rv .vnl-portrait{clip-path:none;transform:none}}

.vnl-portrait{object-position:54% 30%}
@media (max-width:600px){.admin-bar .vnl-hd-wrap.e-con{top:0}}

/* ============ DEA BENDATA (sezione Studio) ============ */
/* il filtro porta a bianco lo sfondo a scacchi del video, la moltiplicazione lo fonde con l'avorio */
.vnl-dea{margin:40px 0 0;max-width:340px;mix-blend-mode:multiply;isolation:auto}
.vnl-dea-video{display:block;width:100%;height:auto;aspect-ratio:400/736;object-fit:cover;filter:grayscale(1) brightness(1.15) contrast(1.35);background:#fff}
@media (max-width:1024px){.vnl-dea{max-width:260px;margin:28px auto 0}}
@media (max-width:767px){.vnl-dea{max-width:200px}}
