:root{--black:#050505;--white:#f7f3ee;--soft:#d9c59f;--serif:'Libre Baskerville',serif;--display:'Italiana',serif;--sans:'Inter',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:var(--serif);overflow-x:hidden}.site-header{position:fixed;z-index:10;top:0;left:0;right:0;height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,0));color:white}.brand{text-decoration:none;color:white;display:flex;flex-direction:column;align-items:center;gap:2px}.mark{font-family:var(--display);font-size:32px;line-height:.8;border-top:2px solid #fff;letter-spacing:-8px}.brand small{font:10px var(--sans);background:rgba(0,0,0,.55);padding:4px 8px;border-radius:2px}nav{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:64px}nav a,.social a{color:white;text-decoration:none;font-size:15px;text-shadow:0 1px 6px #000}.social{display:flex;gap:42px;font:700 14px var(--sans)}.hero{height:100vh;min-height:720px;position:relative;display:grid;place-items:end start;overflow:hidden}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-fade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.1) 55%,#050505 100%)}.hero-copy{position:relative;padding:0 0 92px 7vw}.hero-copy p{font:600 14px var(--sans);letter-spacing:.25em;text-transform:uppercase}.hero-copy h1{font:86px var(--display);margin:0}.about{min-height:620px;display:grid;grid-template-columns:1.1fr .95fr;gap:8vw;padding:120px 7vw;background:linear-gradient(90deg,rgba(5,8,8,.92),rgba(5,5,5,.86)),url('../assets/about-preview.jpg') center/cover}.quote{align-self:center;font:42px/1.3 var(--display);letter-spacing:-.02em}.bio{font-size:21px;line-height:1.65;max-width:760px}.mosaic{display:grid;grid-template-columns:repeat(8,1fr);height:230px;overflow:hidden}.mosaic img{width:100%;height:100%;object-fit:cover;filter:saturate(.95)}.trusted{background:#000;padding-bottom:24px}.gradient-panel{min-height:620px;background:linear-gradient(110deg,#dfc854 0%,#cab498 55%,#cad7cc 100%);display:grid;place-items:center;padding:72px 6vw}.logos{width:100%;display:grid;grid-template-columns:repeat(5,1fr);gap:78px 82px;align-items:center;text-align:center;color:#111}.logos span{font:700 clamp(26px,3vw,58px) var(--sans);letter-spacing:.06em;filter:opacity(.82)}.logos span:nth-child(3n){font-family:var(--serif)}.logos span:nth-child(4n){font-weight:400}.services{position:relative;display:grid;grid-template-columns:repeat(3,minmax(280px,1fr));gap:26px;background:#000;padding:110px 54px 90px}.services article img{width:100%;height:360px;object-fit:cover}.services h2{font:46px var(--display);margin:30px 0 12px}.services p{font-size:17px;line-height:1.65}.arrow{position:absolute;top:33%;z-index:2;border:0;border-radius:50%;width:64px;height:64px;font-size:38px;background:rgba(255,255,255,.85);color:#111}.left{left:90px}.right{right:90px}.wide{height:270px}.featured{min-height:570px;background:linear-gradient(110deg,#ddc650 0%,#d2bda0 50%,#cfdbd0 100%);color:#070707;padding:100px 8vw}.featured h2{text-align:center;font:italic 44px var(--serif);margin:0 0 100px}.press{display:grid;grid-template-columns:repeat(4,1fr);gap:90px 100px;align-items:center;text-align:center}.press span{font:800 clamp(26px,3vw,50px) var(--sans)}.press span:nth-child(2),.press span:nth-child(3),.press span:nth-child(4){font-family:var(--serif);font-weight:700}.contact{text-align:center;padding:130px 20px}.contact h2{font:64px var(--display);margin:0 0 18px}.contact p{font-size:20px}.cta{display:inline-block;margin-top:34px;padding:16px 28px;border:1px solid #fff;color:#fff;text-decoration:none;border-radius:999px;font-family:var(--sans)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){nav{display:none}.hero{min-height:560px}.hero-copy h1{font-size:58px}.about{grid-template-columns:1fr;padding:90px 28px}.quote{font-size:34px}.bio{font-size:17px}.mosaic{grid-template-columns:repeat(2,1fr);height:auto}.mosaic img{height:210px}.logos,.press{grid-template-columns:repeat(2,1fr);gap:46px 22px}.services{grid-template-columns:1fr;padding:80px 24px}.arrow{display:none}.featured{padding:80px 26px}.contact h2{font-size:44px}}

/* Correzioni logo e menu */
section{scroll-margin-top:92px}
.site-header{z-index:50!important;min-height:72px!important;height:auto!important;display:grid!important;grid-template-columns:minmax(160px,1fr) auto minmax(120px,1fr)!important;align-items:center!important;gap:24px!important;padding:12px clamp(18px,3vw,44px)!important;background:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.28))!important;backdrop-filter:blur(10px)!important}
.brand{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;color:inherit!important;min-width:0!important}.mark{display:none!important}.logo{width:54px;height:42px;object-fit:contain;display:block;flex:0 0 auto}.logo-black{display:none}.brand small{font:600 11px var(--sans)!important;white-space:nowrap!important;background:rgba(0,0,0,.55)!important;color:#fff!important;padding:4px 8px!important;border-radius:2px!important}
nav{position:static!important;transform:none!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(22px,4vw,64px)!important;white-space:nowrap!important}nav a,.social a{color:inherit!important;text-decoration:none!important;text-shadow:0 1px 6px #000}.social{display:flex!important;justify-content:flex-end!important;gap:clamp(18px,3vw,42px)!important;white-space:nowrap!important}.site-header.light{background:rgba(255,255,255,.72)!important;color:#111!important}.site-header.light nav a,.site-header.light .social a{text-shadow:none!important}.site-header.light .logo-white{display:none!important}.site-header.light .logo-black{display:block!important}.site-header.light .brand small{background:rgba(255,255,255,.72)!important;color:#111!important}
@media(max-width:900px){.site-header{grid-template-columns:auto 1fr!important;min-height:64px!important;gap:14px!important}.logo{width:44px;height:34px}.brand small,.social{display:none!important}nav{display:flex!important;justify-content:flex-end!important;gap:14px!important;overflow-x:auto!important;padding-bottom:2px!important}nav a{font-size:12px!important}}

/* Revisione finale: header pulito, no testi sovrapposti, bio leggibile */
.site-header{grid-template-columns:90px 1fr 90px!important;padding:10px clamp(18px,3vw,42px)!important;min-height:68px!important}
.brand{justify-self:start!important;width:64px!important;height:48px!important;overflow:visible!important}.brand small{display:none!important}.logo{width:64px!important;height:48px!important;filter:drop-shadow(0 2px 7px rgba(0,0,0,.55))}.logo-black{filter:none!important}
nav{justify-self:center!important;gap:clamp(28px,5vw,82px)!important}.social{justify-self:end!important}.hero-copy{display:none!important}
.about{position:relative;min-height:620px;grid-template-columns:1.05fr 1fr;gap:7vw;padding:125px 7vw;background:#020202!important;overflow:hidden}.about:before{content:"";position:absolute;inset:-30px;background:radial-gradient(circle at 25% 45%,rgba(255,255,255,.08),transparent 28%),radial-gradient(circle at 80% 18%,rgba(255,255,255,.06),transparent 30%),linear-gradient(90deg,rgba(255,255,255,.025),transparent 55%);filter:blur(18px);pointer-events:none}.about:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:150px;background:linear-gradient(180deg,rgba(2,2,2,0),#000)}.about>*{position:relative;z-index:1}.quote{font-size:clamp(38px,3.4vw,62px);line-height:1.28;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.6)}.bio{font-size:clamp(20px,1.5vw,29px);line-height:1.58;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.62);font-weight:700}.bio p{margin:0 0 1.25em}.bio em{font-style:italic}.mosaic{background:#000}.trusted{padding-top:0;background:#000}.gradient-panel{min-height:640px}.brand-grid{grid-template-columns:repeat(5,minmax(140px,1fr))!important;gap:72px 78px!important}.brand-grid span{display:flex;min-height:80px;align-items:center;justify-content:center;flex-direction:column;color:#171717;line-height:.94;text-align:center;filter:none!important}.brand-grid small{display:block;font:700 .28em/1.05 var(--sans);letter-spacing:.08em;margin-top:.45em}.logo-casadei{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:.33em!important}.logo-gedi{font-family:var(--sans)!important;font-weight:900!important;letter-spacing:.01em!important}.logo-adp{font-family:var(--serif)!important;font-weight:700!important;font-size:clamp(26px,2.5vw,48px)!important}.logo-morellato{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:.08em!important}.logo-prosecco{font-family:var(--sans)!important;font-weight:800!important;font-size:clamp(22px,2vw,40px)!important}.logo-zoow{font-family:var(--display)!important;font-weight:900!important;letter-spacing:-.08em!important;font-style:italic!important}.logo-grana{font-family:var(--sans)!important;font-weight:900!important;border:6px solid #222;border-radius:16px;padding:12px 18px;font-size:clamp(23px,2.3vw,42px)!important;line-height:.82!important}.logo-sector{font-family:var(--sans)!important;font-weight:900!important;letter-spacing:.1em!important}.logo-domingo{font-family:var(--sans)!important;font-weight:900!important;letter-spacing:-.05em!important}.logo-pico{font-family:var(--sans)!important;font-weight:900!important;letter-spacing:.04em!important}.logo-neo{font-family:var(--sans)!important;font-weight:900!important;letter-spacing:.03em!important}.logo-olmetex{font-family:var(--serif)!important;font-weight:700!important;text-transform:none!important}.logo-gal{font-family:var(--sans)!important;font-weight:900!important;letter-spacing:-.05em!important}
@media(max-width:900px){.site-header{grid-template-columns:54px 1fr!important;min-height:62px!important}.brand,.logo{width:48px!important;height:38px!important}nav{gap:16px!important}.about{grid-template-columns:1fr;padding:100px 28px 90px}.bio{font-size:18px;font-weight:600}.brand-grid{grid-template-columns:repeat(2,1fr)!important;gap:42px 18px!important}.brand-grid span{min-height:72px}.gradient-panel{min-height:auto;padding:70px 7vw}}

/* Loghi originali brand inseriti e uniformati in grigio scuro */
.brand-grid .brand-logo{display:block;max-width:100%;width:min(250px,78%);height:92px;object-fit:contain;justify-self:center;align-self:center;opacity:.88;filter:none!important}.brand-logo-casadei{width:min(280px,88%);height:72px}.brand-logo-gedi{width:min(270px,84%);height:100px}.brand-logo-grana{width:min(150px,55%);height:140px}.brand-logo-prosecco{width:min(260px,86%);height:86px}.brand-grid span{color:#2b2b2b!important}.gradient-panel .logos{align-items:center!important}.gradient-panel{padding-top:82px!important;padding-bottom:82px!important}
@media(max-width:900px){.brand-grid .brand-logo{height:78px;width:min(210px,82%)}.brand-logo-grana{height:118px;width:min(125px,55%)}}

/* === Ultimo riallineamento premium loghi / homepage === */
.site-header .brand::after{content:none!important}.site-header .brand small{display:none!important}.site-header .brand{width:66px!important;height:50px!important}
.about{background:#020202!important;min-height:620px!important;isolation:isolate!important}.about .quote,.about .bio{z-index:2!important}.about .bio{max-width:760px!important}.about + .mosaic{margin-top:0!important}
.trusted{background:#000!important;padding:0!important}.gradient-panel{min-height:640px!important;background:linear-gradient(105deg,#dec553 0%,#cfb79a 55%,#cfdcd1 100%)!important;padding:86px 6.5vw!important;display:flex!important;align-items:center!important;justify-content:center!important}.brand-grid{display:grid!important;width:100%!important;max-width:1780px!important;grid-template-columns:repeat(5,1fr)!important;grid-template-rows:repeat(3,130px)!important;column-gap:70px!important;row-gap:34px!important;align-items:center!important;justify-items:center!important;text-align:center!important}.brand-grid .brand-logo{display:block!important;object-fit:contain!important;max-width:100%!important;opacity:.9!important;filter:grayscale(1) brightness(.34)!important;mix-blend-mode:multiply!important}.brand-logo-casadei{width:285px!important;height:82px!important;filter:grayscale(1) brightness(.18)!important}.brand-logo-gedi{width:300px!important;height:112px!important;filter:grayscale(1) brightness(.28)!important}.brand-logo-acqua{width:300px!important;height:126px!important;filter:grayscale(1) brightness(.24)!important}.brand-logo-morellato{width:300px!important;height:108px!important;filter:grayscale(1) brightness(.26)!important}.brand-logo-prosecco{width:270px!important;height:96px!important;filter:grayscale(1) brightness(.28)!important}.brand-logo-continental{width:235px!important;height:112px!important;filter:grayscale(1) brightness(.28)!important}.brand-logo-grana{width:160px!important;height:160px!important;filter:grayscale(1) brightness(.30)!important}.brand-logo-sector{width:310px!important;height:100px!important;filter:grayscale(1) brightness(.30)!important;opacity:.86!important}.brand-grid span{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;min-height:90px!important;color:#242424!important;opacity:.9!important;filter:none!important;mix-blend-mode:multiply!important;text-align:center!important}.logo-zoow{font:900 58px/1 var(--display)!important;letter-spacing:-.11em!important;font-style:italic!important;transform:rotate(-4deg)}.logo-filippo{font:400 24px/1.1 var(--serif)!important;letter-spacing:.13em!important;color:#555!important}.logo-domingo{font:900 54px/1 var(--sans)!important;letter-spacing:-.06em!important}.logo-neo{font:900 58px/.85 var(--sans)!important;letter-spacing:.02em!important}.logo-neo small{font-size:.28em!important;letter-spacing:.22em!important;margin-top:.26em!important}.logo-olmetex{font:800 44px/1 var(--sans)!important;text-transform:none!important}.logo-gal{font:900 50px/.85 var(--sans)!important;letter-spacing:-.04em!important}.logo-gal small{font-size:.34em!important;letter-spacing:.02em!important;margin-top:.18em!important}.logo-pico{font:900 58px/1 var(--sans)!important;letter-spacing:.02em!important}
@media(max-width:1100px){.brand-grid{grid-template-columns:repeat(3,1fr)!important;grid-template-rows:auto!important;gap:42px 34px!important}.gradient-panel{padding:70px 6vw!important}.brand-grid .brand-logo{width:220px!important;height:92px!important}.brand-logo-grana{width:130px!important;height:130px!important}.brand-logo-sector{width:245px!important}.logo-domingo,.logo-neo,.logo-pico,.logo-zoow{font-size:42px!important}.logo-gal{font-size:38px!important}}
@media(max-width:700px){.brand-grid{grid-template-columns:repeat(2,1fr)!important;gap:34px 18px!important}.brand-grid .brand-logo{width:160px!important;height:70px!important}.brand-logo-grana{width:100px!important;height:110px!important}.brand-logo-sector{width:175px!important}.logo-domingo,.logo-neo,.logo-pico,.logo-zoow{font-size:31px!important}.logo-olmetex{font-size:28px!important}.logo-gal{font-size:30px!important}.logo-filippo{font-size:15px!important}}

/* === REBUILD FINALE: usa tutti gli asset caricati, niente sezioni vuote === */
.site-header{height:70px!important;display:grid!important;grid-template-columns:80px 1fr 80px!important;align-items:center!important;padding:10px clamp(18px,4vw,54px)!important;background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,0))!important}.brand{width:64px!important;height:50px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important}.logo{width:64px!important;height:50px!important;object-fit:contain!important}.logo-black{display:none!important}nav{position:static!important;transform:none!important;display:flex!important;justify-content:center!important;gap:clamp(20px,4vw,62px)!important;white-space:nowrap!important}nav a{font:600 13px var(--sans)!important;letter-spacing:.02em!important}.social{justify-self:end!important}.hero-copy{display:none!important}.hero{min-height:720px!important}.about{background:#020202!important;grid-template-columns:1fr 1fr!important;align-items:center!important;min-height:620px!important}.bio{font-size:clamp(18px,1.35vw,24px)!important;line-height:1.62!important;font-weight:600!important;color:#fff!important}.quote{font-size:clamp(38px,4vw,64px)!important;color:#fff!important}.gradient-panel{min-height:660px!important;padding:82px 6vw!important;background:linear-gradient(110deg,#dfc854 0%,#cab498 56%,#cad7cc 100%)!important}.brand-grid{width:100%!important;max-width:1720px!important;display:grid!important;grid-template-columns:repeat(5,1fr)!important;grid-auto-rows:128px!important;gap:36px 64px!important;align-items:center!important;justify-items:center!important}.brand-slot{width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center}.brand-slot img{display:block;object-fit:contain;max-width:82%;max-height:78%;filter:grayscale(1) brightness(.28) contrast(1.18)!important;opacity:.9;mix-blend-mode:multiply}.brand-slot.acqua img{max-width:92%;max-height:94%;filter:grayscale(1) brightness(.22) contrast(1.16)!important}.brand-slot.gedi img{max-width:88%;max-height:82%;filter:grayscale(1) brightness(.30) contrast(1.16)!important}.brand-slot.casadei img{max-width:88%;max-height:64%;filter:grayscale(1) brightness(.18) contrast(1.22)!important}.brand-slot.morellato img{max-width:96%;max-height:76%;filter:grayscale(1) brightness(.24) contrast(1.18)!important;transform:scale(1.28)}.brand-slot.prosecco img{max-width:90%;max-height:78%;filter:grayscale(1) brightness(.28) contrast(1.18)!important}.brand-slot.continental img{max-width:82%;max-height:74%;filter:grayscale(1) brightness(.28) contrast(1.2)!important}.brand-slot.grana img{max-width:76%;max-height:105%;filter:grayscale(1) brightness(.48) contrast(1.12)!important}.brand-slot.sector img{max-width:92%;max-height:70%;filter:grayscale(1) brightness(.30) contrast(1.18)!important}.text-brand{color:#252525!important;opacity:.9;mix-blend-mode:multiply;line-height:.9}.text-brand small{display:block;font-size:.28em;letter-spacing:.16em;margin-top:.3em}.zoow{font:900 56px var(--display)!important;letter-spacing:-.1em;transform:rotate(-4deg)}.filippo{font:400 23px var(--serif)!important;letter-spacing:.12em;color:#4b4b4b!important}.domingo{font:900 52px var(--sans)!important;letter-spacing:-.07em}.neo{font:900 54px var(--sans)!important}.olmetex{font:800 44px var(--sans)!important;text-transform:none}.gal{font:900 48px var(--sans)!important;letter-spacing:-.04em}.pico{font:900 56px var(--sans)!important}.services{grid-template-columns:repeat(3,minmax(260px,1fr))!important}.services .arrow{display:none!important}.visual-gallery{background:#050505;padding:100px 6vw}.gallery-title{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:38px}.gallery-title p{font:700 12px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#d7c18d}.gallery-title h2{max-width:680px;text-align:right;font:clamp(36px,5vw,74px)/.95 var(--display);margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery-grid img{width:100%;height:360px;object-fit:cover;border-radius:18px;filter:brightness(.86) saturate(.9)}
@media(max-width:1100px){.brand-grid{grid-template-columns:repeat(3,1fr)!important;grid-auto-rows:116px!important;gap:34px!important}.about{grid-template-columns:1fr!important}.gallery-grid{grid-template-columns:repeat(2,1fr)}.services{grid-template-columns:1fr!important}}
@media(max-width:760px){.site-header{grid-template-columns:58px 1fr!important;height:auto!important}.social{display:none!important}nav{justify-content:flex-end!important;overflow-x:auto!important;gap:16px!important}nav a{font-size:12px!important}.brand-grid{grid-template-columns:repeat(2,1fr)!important;grid-auto-rows:100px!important;gap:24px 16px!important}.gallery-grid{grid-template-columns:1fr}.gallery-title{display:block}.gallery-title h2{text-align:left;margin-top:14px}.visual-gallery{padding:70px 24px}}


/* === FIX 28/04: font unico, social icons, loghi chirurgici, rimozione gallery === */
:root{--main-font:"Cormorant Garamond", Georgia, "Times New Roman", serif!important;--display:"Cormorant Garamond", Georgia, serif!important;--serif:"Cormorant Garamond", Georgia, serif!important;--sans:"Cormorant Garamond", Georgia, serif!important}
html,body,button,input,textarea,a,p,span,h1,h2,h3,h4,h5,h6,nav,.bio,.quote,.services,.featured,.contact,.text-brand{font-family:var(--main-font)!important}
.site-header{grid-template-columns:80px 1fr 104px!important;z-index:100!important;pointer-events:auto!important}
.site-header nav{gap:clamp(38px,7vw,112px)!important;align-items:center!important;justify-content:center!important}
.site-header nav a{font-family:var(--main-font)!important;font-size:clamp(24px,2.15vw,36px)!important;font-weight:500!important;letter-spacing:.01em!important;text-transform:none!important;color:#fff!important;text-shadow:0 1px 12px rgba(0,0,0,.55)!important;line-height:1!important}
.site-header nav a:hover{opacity:.72!important}
.social{display:flex!important;gap:18px!important;align-items:center!important;justify-content:flex-end!important;z-index:120!important}
.icon-link{width:24px!important;height:24px!important;display:inline-flex!important;color:#fff!important;opacity:.92!important;text-decoration:none!important;align-items:center!important;justify-content:center!important}
.icon-link svg{width:100%!important;height:100%!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important;display:block!important}
.social-top{justify-self:end!important}
.hero{position:relative!important}
.social-hero{position:absolute!important;left:clamp(24px,4vw,70px)!important;bottom:clamp(24px,5vw,70px)!important;justify-content:flex-start!important}
.social-hero .icon-link{width:27px!important;height:27px!important}
.brand-slot.casadei img{content:url('../assets/brand-logos/casadei-clean.png')!important;max-width:92%!important;max-height:70%!important;filter:grayscale(1) brightness(.20) contrast(1.25)!important;mix-blend-mode:multiply!important;background:transparent!important}
.brand-slot.morellato img{max-width:118%!important;max-height:102%!important;transform:scale(1.72)!important;filter:grayscale(1) brightness(.24) contrast(1.2)!important;mix-blend-mode:multiply!important}
.brand-slot.grana img{filter:grayscale(1) brightness(.48) contrast(1.12)!important}
.visual-gallery,.gallery-title,.gallery-grid{display:none!important;height:0!important;overflow:hidden!important;padding:0!important;margin:0!important}
@media(max-width:900px){.site-header{grid-template-columns:64px 1fr 88px!important}.site-header nav{gap:20px!important;overflow-x:auto!important;justify-content:flex-start!important}.site-header nav a{font-size:20px!important}.social-top .icon-link{width:21px!important;height:21px!important}.brand-slot.morellato img{transform:scale(1.45)!important}}
@media(max-width:620px){.site-header{grid-template-columns:58px 1fr!important}.social-top{display:none!important}.site-header nav a{font-size:18px!important}.social-hero{bottom:22px!important;left:22px!important}}


/* === FIX MENU + SOCIAL FINALE === */
.site-header{
  height:58px!important;
  min-height:58px!important;
  grid-template-columns:74px 1fr 92px!important;
  padding:8px clamp(18px,3vw,48px)!important;
  background:linear-gradient(180deg,rgba(0,0,0,.30),rgba(0,0,0,.06))!important;
  backdrop-filter:blur(4px)!important;
}
.brand{width:52px!important;height:42px!important;opacity:.62!important;filter:none!important}
.logo{width:52px!important;height:42px!important;object-fit:contain!important;filter:drop-shadow(0 1px 5px rgba(0,0,0,.45))!important}
.site-header nav{gap:clamp(34px,5.2vw,94px)!important;justify-content:center!important;align-items:center!important}
.site-header nav a{
  font-family:var(--main-font)!important;
  font-size:clamp(14px,1.05vw,18px)!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
  color:rgba(255,255,255,.68)!important;
  opacity:.78!important;
  text-shadow:0 1px 8px rgba(0,0,0,.38)!important;
  line-height:1!important;
}
.site-header nav a:hover{color:rgba(255,255,255,.95)!important;opacity:1!important}
.social-top{display:flex!important;gap:34px!important;align-items:center!important;justify-content:flex-end!important;opacity:.82!important}
.icon-link{width:18px!important;height:18px!important;color:rgba(255,255,255,.76)!important;opacity:1!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.icon-link svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.icon-link.linkedin{font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;font-weight:700!important;letter-spacing:-.02em!important;line-height:1!important;text-transform:none!important}
.icon-link:hover{color:#fff!important;opacity:1!important}
.social-hero{display:none!important}
.homepage-footer{background:#000;padding:32px clamp(22px,4vw,70px) 42px;display:flex;justify-content:flex-start;align-items:center}
.footer-social{display:flex;gap:22px;align-items:center;justify-content:flex-start}
.footer-social .icon-link{width:23px!important;height:23px!important;color:rgba(255,255,255,.72)!important}
.footer-social .icon-link svg{width:23px!important;height:23px!important}
.footer-social .icon-link.linkedin{font-size:18px!important}
@media(max-width:900px){
  .site-header{grid-template-columns:56px 1fr 74px!important;height:54px!important;min-height:54px!important}
  .brand,.logo{width:44px!important;height:36px!important}
  .site-header nav{gap:18px!important;justify-content:center!important;overflow-x:auto!important}
  .site-header nav a{font-size:13px!important;opacity:.76!important}
  .social-top{gap:16px!important}
  .icon-link{width:16px!important;height:16px!important}
  .icon-link svg{width:16px!important;height:16px!important}
  .icon-link.linkedin{font-size:13px!important}
}
@media(max-width:620px){
  .site-header{grid-template-columns:48px 1fr!important}
  .social-top{display:none!important}
  .site-header nav{justify-content:flex-end!important;gap:14px!important}
  .site-header nav a{font-size:12px!important}
}


/* Hero video + audio toggle */
.hero.video-hero{
  background:#000;
}
.hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.hero.video-hero > img{
  display:none;
}
.sound-toggle{
  position:absolute;
  left:34px;
  bottom:34px;
  z-index:8;
  width:48px;
  height:48px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.45);
  background:rgba(0,0,0,.28);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:opacity .25s ease, transform .25s ease, background .25s ease;
}
.sound-toggle:hover{
  transform:scale(1.04);
  background:rgba(0,0,0,.45);
}
.sound-toggle svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sound-toggle .sound-off{display:none}
.sound-toggle.is-muted .sound-on{display:none}
.sound-toggle.is-muted .sound-off{display:block}
@media(max-width:700px){
  .sound-toggle{
    left:18px;
    bottom:22px;
    width:44px;
    height:44px;
  }
}


/* Brightness correction for video homepage */
.site-header{
  height:54px !important;
  background:rgba(255,255,255,.18) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  box-shadow:none !important;
}

.site-header .brand img,
.brand img,
.logo.logo-white{
  opacity:1 !important;
  filter:brightness(2.4) contrast(.92) drop-shadow(0 1px 5px rgba(0,0,0,.12)) !important;
}

.site-header nav a{
  font-size:13px !important;
  opacity:.88 !important;
  color:rgba(255,255,255,.92) !important;
  text-shadow:0 1px 4px rgba(0,0,0,.22) !important;
}

.social-top .icon-link,
.site-header .social a{
  opacity:.92 !important;
  color:rgba(255,255,255,.94) !important;
  text-shadow:0 1px 4px rgba(0,0,0,.22) !important;
}

.hero-video{
  filter:brightness(1.22) contrast(1.03) saturate(1.08) !important;
}

.hero-fade{
  background:
    linear-gradient(180deg,
      rgba(255,255,255,.05) 0%,
      rgba(255,255,255,.025) 28%,
      rgba(0,0,0,.03) 62%,
      rgba(0,0,0,.10) 100%) !important;
}

.hero.video-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  background:rgba(255,255,255,.035);
  mix-blend-mode:screen;
}

.sound-toggle{
  background:rgba(255,255,255,.22) !important;
  border-color:rgba(255,255,255,.7) !important;
  color:#fff !important;
  box-shadow:0 4px 18px rgba(0,0,0,.12) !important;
}

.sound-toggle:hover{
  background:rgba(255,255,255,.32) !important;
}


/* === FIX DEFINITIVO HERO VIDEO / MENU === */

/* Fullscreen video reale, senza bordi e senza fondo nero */
html, body{
  margin:0 !important;
  padding:0 !important;
  background:#000 !important;
}

.hero.video-hero{
  position:relative !important;
  width:100vw !important;
  height:100vh !important;
  min-height:100vh !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#000 !important;
}

.hero-video{
  position:absolute !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  object-fit:cover !important;
  display:block !important;
  z-index:0 !important;
  opacity:1 !important;
  filter:brightness(1.23) contrast(1.03) saturate(1.06) !important;
}

/* niente overlay scuri che possono coprire il video */
.hero-fade{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.08) 0%,
    rgba(255,255,255,.02) 18%,
    rgba(0,0,0,0) 55%,
    rgba(0,0,0,.04) 100%
  ) !important;
  pointer-events:none !important;
}

.hero.video-hero::after{
  display:none !important;
  content:none !important;
}

/* Barra come reference: trasparente, leggera, senza blocchi scuri */
.site-header{
  height:54px !important;
  padding:0 34px !important;
  background:rgba(255,255,255,.12) !important;
  backdrop-filter:blur(7px) !important;
  -webkit-backdrop-filter:blur(7px) !important;
  box-shadow:none !important;
  border:0 !important;
  transition:transform .45s cubic-bezier(.22,1,.36,1), opacity .45s cubic-bezier(.22,1,.36,1), background .3s ease !important;
}

/* non usare pseudo-elementi sopra la barra */
.site-header::before,
.site-header::after{
  display:none !important;
  content:none !important;
}

/* MENU: dimensione perfetta come richiesta, non cambiare */
.site-header nav a{
  font-size:16px !important;
  opacity:.78 !important;
  color:rgba(255,255,255,.95) !important;
  text-shadow:0 1px 4px rgba(0,0,0,.28) !important;
  letter-spacing:.02em !important;
}

/* Logo più grande e MOLTO più chiaro */
.site-header .brand{
  height:54px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.site-header .brand img,
.site-header .logo,
.logo.logo-white{
  height:58px !important;
  width:auto !important;
  opacity:1 !important;
  filter:brightness(4.2) contrast(.82) drop-shadow(0 1px 4px rgba(0,0,0,.18)) !important;
}

/* forza logo bianco visibile e nasconde quello nero in hero */
.logo-black{
  display:none !important;
}
.logo-white{
  display:block !important;
}

/* Social top coerenti */
.site-header .social a,
.site-header .social svg,
.social-top .icon-link{
  color:rgba(255,255,255,.95) !important;
  opacity:.9 !important;
}

/* Pulsante audio sopra video */
.sound-toggle{
  z-index:6 !important;
}

/* Effetto Apple: scompare/ricompare, senza rompere il video */
.site-header.header-hidden{
  transform:translateY(-110%) !important;
  opacity:0 !important;
}


/* === REFERENCE MATCH: video edge-to-edge, no black frame === */
html,
body,
main,
#home{
  width:100% !important;
  min-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden !important;
  background:#000 !important;
}

.hero.video-hero{
  position:relative !important;
  width:100% !important;
  height:100vh !important;
  min-height:100vh !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
  overflow:hidden !important;
  display:block !important;
  background:#000 !important;
}

/* Slight overscale removes any encoded black edge/crop from the video itself */
.hero-video{
  position:absolute !important;
  top:50% !important;
  left:50% !important;
  width:100vw !important;
  height:100vh !important;
  min-width:100vw !important;
  min-height:100vh !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:translate(-50%,-50%) scale(1.045) !important;
  transform-origin:center center !important;
  display:block !important;
  border:0 !important;
  outline:0 !important;
  z-index:0 !important;
  opacity:1 !important;
  filter:brightness(1.31) contrast(1.02) saturate(1.06) !important;
}

/* Header fully transparent like reference, only a very light glass tint */
.site-header{
  height:54px !important;
  padding:0 34px !important;
  background:rgba(255,255,255,.075) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
  box-shadow:none !important;
  border:none !important;
}

/* Remove any dark layer from header/hero */
.site-header::before,
.site-header::after,
.hero.video-hero::before,
.hero.video-hero::after{
  display:none !important;
  content:none !important;
}

.hero-fade{
  background:rgba(255,255,255,.018) !important;
  z-index:1 !important;
  pointer-events:none !important;
}

/* Menu: keep exactly the good size */
.site-header nav a{
  font-size:16px !important;
  opacity:.78 !important;
  color:rgba(255,255,255,.94) !important;
  text-shadow:0 1px 3px rgba(0,0,0,.18) !important;
}

/* Logo: a little smaller, brighter, cleaner, semi-transparent, no heavy shadow */
.site-header .brand img,
.site-header .logo,
.logo.logo-white{
  height:50px !important;
  width:auto !important;
  opacity:.82 !important;
  filter:brightness(5.4) contrast(.68) saturate(.75) !important;
  box-shadow:none !important;
}

.logo-black{
  display:none !important;
}

.logo-white{
  display:block !important;
}

/* Hide browser image title/tooltips generated by old attrs visually by removing effects */
.brand,
.brand *{
  text-shadow:none !important;
}

/* Sound button remains over the video */
.sound-toggle{
  z-index:8 !important;
}


/* FINAL PERFECT FULLSCREEN FIX */
.hero-video{
  transform:translate(-50%,-50%) scale(1.12) !important; /* bigger to kill any edge */
  filter:brightness(1.42) contrast(1.02) saturate(1.08) !important;
}

/* ensure no gaps anywhere */
.hero.video-hero,
.hero.video-hero .hero-video{
  width:100vw !important;
  height:100vh !important;
  min-width:100vw !important;
  min-height:100vh !important;
}

/* remove ANY residual spacing */
body, html{
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

/* slightly lighter overall feel */
.hero-fade{
  background:rgba(255,255,255,.025) !important;
}


/* === ULTRA PREMIUM APPLE CONTINUATION === */
/* Keeps the first screen exactly as approved, but restores scroll for the rest of the site */
html{
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  background:#000 !important;
}

body{
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  background:#000 !important;
}

/* First hero remains exactly full-page / overscaled */
.hero.video-hero{
  height:100svh !important;
  min-height:100svh !important;
}

/* Premium transition after the video */
.about{
  position:relative !important;
  min-height:100vh !important;
  padding:clamp(96px,10vw,170px) clamp(32px,7vw,120px) !important;
  background:
    radial-gradient(circle at 20% 10%, rgba(255,255,255,.08), transparent 30%),
    linear-gradient(120deg, rgba(0,0,0,.92), rgba(9,9,9,.86)),
    url("../assets/about-preview.jpg") center/cover !important;
  overflow:hidden !important;
}

.about::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:rgba(0,0,0,.36) !important;
  backdrop-filter:blur(12px) saturate(1.08) !important;
  -webkit-backdrop-filter:blur(12px) saturate(1.08) !important;
  pointer-events:none !important;
}

.about > *{
  position:relative !important;
  z-index:1 !important;
}

.quote{
  font-size:clamp(42px,5.6vw,92px) !important;
  line-height:.98 !important;
  font-weight:400 !important;
  color:rgba(255,255,255,.92) !important;
  letter-spacing:-.055em !important;
}

.bio{
  max-width:720px !important;
  font-size:clamp(18px,1.45vw,25px) !important;
  line-height:1.55 !important;
  color:rgba(255,255,255,.78) !important;
}

.bio p{
  margin:0 0 28px !important;
}

/* Mosaic strip: exact two-row reference, no empty tiles */
.mosaic{
  height:auto !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:repeat(12, minmax(0,1fr)) !important;
  grid-auto-rows:clamp(156px,11.25vw,297px) !important;
  gap:0 !important;
  background:#000 !important;
  overflow:hidden !important;
  line-height:0 !important;
}

.mosaic img{
  height:100% !important;
  width:100% !important;
  object-fit:cover !important;
  display:block !important;
  filter:none !important;
  transition:transform .9s cubic-bezier(.22,1,.36,1), filter .9s cubic-bezier(.22,1,.36,1) !important;
}

.mosaic-wide{
  grid-column:span 2 !important;
}

.mosaic-narrow{
  grid-column:span 1 !important;
}

.mosaic img:hover{
  transform:scale(1.025) !important;
  filter:brightness(1.03) !important;
}

/* Trusted section like Apple-quality editorial block */
.trusted{
  background:#000 !important;
  padding:0 !important;
}

.gradient-panel{
  min-height:720px !important;
  padding:clamp(70px,8vw,130px) clamp(30px,6vw,110px) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(255,226,93,.5), transparent 32%),
    linear-gradient(105deg,#d7bf62 0%,#cdb79e 56%,#cad8cf 100%) !important;
}

.logos{
  width:100% !important;
  max-width:1520px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(5,1fr) !important;
  gap:78px 90px !important;
  align-items:center !important;
  justify-items:center !important;
}

.logos img,
.logo-row img,
.brand-grid img{
  max-width:210px !important;
  max-height:88px !important;
  object-fit:contain !important;
  filter:grayscale(1) brightness(.34) contrast(1.14) !important;
  opacity:.84 !important;
}

.logos img[src*="morellato"],
.logo-row img[src*="morellato"],
.brand-grid img[src*="morellato"]{
  max-width:300px !important;
  max-height:116px !important;
}

.logos img[src*="grana"],
.logo-row img[src*="grana"],
.brand-grid img[src*="grana"]{
  filter:grayscale(1) brightness(.52) contrast(1.13) !important;
}

/* Services section: premium cards */
.services{
  background:#000 !important;
  padding:clamp(90px,9vw,150px) clamp(26px,5vw,80px) !important;
  gap:34px !important;
}

.services article{
  border-radius:28px !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.035) !important;
  box-shadow:0 24px 80px rgba(0,0,0,.35) !important;
  transition:transform .8s cubic-bezier(.22,1,.36,1), background .8s cubic-bezier(.22,1,.36,1) !important;
}

.services article:hover{
  transform:translateY(-10px) !important;
  background:rgba(255,255,255,.06) !important;
}

.services article img{
  height:420px !important;
  filter:saturate(.95) brightness(.86) contrast(1.04) !important;
}

.services h2{
  padding:0 24px !important;
  font-size:clamp(42px,3.6vw,68px) !important;
  line-height:.94 !important;
}

.services p{
  padding:0 24px 30px !important;
  color:rgba(255,255,255,.72) !important;
  font-size:18px !important;
}

/* Featured / footer / contact premium if present */
.featured,
.contact,
footer{
  background:#050505 !important;
}

.contact{
  min-height:80vh !important;
  display:grid !important;
  place-items:center !important;
  padding:120px 7vw !important;
}

/* Reveal Apple style */
.reveal{
  opacity:0 !important;
  transform:translateY(42px) scale(.985) !important;
  transition:
    opacity 1.05s cubic-bezier(.22,1,.36,1),
    transform 1.05s cubic-bezier(.22,1,.36,1) !important;
}

.reveal.visible,
.reveal.is-visible{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
}

/* Footer social: bottom left of homepage area, visible but refined */
.social-bottom,
.footer-social{
  position:fixed !important;
  left:34px !important;
  bottom:28px !important;
  z-index:9 !important;
  display:flex !important;
  gap:28px !important;
  opacity:.8 !important;
  transition:opacity .35s ease, transform .35s ease !important;
}

.social-bottom a,
.footer-social a{
  color:rgba(255,255,255,.92) !important;
  text-decoration:none !important;
}

/* Responsive premium */
@media(max-width:900px){
  .about{
    grid-template-columns:1fr !important;
    gap:50px !important;
  }

  .mosaic{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:170px !important;
  }

  .mosaic-wide,
  .mosaic-narrow{
    grid-column:span 1 !important;
  }

  .logos{
    grid-template-columns:repeat(2,1fr) !important;
    gap:48px 38px !important;
  }

  .services{
    grid-template-columns:1fr !important;
  }
}

/* === FINAL APPLE PRO POLISH 28/04 === */
:root{
  --ink:#161616;
  --logo-ink:#2b2b2d;
  --glass:rgba(255,255,255,.10);
  --ease-pro:cubic-bezier(.22,1,.36,1);
}

.site-header{
  transition:transform .55s var(--ease-pro), opacity .45s ease, background .45s ease, backdrop-filter .45s ease !important;
}

.site-header:hover{
  background:rgba(255,255,255,.14) !important;
  backdrop-filter:blur(12px) saturate(1.25) !important;
  -webkit-backdrop-filter:blur(12px) saturate(1.25) !important;
}

.site-header nav a,
.icon-link,
.brand{
  transition:transform .38s var(--ease-pro), opacity .38s ease, color .38s ease, filter .38s ease !important;
}

.site-header nav a:hover,
.icon-link:hover{
  transform:translateY(-1px) scale(1.045) !important;
}

.brand:hover{
  opacity:1 !important;
  transform:scale(1.07) !important;
}

.hero.video-hero{
  isolation:isolate !important;
}

.hero.video-hero::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  pointer-events:none !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,0) 38%, rgba(0,0,0,.22) 100%),
    radial-gradient(circle at 50% 18%, rgba(255,255,255,.09), transparent 34%) !important;
}

.about{
  background:
    radial-gradient(circle at 24% 18%, rgba(255,255,255,.10), transparent 30%),
    linear-gradient(135deg, #060606 0%, #111 48%, #050505 100%) !important;
}

.gradient-panel{
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 16% 8%, rgba(255,255,255,.42), transparent 26%),
    radial-gradient(circle at 88% 20%, rgba(255,255,255,.24), transparent 30%),
    linear-gradient(120deg,#d8c15c 0%,#cbb69d 50%,#cbd8cf 100%) !important;
}

.gradient-panel::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,0) 38%, rgba(0,0,0,.05)) !important;
}

.brand-grid{
  position:relative !important;
  z-index:1 !important;
}

.brand-slot{
  min-height:124px !important;
  border-radius:8px !important;
  transform:translateZ(0) !important;
  transition:transform .7s var(--ease-pro), filter .7s var(--ease-pro), opacity .7s ease !important;
  will-change:transform !important;
}

.brand-slot img,
.brand-slot.text-brand{
  transition:transform .7s var(--ease-pro), filter .7s var(--ease-pro), opacity .7s ease !important;
  will-change:transform !important;
}

.brand-slot img{
  filter:grayscale(1) brightness(.32) contrast(1.2) !important;
  opacity:.86 !important;
}

.brand-slot.custom-logo img{
  max-width:88% !important;
  max-height:88% !important;
  object-fit:contain !important;
  filter:grayscale(1) brightness(.24) contrast(1.28) !important;
  opacity:.88 !important;
  mix-blend-mode:multiply !important;
}

.brand-slot.zoow img{
  max-width:82% !important;
  max-height:96% !important;
  filter:grayscale(1) brightness(.23) contrast(1.35) !important;
}

.brand-slot.neo img{
  max-width:112% !important;
  max-height:104% !important;
  filter:grayscale(1) brightness(.82) contrast(1.08) !important;
  transform:scale(1.14) !important;
}

.brand-slot.pico img{
  max-width:92% !important;
  max-height:62% !important;
  filter:grayscale(1) brightness(.29) contrast(1.18) !important;
}

.brand-slot:hover{
  transform:scale(1.115) translateY(-5px) !important;
  z-index:3 !important;
}

.brand-slot:hover img,
.brand-slot.text-brand:hover{
  opacity:1 !important;
  filter:grayscale(1) brightness(.20) contrast(1.34) drop-shadow(0 18px 34px rgba(0,0,0,.18)) !important;
}

.brand-slot.text-brand:hover{
  color:var(--ink) !important;
}

.services article{
  border:1px solid rgba(255,255,255,.08) !important;
  backdrop-filter:blur(18px) saturate(1.1) !important;
  -webkit-backdrop-filter:blur(18px) saturate(1.1) !important;
}

.services article img{
  transition:transform 1s var(--ease-pro), filter 1s var(--ease-pro) !important;
}

.services article:hover img{
  transform:scale(1.045) !important;
  filter:saturate(1.02) brightness(.96) contrast(1.04) !important;
}

.cta{
  transition:transform .45s var(--ease-pro), background .45s ease, color .45s ease, box-shadow .45s ease !important;
}

.cta:hover{
  transform:translateY(-2px) scale(1.025) !important;
  background:#fff !important;
  color:#050505 !important;
  box-shadow:0 18px 48px rgba(255,255,255,.16) !important;
}

@media(max-width:1100px){
  .logos,
  .brand-grid{
    grid-template-columns:repeat(3,1fr) !important;
    gap:48px 46px !important;
  }
}

@media(max-width:700px){
  .gradient-panel{
    padding:72px 22px !important;
  }

  .logos,
  .brand-grid{
    grid-template-columns:repeat(2,1fr) !important;
    gap:28px 18px !important;
  }

  .brand-slot{
    min-height:104px !important;
  }

  .brand-slot:hover{
    transform:scale(1.06) translateY(-2px) !important;
  }

  .brand-slot.zoow img{
    max-width:92% !important;
  }

  .brand-slot.neo img{
    max-width:108% !important;
    transform:scale(1.08) !important;
  }
}

/* === FEATURED IN FINAL BLOCK === */
.services{
  padding-bottom:clamp(80px,8vw,122px) !important;
}

.featured{
  position:relative !important;
  min-height:clamp(560px,62vw,760px) !important;
  display:grid !important;
  align-content:center !important;
  color:#050505 !important;
  padding:clamp(72px,8vw,116px) clamp(32px,8vw,160px) clamp(86px,8vw,132px) !important;
  background:
    radial-gradient(circle at 13% 12%, rgba(255,232,88,.52), transparent 28%),
    radial-gradient(circle at 88% 4%, rgba(235,243,239,.62), transparent 34%),
    linear-gradient(105deg, #d9c75d 0%, #cbb79f 48%, #cbd8cf 100%) !important;
  overflow:hidden !important;
  isolation:isolate !important;
}

.featured::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.10), rgba(255,255,255,0) 48%, rgba(255,255,255,.18)),
    radial-gradient(circle at 52% 46%, rgba(255,255,255,.18), transparent 42%) !important;
}

.featured > *{
  position:relative !important;
  z-index:1 !important;
}

.featured h2{
  margin:0 0 clamp(78px,8vw,122px) !important;
  text-align:center !important;
  color:rgba(0,0,0,.92) !important;
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-size:clamp(38px,3.2vw,58px) !important;
  font-style:italic !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:-.025em !important;
}

.press{
  width:100% !important;
  max-width:1680px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(170px,1fr)) !important;
  align-items:center !important;
  justify-items:center !important;
  gap:clamp(76px,7vw,118px) clamp(64px,7vw,138px) !important;
  text-align:center !important;
}

.press-logo{
  display:flex !important;
  min-width:0 !important;
  min-height:74px !important;
  align-items:center !important;
  justify-content:center !important;
  color:#070707 !important;
  opacity:.9 !important;
  filter:blur(.15px) contrast(1.03) !important;
  transform:translateZ(0) !important;
  transform-origin:center !important;
  transition:transform .65s var(--ease-pro), opacity .45s ease, filter .65s var(--ease-pro) !important;
  will-change:transform !important;
}

.press-logo:hover{
  opacity:1 !important;
  transform:translateY(-5px) scale(1.08) !important;
  filter:blur(0) contrast(1.16) drop-shadow(0 20px 38px rgba(0,0,0,.14)) !important;
}

.press-logo.hypebeast{
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:clamp(32px,3.2vw,62px) !important;
  font-weight:900 !important;
  letter-spacing:-.055em !important;
}

.press-logo.vogue{
  font-family:Didot, "Bodoni 72", "Times New Roman", serif !important;
  font-size:clamp(46px,4.6vw,86px) !important;
  font-weight:400 !important;
  letter-spacing:-.08em !important;
}

.press-logo.repubblica{
  font-family:Georgia, "Times New Roman", serif !important;
  font-size:clamp(34px,3.55vw,68px) !important;
  font-weight:800 !important;
  letter-spacing:-.075em !important;
  white-space:nowrap !important;
}

.press-logo.gentleman{
  font-family:Didot, "Bodoni 72", Georgia, serif !important;
  font-size:clamp(36px,3.9vw,74px) !important;
  font-weight:400 !important;
  letter-spacing:-.105em !important;
}

.press-logo.gentleman::first-letter{
  font-size:1.35em !important;
}

.press-logo.sneakerheadz{
  max-width:330px !important;
  font-family:"Arial Black", Impact, Arial, sans-serif !important;
  font-size:clamp(24px,2vw,38px) !important;
  font-weight:900 !important;
  line-height:.78 !important;
  letter-spacing:-.045em !important;
  text-transform:uppercase !important;
}

.press-logo.coingape{
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:clamp(30px,2.9vw,56px) !important;
  font-weight:800 !important;
  letter-spacing:-.07em !important;
}

.press-logo.wwd{
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:clamp(42px,3.9vw,76px) !important;
  font-weight:950 !important;
  letter-spacing:-.11em !important;
}

.press-logo.rai{
  gap:.18em !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:clamp(26px,2.35vw,46px) !important;
  font-weight:900 !important;
  letter-spacing:-.07em !important;
  white-space:nowrap !important;
}

.press-logo.rai b{
  display:inline-flex !important;
  width:1.9em !important;
  height:1.9em !important;
  align-items:center !important;
  justify-content:center !important;
  margin-right:.12em !important;
  background:#050505 !important;
  color:#f4f0df !important;
  font:inherit !important;
  letter-spacing:-.08em !important;
}

.homepage-footer{
  position:relative !important;
  background:#050505 !important;
  padding:34px clamp(22px,4vw,70px) 42px !important;
}

.footer-social{
  position:static !important;
  left:auto !important;
  bottom:auto !important;
  z-index:auto !important;
  opacity:.72 !important;
}

@media(max-width:980px){
  .featured{
    min-height:auto !important;
    padding:78px 28px 92px !important;
  }

  .press{
    grid-template-columns:repeat(2,minmax(130px,1fr)) !important;
    gap:48px 30px !important;
  }

  .press-logo{
    min-height:64px !important;
  }

  .press-logo.repubblica{
    font-size:clamp(27px,7.1vw,44px) !important;
  }
}

@media(max-width:560px){
  .featured h2{
    margin-bottom:56px !important;
  }

  .press{
    gap:38px 18px !important;
  }

.press-logo.sneakerheadz{
    font-size:22px !important;
  }
}

/* === LOGO WALL BALANCE: NEO + GRANA === */
.brand-slot.neo{
  overflow:visible !important;
}

.brand-slot.neo img{
  max-width:152% !important;
  max-height:132% !important;
  width:152% !important;
  height:auto !important;
  transform:scale(1.28) !important;
  filter:grayscale(1) brightness(.72) contrast(1.16) !important;
  opacity:.94 !important;
  mix-blend-mode:multiply !important;
}

.brand-slot.neo:hover img{
  transform:scale(1.42) !important;
  filter:grayscale(1) brightness(.58) contrast(1.24) drop-shadow(0 18px 34px rgba(0,0,0,.15)) !important;
}

.brand-slot.grana img{
  max-width:66% !important;
  max-height:100% !important;
  filter:grayscale(1) contrast(.86) brightness(1.18) !important;
  opacity:.68 !important;
  mix-blend-mode:normal !important;
}

.brand-slot.grana:hover img{
  filter:grayscale(1) contrast(.96) brightness(.98) drop-shadow(0 16px 30px rgba(0,0,0,.13)) !important;
  opacity:.82 !important;
}

@media(max-width:700px){
  .brand-slot.neo img{
    max-width:138% !important;
    width:138% !important;
    transform:scale(1.18) !important;
  }

  .brand-slot.neo:hover img{
    transform:scale(1.25) !important;
  }

  .brand-slot.grana img{
    max-width:62% !important;
  }
}

/* === LOGO WALL REFERENCE CALIBRATION === */
.gradient-panel{
  min-height:clamp(620px,56vw,820px) !important;
  padding:clamp(74px,6.4vw,118px) clamp(52px,6.6vw,132px) !important;
}

.brand-grid{
  max-width:1780px !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  grid-auto-rows:clamp(118px,9vw,164px) !important;
  column-gap:clamp(46px,5.2vw,104px) !important;
  row-gap:clamp(42px,4.6vw,86px) !important;
  align-items:center !important;
  justify-items:center !important;
}

.brand-slot{
  min-height:0 !important;
  height:100% !important;
  overflow:visible !important;
}

.brand-slot.casadei{order:1}
.brand-slot.gedi{order:2}
.brand-slot.acqua{order:3}
.brand-slot.morellato{order:4}
.brand-slot.prosecco{order:5}
.brand-slot.zoow{order:6}
.brand-slot.continental{order:7}
.brand-slot.grana{order:8}
.brand-slot.sector{order:9}
.brand-slot.filippo{order:10}
.brand-slot.domingo{order:11}
.brand-slot.neo{order:12}
.brand-slot.olmetex{order:13}
.brand-slot.gal{order:14}
.brand-slot.pico{order:15}

.brand-slot.casadei img{max-width:94% !important;max-height:58% !important}
.brand-slot.gedi img{max-width:86% !important;max-height:76% !important;filter:grayscale(1) brightness(.34) contrast(1.14) !important}
.brand-slot.acqua img{max-width:92% !important;max-height:94% !important}
.brand-slot.morellato img{max-width:104% !important;max-height:76% !important;transform:scale(1.18) !important}
.brand-slot.prosecco img{max-width:92% !important;max-height:68% !important;filter:grayscale(1) brightness(.42) contrast(1.05) !important;opacity:.74 !important}
.brand-slot.continental img{max-width:86% !important;max-height:66% !important}
.brand-slot.sector img{max-width:106% !important;max-height:68% !important}

.brand-slot.zoow img{
  max-width:92% !important;
  max-height:110% !important;
  filter:grayscale(1) brightness(.22) contrast(1.24) !important;
}

.brand-slot.grana img{
  max-width:74% !important;
  max-height:112% !important;
  filter:grayscale(1) brightness(.72) contrast(1.22) !important;
  opacity:.86 !important;
  mix-blend-mode:multiply !important;
}

.brand-slot.grana:hover img{
  filter:grayscale(1) brightness(.58) contrast(1.28) drop-shadow(0 16px 30px rgba(0,0,0,.13)) !important;
  opacity:.94 !important;
}

.brand-slot.neo img{
  width:116% !important;
  max-width:116% !important;
  max-height:82% !important;
  transform:scale(1) !important;
  filter:grayscale(1) brightness(.54) contrast(1.18) !important;
  opacity:.82 !important;
  mix-blend-mode:multiply !important;
}

.brand-slot.neo:hover img{
  transform:scale(1.12) !important;
  filter:grayscale(1) brightness(.42) contrast(1.24) drop-shadow(0 18px 34px rgba(0,0,0,.14)) !important;
}

.brand-slot.pico img{
  max-width:104% !important;
  max-height:72% !important;
  filter:grayscale(1) brightness(.30) contrast(1.16) !important;
}

.brand-slot.filippo{
  font-size:clamp(18px,1.35vw,30px) !important;
  letter-spacing:.14em !important;
  color:rgba(42,42,42,.58) !important;
}

.brand-slot.domingo{
  font-size:clamp(36px,3vw,62px) !important;
  letter-spacing:-.075em !important;
}

.brand-slot.olmetex{
  font-size:clamp(34px,2.8vw,56px) !important;
  color:rgba(42,42,42,.78) !important;
}

.brand-slot.gal{
  font-size:clamp(34px,2.8vw,56px) !important;
}

@media(max-width:1100px){
  .brand-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-rows:126px !important;
    gap:42px 42px !important;
  }
}

@media(max-width:700px){
  .gradient-panel{
    padding:72px 24px !important;
  }

  .brand-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:112px !important;
    gap:28px 22px !important;
  }

  .brand-slot.neo img{
    width:112% !important;
    max-width:112% !important;
    transform:scale(1) !important;
  }

  .brand-slot.grana img{
    max-width:68% !important;
  }
}

/* === SERVICES CAROUSEL: EXACT BLACK BLOCK UNDER LOGOS === */
.services.service-carousel{
  position:relative !important;
  display:block !important;
  background:#000 !important;
  color:#f5f1eb !important;
  padding:clamp(76px,5.6vw,116px) 0 clamp(120px,8vw,170px) !important;
  margin:0 !important;
  overflow:hidden !important;
  border:0 !important;
}

.services.service-carousel::before,
.services.service-carousel::after{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  bottom:0 !important;
  width:56px !important;
  z-index:3 !important;
  pointer-events:none !important;
}

.services.service-carousel::before{
  left:0 !important;
  background:linear-gradient(90deg,#000 0%,rgba(0,0,0,0) 100%) !important;
}

.services.service-carousel::after{
  right:0 !important;
  background:linear-gradient(270deg,#000 0%,rgba(0,0,0,0) 100%) !important;
}

.service-track{
  display:flex !important;
  gap:clamp(24px,1.2vw,32px) !important;
  align-items:flex-start !important;
  width:calc(100% - clamp(42px,2.7vw,56px)) !important;
  margin-left:clamp(42px,2.7vw,56px) !important;
  padding-right:clamp(42px,2.7vw,56px) !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  scroll-behavior:smooth !important;
  scrollbar-width:none !important;
  -webkit-overflow-scrolling:touch !important;
}

.service-track::-webkit-scrollbar{
  display:none !important;
}

.services.service-carousel .service-card,
.services.service-carousel article{
  flex:0 0 clamp(420px,29.95vw,614px) !important;
  width:clamp(420px,29.95vw,614px) !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  transform:none !important;
  transition:none !important;
}

.services.service-carousel article:hover{
  transform:none !important;
  background:transparent !important;
}

.services.service-carousel img{
  width:100% !important;
  aspect-ratio:613/410 !important;
  height:auto !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:0 !important;
  filter:none !important;
  opacity:1 !important;
  transform:none !important;
  transition:filter .55s cubic-bezier(.22,1,.36,1), transform .55s cubic-bezier(.22,1,.36,1) !important;
}

.services.service-carousel article:hover img{
  transform:none !important;
  filter:brightness(1.035) contrast(1.02) !important;
}

.services.service-carousel h2{
  margin:18px 0 10px !important;
  padding:0 !important;
  color:#fff !important;
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-size:clamp(40px,2.35vw,50px) !important;
  font-weight:500 !important;
  line-height:.92 !important;
  letter-spacing:-.07em !important;
}

.services.service-carousel p{
  margin:0 !important;
  padding:0 !important;
  max-width:100% !important;
  color:rgba(255,255,255,.82) !important;
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-size:clamp(18px,1.08vw,22px) !important;
  font-weight:500 !important;
  line-height:1.42 !important;
  letter-spacing:0 !important;
}

.service-arrow{
  position:absolute !important;
  top:clamp(240px,17vw,338px) !important;
  z-index:5 !important;
  width:72px !important;
  height:72px !important;
  border:0 !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(255,255,255,.86) !important;
  color:#050505 !important;
  font:400 48px/1 Georgia, serif !important;
  cursor:pointer !important;
  box-shadow:0 12px 34px rgba(0,0,0,.18) !important;
  transition:transform .35s cubic-bezier(.22,1,.36,1), background .35s ease !important;
}

.service-arrow:hover{
  transform:scale(1.06) !important;
  background:#fff !important;
}

.service-arrow-left{left:clamp(88px,6.2vw,132px) !important}
.service-arrow-right{right:clamp(88px,6.2vw,132px) !important}

.services.service-carousel .service-arrow{
  display:flex !important;
  top:clamp(174px,13.9vw,302px) !important;
}

@media(max-width:900px){
  .services.service-carousel{
    padding:72px 0 96px !important;
  }

  .service-track{
    width:auto !important;
    overflow-x:auto !important;
    margin-left:24px !important;
    padding-right:24px !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
  }

  .service-track::-webkit-scrollbar{
    display:none !important;
  }

  .services.service-carousel .service-card,
  .services.service-carousel article{
    flex-basis:min(82vw,520px) !important;
    width:min(82vw,520px) !important;
    scroll-snap-align:start !important;
  }

  .service-arrow{
    display:none !important;
  }

  .services.service-carousel h2{
    font-size:40px !important;
  }

  .services.service-carousel p{
    font-size:18px !important;
  }
}

/* === MOBILE HEADER CALIBRATION === */
@media(max-width:620px){
  .site-header{
    grid-template-columns:42px 1fr !important;
    padding-left:10px !important;
    padding-right:14px !important;
  }

  .site-header .brand{
    width:38px !important;
    height:32px !important;
    justify-self:start !important;
    justify-content:flex-start !important;
    opacity:.76 !important;
    transform:translateX(-2px) !important;
  }

  .site-header .brand img,
  .site-header .logo,
  .logo.logo-white{
    width:38px !important;
    height:32px !important;
    opacity:1 !important;
    filter:brightness(4.45) contrast(.86) drop-shadow(0 1px 4px rgba(0,0,0,.2)) !important;
  }

  .site-header nav{
    padding-left:12px !important;
    gap:14px !important;
  }
}

/* === ABOUT BACKGROUND: OUTDOORA DARK IMAGE === */
.about{
  background:
    linear-gradient(90deg, rgba(0,0,0,.66), rgba(0,0,0,.54) 48%, rgba(0,0,0,.68)),
    linear-gradient(180deg, rgba(0,0,0,.30), rgba(0,0,0,.58)),
    url("../assets/outdoora_digital-content.webp") center/cover !important;
}

.about::before{
  background:
    radial-gradient(circle at 16% 42%, rgba(0,0,0,.50), transparent 34%),
    linear-gradient(90deg, rgba(0,0,0,.28), rgba(0,0,0,.18) 55%, rgba(0,0,0,.34)) !important;
  backdrop-filter:blur(2px) saturate(.9) brightness(.82) !important;
  -webkit-backdrop-filter:blur(2px) saturate(.9) brightness(.82) !important;
}

.about::after{
  background:linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.50) 76%, #000) !important;
}

/* === CONTACT BACKGROUND: ACQUA DI PARMA FINAL CTA === */
.contact{
  position:relative !important;
  min-height:clamp(420px,52vh,560px) !important;
  display:grid !important;
  place-items:center !important;
  padding:clamp(76px,7vw,104px) clamp(26px,7vw,120px) !important;
  overflow:hidden !important;
  isolation:isolate !important;
  background:
    linear-gradient(90deg, rgba(0,0,0,.46), rgba(0,0,0,.24) 50%, rgba(0,0,0,.48)),
    linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.42)),
    url("../assets/contact-acqua-bg.png") center 47%/cover no-repeat !important;
}

.contact::before{
  content:"" !important;
  position:absolute !important;
  inset:-34px !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:rgba(0,0,0,.08) !important;
  backdrop-filter:blur(3px) saturate(.92) brightness(.88) !important;
  -webkit-backdrop-filter:blur(3px) saturate(.92) brightness(.88) !important;
  transform:scale(1.06) !important;
}

.contact .contact-bg{
  position:absolute !important;
  inset:-34px !important;
  z-index:0 !important;
  width:calc(100% + 68px) !important;
  height:calc(100% + 68px) !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center 47% !important;
  filter:blur(8px) brightness(.82) saturate(.98) !important;
  opacity:1 !important;
  transform:scale(1.04) !important;
  pointer-events:none !important;
}

.contact::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg, rgba(0,0,0,.52), rgba(0,0,0,.34) 50%, rgba(0,0,0,.54)),
    linear-gradient(180deg, rgba(0,0,0,.44) 0%, rgba(0,0,0,.18) 24%, rgba(0,0,0,.28) 74%, rgba(0,0,0,.72) 100%) !important;
}

.contact > *{
  position:relative !important;
  z-index:2 !important;
  text-shadow:0 2px 22px rgba(0,0,0,.58) !important;
}

.contact > .contact-bg{
  position:absolute !important;
  z-index:0 !important;
  text-shadow:none !important;
}

.contact h2{
  margin-bottom:16px !important;
}

.contact p{
  max-width:760px !important;
  margin:0 auto !important;
  color:rgba(255,255,255,.86) !important;
}

.contact .cta{
  margin-top:30px !important;
  background:rgba(0,0,0,.18) !important;
  backdrop-filter:blur(12px) saturate(1.08) !important;
  -webkit-backdrop-filter:blur(12px) saturate(1.08) !important;
}

/* === BRAND LOGO LINKS === */
.brand-slot a{
  width:100% !important;
  height:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:inherit !important;
  text-decoration:none !important;
  cursor:pointer !important;
}

/* === BRAND WALL FINAL SIZING: GEDI / MORELLATO / MOBILE DECENTRALAND === */
.brand-slot.decentraland{
  order:16 !important;
  display:none !important;
}

@media(min-width:701px){
  .brand-slot.gedi img{
    max-width:98% !important;
    max-height:88% !important;
    transform:scale(1.08) !important;
  }

  .brand-slot.morellato img{
    max-width:116% !important;
    max-height:88% !important;
    transform:scale(1.28) !important;
  }
}

@media(max-width:700px){
  .brand-slot.morellato img{
    max-width:128% !important;
    max-height:112% !important;
    transform:scale(1.42) !important;
  }

  .brand-slot.decentraland{
    display:flex !important;
  }

  .brand-slot.decentraland img{
    width:112% !important;
    max-width:112% !important;
    max-height:94% !important;
    object-fit:contain !important;
    filter:grayscale(1) brightness(.42) contrast(1.12) !important;
    opacity:.84 !important;
    mix-blend-mode:multiply !important;
    transform:scale(1) !important;
  }
}

/* === SMARTPHONE LOGO WALL REBALANCE === */
@media(max-width:700px){
  .gradient-panel{
    padding:68px 22px !important;
  }

  .brand-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:104px !important;
    column-gap:24px !important;
    row-gap:26px !important;
    align-items:center !important;
    justify-items:center !important;
  }

  .brand-slot{
    min-height:104px !important;
  }

  .brand-slot.continental img{
    max-width:96% !important;
    max-height:82% !important;
    transform:scale(1.12) !important;
  }

  .brand-slot.morellato img{
    max-width:122% !important;
    max-height:100% !important;
    transform:scale(1.32) !important;
  }

  .brand-slot.neo img{
    width:102% !important;
    max-width:102% !important;
    max-height:74% !important;
    transform:scale(.94) !important;
  }

  .brand-slot.neo:hover img{
    transform:scale(1.02) !important;
  }

  .brand-slot.pico img{
    max-width:92% !important;
    max-height:62% !important;
    transform:scale(.94) !important;
  }

  .brand-slot.decentraland img{
    width:104% !important;
    max-width:104% !important;
    max-height:84% !important;
    transform:scale(.96) !important;
  }
}

@media(max-width:620px){
  .site-header .brand{
    transform:translateX(3px) !important;
  }
}

/* === MOBILE MENU + FEATURED IN FINAL POLISH === */
.menu-toggle,
.mobile-menu-panel,
.menu-backdrop{
  display:none;
}

@media(max-width:700px){
  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body.menu-open{
    overflow:hidden !important;
    touch-action:none !important;
  }

  .site-header{
    grid-template-columns:44px 1fr 44px !important;
    min-height:56px !important;
    height:56px !important;
    padding:8px 14px 8px 16px !important;
    gap:0 !important;
    background:linear-gradient(180deg, rgba(0,0,0,.62), rgba(0,0,0,.18) 72%, rgba(0,0,0,0)) !important;
    backdrop-filter:blur(12px) saturate(1.1) !important;
    -webkit-backdrop-filter:blur(12px) saturate(1.1) !important;
  }

  .site-header.header-hidden{
    transform:translateY(-110%) !important;
  }

  .site-header nav,
  .site-header .social-top{
    display:none !important;
  }

  .site-header .brand{
    grid-column:3 !important;
    justify-self:end !important;
    align-self:center !important;
    width:36px !important;
    height:30px !important;
    opacity:.9 !important;
    transform:none !important;
    justify-content:center !important;
  }

  .site-header .brand img,
  .site-header .logo,
  .logo.logo-white{
    width:36px !important;
    height:30px !important;
    object-fit:contain !important;
    opacity:1 !important;
    filter:brightness(3.6) contrast(.92) drop-shadow(0 2px 8px rgba(0,0,0,.34)) !important;
  }

  .site-header.light .brand img,
  .site-header.light .logo-black{
    filter:brightness(.2) contrast(1.2) drop-shadow(0 1px 4px rgba(255,255,255,.22)) !important;
  }

  .menu-toggle{
    grid-column:1 !important;
    display:inline-flex !important;
    width:38px !important;
    height:38px !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    gap:5px !important;
    border:0 !important;
    border-radius:50% !important;
    padding:0 !important;
    background:rgba(255,255,255,.11) !important;
    color:currentColor !important;
    -webkit-tap-highlight-color:transparent !important;
  }

  .site-header.light .menu-toggle{
    background:rgba(0,0,0,.08) !important;
  }

  .menu-toggle span{
    display:block !important;
    width:16px !important;
    height:1.5px !important;
    border-radius:999px !important;
    background:currentColor !important;
    box-shadow:0 1px 6px rgba(0,0,0,.24) !important;
    transform-origin:center !important;
    transition:transform .32s var(--ease-pro), opacity .22s ease !important;
  }

  body.menu-open .menu-toggle span:nth-child(1){
    transform:translateY(6.5px) rotate(45deg) !important;
  }

  body.menu-open .menu-toggle span:nth-child(2){
    opacity:0 !important;
  }

  body.menu-open .menu-toggle span:nth-child(3){
    transform:translateY(-6.5px) rotate(-45deg) !important;
  }

  .mobile-menu-panel{
    position:fixed !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:22px !important;
    inset:0 auto 0 0 !important;
    width:min(78vw,310px) !important;
    height:100dvh !important;
    z-index:210 !important;
    padding:86px 26px 32px !important;
    background:rgba(4,4,4,.78) !important;
    color:#fff !important;
    backdrop-filter:blur(22px) saturate(1.18) !important;
    -webkit-backdrop-filter:blur(22px) saturate(1.18) !important;
    box-shadow:24px 0 60px rgba(0,0,0,.34) !important;
    transform:translateX(-106%) !important;
    transition:transform .52s var(--ease-pro) !important;
    pointer-events:auto !important;
  }

  .mobile-menu-panel a{
    display:block !important;
    width:100% !important;
    color:#fff !important;
    text-decoration:none !important;
    font:500 28px/1.05 var(--main-font) !important;
    letter-spacing:.01em !important;
    text-shadow:none !important;
    padding:8px 0 !important;
  }

  body.menu-open .mobile-menu-panel{
    transform:translateX(0) !important;
  }

  .menu-backdrop{
    position:fixed !important;
    display:block !important;
    inset:0 !important;
    z-index:205 !important;
    border:0 !important;
    padding:0 !important;
    background:rgba(0,0,0,.34) !important;
    opacity:0 !important;
    pointer-events:none !important;
    transition:opacity .34s ease !important;
  }

  body.menu-open .menu-backdrop{
    opacity:1 !important;
    pointer-events:auto !important;
  }

  .hero,
  .about,
  .mosaic,
  .trusted,
  .services,
  .featured,
  .contact,
  .homepage-footer{
    max-width:100vw !important;
    overflow-x:hidden !important;
  }

  .service-track{
    max-width:100vw !important;
    overscroll-behavior-x:contain !important;
  }

  .services.service-carousel{
    overflow:hidden !important;
    touch-action:pan-y !important;
  }

  .featured{
    min-height:auto !important;
    padding:68px 22px 78px !important;
  }

  .featured h2{
    margin-bottom:42px !important;
    font-size:34px !important;
    line-height:1 !important;
  }

  .press{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:32px 24px !important;
    max-width:390px !important;
  }

  .press-logo{
    min-height:50px !important;
    width:100% !important;
  }

  .press-logo:hover{
    transform:translateY(-3px) scale(1.04) !important;
  }

  .press-logo.hypebeast{
    font-size:27px !important;
    letter-spacing:-.05em !important;
  }

  .press-logo.vogue{
    font-size:38px !important;
    letter-spacing:-.085em !important;
  }

  .press-logo.repubblica{
    font-size:28px !important;
    letter-spacing:-.072em !important;
  }

  .press-logo.gentleman{
    font-size:34px !important;
    letter-spacing:-.11em !important;
  }

  .press-logo.sneakerheadz{
    max-width:150px !important;
    font-size:19px !important;
    line-height:.8 !important;
  }

  .press-logo.coingape{
    font-size:28px !important;
  }

  .press-logo.wwd{
    font-size:35px !important;
  }

  .press-logo.rai{
    font-size:22px !important;
    letter-spacing:-.065em !important;
  }

  .press-logo.rai b{
    width:1.65em !important;
    height:1.65em !important;
  }
}

@media(max-width:380px){
  .press{
    gap:28px 18px !important;
  }

  .press-logo.hypebeast{
    font-size:24px !important;
  }

  .press-logo.vogue{
    font-size:35px !important;
  }

  .press-logo.gentleman{
    font-size:30px !important;
  }
}

/* === HERO VIDEO STARTUP GATE: REMOVE FIRST-FRAME FLASH === */
.hero.video-hero{
  background:#000 !important;
}

.hero.video-hero .hero-video{
  opacity:0 !important;
  transition:opacity .72s ease !important;
  will-change:opacity, transform, filter !important;
}

body.hero-video-ready .hero.video-hero .hero-video{
  opacity:1 !important;
}

body.hero-video-booting .hero.video-hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(circle at 50% 46%,rgba(14,14,14,.72),rgba(0,0,0,.98) 62%),
    #000 !important;
  opacity:1 !important;
  transition:opacity .28s ease !important;
}

body.hero-video-ready .hero.video-hero::before{
  opacity:0 !important;
}

/* === FINAL HEADER DEPTH + MOBILE SCROLL SMOOTHING === */
html{
  scroll-padding-top:86px !important;
}

.site-header{
  min-height:82px !important;
  height:82px !important;
  padding:14px clamp(22px,4vw,60px) 16px !important;
  background:linear-gradient(180deg, rgba(0,0,0,.72), rgba(0,0,0,.34) 62%, rgba(0,0,0,0)) !important;
}

.site-header .brand{
  width:70px !important;
  height:54px !important;
}

.site-header .brand img,
.site-header .logo,
.logo.logo-white{
  width:70px !important;
  height:54px !important;
}

.site-header nav a{
  font-size:clamp(26px,2.25vw,38px) !important;
}

.social-top .icon-link,
.site-header .social a{
  width:26px !important;
  height:26px !important;
}

.site-header .social svg{
  width:26px !important;
  height:26px !important;
}

.site-header .icon-link.linkedin{
  font-size:19px !important;
}

@media(max-width:700px){
  html{
    scroll-padding-top:70px !important;
    -webkit-text-size-adjust:100% !important;
  }

  body{
    overscroll-behavior-x:none !important;
    -webkit-overflow-scrolling:touch !important;
  }

  main,
  section,
  footer{
    max-width:100vw !important;
  }

  .site-header{
    grid-template-columns:48px 1fr 48px !important;
    min-height:64px !important;
    height:64px !important;
    padding:10px 16px 11px 16px !important;
    background:linear-gradient(180deg, rgba(0,0,0,.68), rgba(0,0,0,.28) 68%, rgba(0,0,0,0)) !important;
    transform:translate3d(0,0,0) !important;
    transition:transform .42s var(--ease-pro), background .3s ease !important;
  }

  .site-header.header-hidden{
    transform:translate3d(0,-112%,0) !important;
  }

  .site-header .brand{
    width:39px !important;
    height:33px !important;
    opacity:.94 !important;
  }

  .site-header .brand img,
  .site-header .logo,
  .logo.logo-white{
    width:39px !important;
    height:33px !important;
  }

  .menu-toggle{
    width:42px !important;
    height:42px !important;
    gap:5.5px !important;
  }

  .menu-toggle span{
    width:18px !important;
    height:1.6px !important;
  }

  body.menu-open .menu-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg) !important;
  }

  body.menu-open .menu-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg) !important;
  }

  .mobile-menu-panel{
    padding-top:98px !important;
    width:min(80vw,320px) !important;
  }

  .mobile-menu-panel a{
    font-size:30px !important;
    padding:9px 0 !important;
  }

  .service-track,
  .mosaic,
  .brand-grid,
  .press{
    -webkit-overflow-scrolling:touch !important;
  }

  .service-track{
    scroll-behavior:smooth !important;
    scrollbar-width:none !important;
  }

  .service-track::-webkit-scrollbar{
    display:none !important;
  }

  .hero.video-hero,
  .hero.video-hero .hero-video{
    max-width:100vw !important;
  }
}

/* === TRUSTED BY TITLE + WEBSITE LOGO BALANCE === */
.site-header nav a{
  font-size:clamp(19px,1.45vw,27px) !important;
}

.gradient-panel{
  display:flex !important;
  flex-direction:column !important;
  gap:clamp(46px,5vw,74px) !important;
  padding-top:clamp(78px,6vw,104px) !important;
  padding-bottom:clamp(86px,6.5vw,118px) !important;
}

.trusted-title{
  margin:0 !important;
  width:100% !important;
  text-align:center !important;
  color:rgba(0,0,0,.91) !important;
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-size:clamp(40px,3.25vw,60px) !important;
  font-style:italic !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:-.025em !important;
}

@media(min-width:701px){
  .brand-grid{
    grid-auto-rows:124px !important;
    row-gap:30px !important;
  }

  .brand-slot.sector img{
    max-width:72% !important;
    max-height:50% !important;
    transform:scale(.86) !important;
  }

  .brand-slot.pico img{
    max-width:64% !important;
    max-height:44% !important;
    transform:scale(.78) !important;
  }

  .brand-slot.neo img{
    width:100% !important;
    max-width:100% !important;
    max-height:78% !important;
    transform:scale(.88) !important;
  }

  .brand-slot.neo:hover img{
    transform:scale(.96) !important;
  }

  .brand-slot.morellato img{
    max-width:136% !important;
    max-height:104% !important;
    transform:scale(1.5) !important;
  }

  .brand-slot.continental img{
    max-width:112% !important;
    max-height:92% !important;
    transform:scale(1.28) !important;
  }

  .brand-slot.filippo{
    font-size:27px !important;
    color:#252525 !important;
    opacity:.96 !important;
    font-weight:500 !important;
    letter-spacing:.115em !important;
  }

  .brand-slot.filippo:hover{
    color:#111 !important;
  }
}

@media(max-width:700px){
  .mobile-menu-panel a{
    font-size:25px !important;
  }

  .gradient-panel{
    gap:34px !important;
    padding-top:62px !important;
  }

  .trusted-title{
    font-size:34px !important;
  }
}

/* === SPACING + LOGO GRID REFINEMENT === */
.about{
  min-height:clamp(500px,46vw,570px) !important;
  padding-top:clamp(72px,5.6vw,96px) !important;
  padding-bottom:clamp(70px,5.4vw,92px) !important;
}

.about .bio p,
.bio p{
  margin-bottom:.86em !important;
}

.gradient-panel{
  padding-top:clamp(48px,4.8vw,74px) !important;
  padding-bottom:clamp(76px,6vw,108px) !important;
  gap:clamp(46px,4.8vw,74px) !important;
}

.featured{
  min-height:clamp(500px,52vw,660px) !important;
  align-content:start !important;
  padding-top:clamp(48px,4.8vw,74px) !important;
  padding-bottom:clamp(78px,6vw,112px) !important;
}

.featured h2{
  margin-bottom:clamp(56px,5.2vw,82px) !important;
}

@media(min-width:701px){
  .press-logo.repubblica{
    font-size:clamp(31px,3.18vw,61px) !important;
  }

  .brand-slot.sector img{
    max-width:86% !important;
    max-height:64% !important;
    transform:scale(1.04) !important;
  }

  .brand-slot.olmetex{
    font-size:clamp(37px,3vw,60px) !important;
    color:rgba(24,24,24,.9) !important;
    opacity:.92 !important;
  }

  .brand-slot.gal{
    width:100% !important;
    justify-self:center !important;
    align-self:center !important;
    justify-content:center !important;
    text-align:center !important;
    transform:translateX(0) !important;
  }

  .brand-slot.gal small{
    text-align:center !important;
  }

  .brand-slot.grana img{
    transform:translateY(18px) !important;
  }

  .brand-slot.gal{
    transform:translateX(28px) !important;
  }

  .brand-slot.pico img{
    max-width:78% !important;
    max-height:56% !important;
    transform:scale(.96) !important;
  }
}

@media(max-width:700px){
  .about{
    min-height:auto !important;
    padding-top:72px !important;
    padding-bottom:72px !important;
  }

  .featured{
    padding-top:52px !important;
  }

  .brand-slot.neo img{
    width:96% !important;
    max-width:96% !important;
    max-height:68% !important;
    transform:scale(.86) !important;
  }

  .brand-slot.neo:hover img{
    transform:scale(.94) !important;
  }

  .brand-slot.zoow img{
    transform:translateY(-12px) scale(.98) !important;
  }
}

/* === TRUSTED SPACING + BRAND MICRO TUNE === */
.gradient-panel{
  padding-top:clamp(18px,2.1vw,34px) !important;
}

@media(min-width:701px){
  .brand-slot.continental img{
    max-width:104% !important;
    max-height:86% !important;
    transform:scale(1.18) !important;
  }

  .brand-slot.morellato img{
    max-width:136% !important;
    max-height:104% !important;
    transform:translateY(-10px) scale(1.5) !important;
  }
}

@media(max-width:700px){
  .gradient-panel{
    padding-top:56px !important;
  }
}

/* === CONTACT FORM PAGE === */
.contact{
  grid-template-columns:minmax(280px,.9fr) minmax(320px,560px) !important;
  gap:clamp(34px,5vw,86px) !important;
  text-align:left !important;
  place-items:center stretch !important;
  align-items:center !important;
}

.contact-copy{
  max-width:650px !important;
}

.contact-copy h2{
  font-size:clamp(48px,5.2vw,86px) !important;
  line-height:.92 !important;
  margin:0 0 18px !important;
}

.contact-copy p{
  max-width:560px !important;
  margin:0 !important;
  font-size:clamp(18px,1.35vw,23px) !important;
  line-height:1.55 !important;
}

.contact-mail{
  display:inline-flex !important;
  margin-top:24px !important;
  color:rgba(255,255,255,.82) !important;
  text-decoration:none !important;
  font:600 16px/1 var(--main-font) !important;
  letter-spacing:.01em !important;
  border-bottom:1px solid rgba(255,255,255,.34) !important;
  padding-bottom:5px !important;
}

.contact-mail:hover{
  color:#fff !important;
  border-color:rgba(255,255,255,.82) !important;
}

.contact-form{
  width:100% !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:16px !important;
  padding:clamp(20px,2.1vw,34px) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06)) !important;
  box-shadow:0 28px 90px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.18) !important;
  backdrop-filter:blur(24px) saturate(1.18) !important;
  -webkit-backdrop-filter:blur(24px) saturate(1.18) !important;
}

.contact-form label{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  margin:0 !important;
}

.contact-form span{
  color:rgba(255,255,255,.72) !important;
  font:600 12px/1 var(--main-font) !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.contact-form input,
.contact-form textarea{
  width:100% !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:16px !important;
  padding:15px 16px !important;
  color:#fff !important;
  background:rgba(0,0,0,.28) !important;
  outline:none !important;
  font:500 16px/1.35 var(--main-font) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
  transition:border-color .22s ease, background .22s ease, box-shadow .22s ease !important;
}

.contact-form textarea{
  min-height:150px !important;
  resize:vertical !important;
}

.contact-form input:focus,
.contact-form textarea:focus{
  border-color:rgba(255,255,255,.46) !important;
  background:rgba(0,0,0,.36) !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.08), inset 0 1px 0 rgba(255,255,255,.12) !important;
}

.message-field,
.contact-submit{
  grid-column:1 / -1 !important;
}

.contact-submit{
  width:100% !important;
  margin-top:4px !important;
  border:1px solid rgba(255,255,255,.34) !important;
  background:rgba(255,255,255,.9) !important;
  color:#070707 !important;
  cursor:pointer !important;
  font:700 15px/1 var(--main-font) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.22) !important;
}

.contact-submit:hover{
  transform:translateY(-2px) !important;
  background:#fff !important;
}

@media(max-width:820px){
  .contact{
    grid-template-columns:1fr !important;
    padding:84px 22px !important;
    text-align:left !important;
  }

  .contact-copy h2{
    font-size:48px !important;
  }

  .contact-form{
    grid-template-columns:1fr !important;
    border-radius:22px !important;
  }
}

/* === STANDALONE CONTACT PAGE === */
.contact-page-body{
  min-height:100vh !important;
  background:#050505 !important;
}

.contact-page{
  position:relative !important;
  min-height:100vh !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  padding:clamp(92px,9vw,128px) clamp(18px,5vw,70px) clamp(34px,5vw,70px) !important;
}

.contact-page-bg{
  position:absolute !important;
  inset:-34px !important;
  width:calc(100% + 68px) !important;
  height:calc(100% + 68px) !important;
  object-fit:cover !important;
  filter:blur(18px) saturate(.9) brightness(.42) !important;
  transform:scale(1.03) !important;
}

.contact-page::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    radial-gradient(circle at 72% 24%,rgba(255,255,255,.13),transparent 28%),
    linear-gradient(115deg,rgba(0,0,0,.88),rgba(0,0,0,.54) 50%,rgba(0,0,0,.78)) !important;
  z-index:1 !important;
}

.contact-page-panel{
  position:relative !important;
  z-index:2 !important;
  width:min(1180px,100%) !important;
  display:grid !important;
  grid-template-columns:minmax(280px,.92fr) minmax(320px,560px) !important;
  gap:clamp(34px,5vw,84px) !important;
  align-items:center !important;
}

.contact-page-copy{
  color:#fff !important;
}

.contact-back{
  display:inline-flex !important;
  color:rgba(255,255,255,.7) !important;
  text-decoration:none !important;
  margin-bottom:28px !important;
  font:700 12px/1 var(--main-font) !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
}

.contact-back:hover{
  color:#fff !important;
}

.contact-page-copy h1{
  margin:0 0 20px !important;
  max-width:680px !important;
  color:#fff !important;
  font:600 clamp(54px,7vw,116px)/.9 var(--main-font) !important;
  letter-spacing:0 !important;
}

.contact-page-copy p{
  max-width:560px !important;
  margin:0 !important;
  color:rgba(255,255,255,.78) !important;
  font:500 clamp(18px,1.45vw,24px)/1.55 var(--main-font) !important;
}

.standalone-contact-form input[name="_honey"]{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

@media(max-width:860px){
  .contact-page{
    place-items:start center !important;
    padding:96px 20px 36px !important;
  }

  .contact-page-panel{
    grid-template-columns:1fr !important;
    gap:26px !important;
  }

  .contact-page-copy h1{
    font-size:50px !important;
  }

  .contact-page-copy p{
    font-size:17px !important;
  }
}

/* === CONTACT FOOTER + FINAL SMOOTHNESS PASS === */
.site-header nav a{
  font-size:clamp(17px,1.28vw,24px) !important;
}

.contact.homepage-contact{
  min-height:auto !important;
  padding:clamp(86px,7vw,118px) clamp(22px,6vw,76px) !important;
  background:#050505 !important;
}

.homepage-contact .contact-bg{
  display:block !important;
}

.homepage-contact .contact-copy h2,
.contact-page-copy h1{
  letter-spacing:0 !important;
}

html{
  text-rendering:optimizeLegibility !important;
}

body{
  -webkit-font-smoothing:antialiased !important;
  text-rendering:optimizeLegibility !important;
}

.hero-video,
.mosaic img,
.service-card,
.brand-slot img{
  transform:translateZ(0);
}

@media(max-width:700px){
  .site-header nav a{
    font-size:12px !important;
  }

  .mobile-menu-panel a{
    font-size:23px !important;
  }

  .reveal{
    transition-duration:.58s !important;
    transform:translate3d(0,16px,0) !important;
  }

  .reveal.visible,
  .reveal.is-visible{
    transform:translate3d(0,0,0) !important;
  }

  .about,
  .trusted,
  .featured,
  .contact,
  .services{
    content-visibility:auto;
    contain-intrinsic-size:1px 720px;
  }

  .homepage-contact{
    padding:78px 20px 84px !important;
  }

  .homepage-contact .contact-copy h2,
  .contact-page-copy h1{
    font-size:46px !important;
    line-height:.94 !important;
  }

  .homepage-contact .contact-form{
    box-shadow:0 18px 54px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.14) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08) !important;
  }
}
