
/* Layout: hero full-bleed + righe orizzontali "catalogo"; nero caldo, giallo come unico accento; Anton per i nomi. */
:root{
  --bg:#0f0f0e; --bg2:#1d1d1b; --bg3:#262623; --fg:#ffffff; --muted:#b9b4ab; --accent:#f5a629; --accent-ink:#1d1d1b;
  --sinopia:#bf502b; --line:rgba(255,255,255,.12);
  --display:'Anton', 'Arial Narrow', Impact, sans-serif; --body:'Manrope', 'Helvetica Neue', Arial, sans-serif;
  --gutter-l:max(16px, env(safe-area-inset-left, 0px)); --gutter-r:max(16px, env(safe-area-inset-right, 0px));
  --maxw:1320px; color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,.disp{font-family:var(--display);font-weight:400;letter-spacing:.01em;text-transform:uppercase;line-height:.92;margin:0;text-wrap:balance}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-left:var(--gutter-l);padding-right:var(--gutter-r)}
.eyebrow{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-weight:700}
.muted{color:var(--muted)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto}}

/* NAV */
.nav{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:50;padding-left:var(--gutter-l);padding-right:var(--gutter-r);padding-block:14px;display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:linear-gradient(to bottom, rgba(15,15,14,.92), rgba(15,15,14,0));transition:background .3s, padding .3s}
.nav.solid{background:rgba(15,15,14,.92);backdrop-filter:blur(10px);padding-block:10px;border-bottom:1px solid var(--line)}
.nav .logo img{height:34px;width:auto}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:26px}
.nav li a{text-decoration:none;font-weight:700;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--fg);opacity:.85;position:relative;padding:6px 0}
.nav li a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--accent);transition:right .25s}
.nav li a:hover::after,.nav li a.active::after{right:0}
.nav li a:hover{opacity:1}
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:13px 20px;border-radius:4px;border:2px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer;transition:transform .2s, background .2s, color .2s}
.btn:hover{transform:translateY(-2px);background:#ffbe4d}
.btn.ghost{background:transparent;color:var(--fg);border-color:rgba(255,255,255,.35)}
.btn.ghost:hover{border-color:var(--fg);background:rgba(255,255,255,.06)}
.burger{display:none;background:none;border:0;color:#fff;font-size:1.6rem;line-height:1;padding:6px;cursor:pointer}
@media (max-width:860px){
  .nav ul{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:rgba(15,15,14,.97);padding:10px var(--gutter-l) 18px;border-bottom:1px solid var(--line)}
  .nav.open ul{display:flex}
  .nav li a{display:block;padding:12px 0;font-size:1rem}
  .nav .cta{display:none}
  .burger{display:block}
}

/* SECTIONS */
section{position:relative}
.sec{padding-block:clamp(56px, 8vw, 110px)}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.sec-head h2{font-size:clamp(2.4rem, 6vw, 5rem)}
.sec-head p{max-width:34rem;margin:0;color:var(--muted)}

/* STUDIO */
.studio{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.studio-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.studio .big{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(2rem, 4.6vw, 4.2rem);line-height:1;letter-spacing:.01em}
.studio .big em{font-style:normal;color:var(--accent)}
.studio .about{margin-top:22px;max-width:36rem;color:#d9d5cc;font-size:1.05rem}
.values{display:grid;gap:14px}
.value{padding:22px 24px;border:1px solid var(--line);border-left:4px solid var(--accent);background:rgba(255,255,255,.03);transition:transform .25s, background .25s}
.value:hover{transform:translateX(6px);background:rgba(245,166,41,.08)}
.value h3{font-size:1.5rem;color:var(--accent)}
.value p{margin:6px 0 0;color:var(--muted)}
.studio .net{margin-top:26px;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.studio .net b{color:#fff}
@media (max-width:900px){.studio-grid{grid-template-columns:1fr;gap:28px}}

/* SERVIZI */
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.service{position:relative;padding:28px 24px 58px;border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01));min-height:300px;display:flex;flex-direction:column;overflow:hidden;transition:transform .25s}
.service::before{content:"";position:absolute;left:0;top:0;height:4px;width:0;background:var(--accent);transition:width .45s cubic-bezier(.2,.8,.2,1)}
.service:hover{transform:translateY(-6px)}
.service:hover::before{width:100%}
.service .n{font-family:var(--display);font-size:4.2rem;line-height:1;color:rgba(255,255,255,.07);position:absolute;right:14px;bottom:4px}
.service h3{font-size:1.9rem;margin-bottom:8px;color:#fff}
.service .k{color:var(--accent);font-weight:800;letter-spacing:.04em;margin-bottom:12px}
.service p{margin:0;color:var(--muted);font-size:.95rem}
@media (max-width:1000px){.services{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.services{grid-template-columns:1fr}.service{min-height:0}}

/* ROWS (Netflix) */
.rows{display:grid;grid-template-columns:minmax(0,1fr);gap:44px}
.row{min-width:0;max-width:100%}
.row-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-left:var(--gutter-l);padding-right:var(--gutter-r);max-width:var(--maxw);margin-inline:auto}
.row-head h3{font-size:clamp(1.5rem, 3vw, 2.4rem)}
.row-head .ctrl{display:flex;gap:6px}
.arr{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;font-size:1.1rem;display:grid;place-items:center;transition:background .2s, border-color .2s}
.arr:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.track{display:flex;gap:12px;overflow-x:auto;min-width:0;width:100%;scroll-snap-type:x proximity;padding:18px var(--gutter-r) 26px var(--gutter-l);scroll-padding-left:var(--gutter-l);scrollbar-width:none;-webkit-overflow-scrolling:touch}
.track::-webkit-scrollbar{display:none}
@media (min-width:1352px){.track{padding-left:calc((100vw - var(--maxw))/2 + 16px);scroll-padding-left:calc((100vw - var(--maxw))/2 + 16px)}}
.card{position:relative;flex:0 0 auto;width:clamp(200px, 22vw, 300px);aspect-ratio:3/4;border-radius:6px;overflow:hidden;background:var(--bg3);scroll-snap-align:start;text-decoration:none;color:#fff;transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.track[data-ratio="wide"] .card{width:clamp(280px, 30vw, 420px);aspect-ratio:16/9}
.im{background-size:cover;background-position:center}
.card .im{position:absolute;inset:0;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top, rgba(10,10,10,.95) 0%, rgba(10,10,10,.35) 45%, rgba(10,10,10,0) 75%)}
.card .t{position:absolute;left:14px;right:14px;bottom:14px;z-index:2;transform:translateY(0);transition:transform .35s}
.card .name{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.35rem, 2.1vw, 1.9rem);line-height:.95;color:#fff;letter-spacing:.01em;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.card .sub{font-size:.8rem;color:#efebe3;margin-top:6px;opacity:0;max-height:0;transition:opacity .3s, max-height .35s;overflow:hidden}
.card .tags{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-top:6px;opacity:0;transition:opacity .3s .05s}
.card:hover,.card:focus-visible{transform:scale(1.06);z-index:3;box-shadow:0 18px 50px rgba(0,0,0,.6), 0 0 0 2px var(--accent)}
.card:hover .im{transform:scale(1.08)}
.card:hover .sub,.card:focus-visible .sub{opacity:1;max-height:4em}
.card:hover .tags,.card:focus-visible .tags{opacity:1}
.card.typo{background:var(--accent);display:flex;align-items:flex-end}
.card.typo::after{display:none}
.card.typo .name{color:var(--accent-ink);font-size:clamp(1.7rem, 2.6vw, 2.4rem);text-shadow:none}
.card.typo .sub{color:var(--accent-ink)}
.card.typo .tags{color:var(--accent-ink)}
.card.typo .mark{position:absolute;right:-6%;top:-10%;font-family:var(--display);font-size:9rem;line-height:1;color:rgba(29,29,27,.12);pointer-events:none}
@media (hover:none){.card .sub,.card .tags{opacity:1;max-height:4em}}

/* SANREMO */
.sanremo{background:linear-gradient(180deg, var(--bg) 0%, #161512 100%)}
.san-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.san{position:relative;padding:150px 26px 28px 30px;border:1px solid var(--line);background:var(--bg2);overflow:hidden;min-height:320px;display:flex;flex-direction:column;justify-content:flex-end}
.san .yr{position:absolute;left:-4px;top:-22px;font-family:var(--display);font-size:12.5rem;line-height:1;color:transparent;-webkit-text-stroke:2px rgba(245,166,41,.55);letter-spacing:-.02em;transition:color .35s}
.san:hover .yr{color:rgba(245,166,41,.16)}
.san h3{font-size:1.5rem;position:relative}
.san p{position:relative;margin:8px 0 0;color:var(--muted);font-size:.95rem}
.san .who{position:relative;color:var(--accent);font-weight:800;letter-spacing:.04em;font-size:.85rem;text-transform:uppercase;margin-top:10px}
@media (max-width:900px){.san-grid{grid-template-columns:1fr}.san{min-height:0;padding-top:130px}}

/* TALENT */
.talent-names{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:-150px;padding-top:180px;max-width:var(--maxw);overflow:hidden}
@media (hover:none){.tn .pv{display:none}}
.tn{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.3rem, 3vw, 2.3rem);line-height:1;color:rgba(255,255,255,.55);transition:color .2s;cursor:default;position:relative}
.tn::after{content:"·";color:var(--accent);margin-left:14px}
.tn:last-child::after{content:""}
.tn:hover,.tn.has:hover{color:var(--accent)}
.tn .pv{position:absolute;left:50%;bottom:110%;width:170px;aspect-ratio:3/4;display:block;border-radius:6px;transform:translate(-50%,10px) rotate(-4deg);opacity:0;pointer-events:none;transition:opacity .25s, transform .25s;box-shadow:0 20px 50px rgba(0,0,0,.6);z-index:5}
.tn:hover .pv{opacity:1;transform:translate(-50%,0) rotate(-2deg)}

/* CLIENTI */
.clients{display:flex;flex-wrap:wrap;gap:10px 0;margin-top:18px}
.cl{font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:.95rem;padding:10px 22px 10px 0;margin-right:22px;position:relative;color:#ece8df}
.cl::after{content:"";position:absolute;right:0;top:50%;width:6px;height:6px;border-radius:50%;background:var(--accent);transform:translateY(-50%)}
.cl:last-child::after{display:none}

/* REVEAL (solo via JS, elementi fuori dal viewport iniziale) */
.pre{opacity:0;transform:translateY(26px)}
.in{opacity:1;transform:none;transition:opacity .7s cubic-bezier(.2,.8,.2,1), transform .7s cubic-bezier(.2,.8,.2,1)}
:root{--y:#f5a629;--y2:#ffbe4d;--ink:#1d1d1b;--sin:#bf502b;--paper:#f6f3ec;--gl:max(16px, env(safe-area-inset-left, 0px));--gr:max(16px, env(safe-area-inset-right, 0px))}
/* intro */
.intro{position:fixed;inset:0;z-index:100;background:var(--ink);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;transition:transform .9s cubic-bezier(.8,0,.2,1)}
.intro.out{transform:translateY(-101%)}
.intro .l{display:flex}
.intro .l span{font-family:var(--display);font-size:clamp(4rem, 19vw, 18rem);color:var(--y);line-height:1;display:inline-block;transform:translateY(110%) rotate(8deg);opacity:0;animation:drop .7s cubic-bezier(.2,.9,.2,1) forwards}
.intro .s{font-family:var(--display);letter-spacing:.5em;font-size:clamp(.9rem, 3vw, 2rem);color:#fff;opacity:0;animation:fade .5s .8s forwards}
.intro .bar{position:absolute;left:0;bottom:0;height:6px;width:0;background:var(--y);animation:bar 1.6s .2s linear forwards}
@keyframes drop{to{transform:none;opacity:1}}
@keyframes fade{to{opacity:1}}
@keyframes bar{to{width:100%}}
.intro.off{display:none}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;padding-top:70px;padding-bottom:230px}
@media (max-width:700px){.hero{padding-bottom:200px}}
.hero .big{position:relative;z-index:2;text-align:center;pointer-events:none}
.hero .big .a{font-family:var(--display);font-size:clamp(4.2rem, 23vw, 24rem);line-height:.85;color:#fff;letter-spacing:-.01em;display:block}
.hero .big .b{font-family:var(--display);font-size:clamp(2rem, 9vw, 9rem);line-height:1;color:var(--y);letter-spacing:.22em;display:block;margin-top:-.05em}
.hero .sub{position:relative;z-index:2;margin-top:26px;text-align:center;max-width:36rem;padding-inline:16px;color:#e7e2d8;font-size:clamp(.95rem, 1.4vw, 1.15rem);pointer-events:none}
.hero .hint{position:absolute;bottom:190px;left:var(--gl);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);z-index:2}
.hero .hint::after{content:"";display:block;width:1px;height:40px;background:var(--y);margin:10px auto 0;animation:line 1.6s ease-in-out infinite}
@keyframes line{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.trail{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.trail .im{position:absolute;width:clamp(120px, 16vw, 230px);aspect-ratio:3/4;border-radius:4px;transform:translate(-50%,-50%) scale(.4) rotate(var(--r));opacity:0;animation:pop 1.3s cubic-bezier(.2,.8,.2,1) forwards;box-shadow:0 20px 60px rgba(0,0,0,.6)}
@keyframes pop{15%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(var(--r))}70%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(.9) rotate(var(--r))}}
.strips{position:absolute;left:-10vw;right:-10vw;bottom:0;z-index:3;pointer-events:none}
.strip{overflow:hidden;white-space:nowrap;padding-block:10px}
.strip.y{background:var(--y);color:var(--ink);transform:rotate(-2.5deg) translateY(10px)}
.strip.k{background:var(--ink);color:transparent;-webkit-text-stroke:1.5px var(--y);transform:rotate(1.5deg) translateY(-14px);border-top:1px solid rgba(245,166,41,.4);border-bottom:1px solid rgba(245,166,41,.4)}
.strip .mi{display:inline-block;font-family:var(--display);text-transform:uppercase;font-size:clamp(1.6rem, 4vw, 3.4rem);line-height:1;animation:mq 22s linear infinite}
.strip.k .mi{animation-direction:reverse;animation-duration:30s}
.strip .mi span{padding-inline:.5em}
.strip .mi b{color:inherit;font-weight:400}
@keyframes mq{to{transform:translateX(-50%)}}

/* clienti marquee */
.cli-unused{padding-block:clamp(60px, 8vw, 110px) 0;overflow:hidden}
.cli .eyebrow{color:var(--y);padding-left:var(--gl);margin-bottom:16px}
.mq{overflow:hidden;white-space:nowrap;border-top:1px solid rgba(255,255,255,.1)}
.mq:last-child{border-bottom:1px solid rgba(255,255,255,.1)}
.mq .mi{display:inline-block;padding-block:16px;animation:mq var(--d,34s) linear infinite}
.mq.r .mi{animation-direction:reverse}
.mq:hover .mi{animation-play-state:paused}
.mq .mi span{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.6rem, 4vw, 3.6rem);line-height:1;padding-inline:.45em;color:#fff}
.mq .mi span::after{content:"\2726";color:var(--y);margin-left:.9em;font-family:var(--body);font-size:.7em;vertical-align:middle}

/* contatti */
.ct{padding-block:clamp(90px, 12vw, 170px);position:relative;overflow:hidden}
.ct .blob{position:absolute;width:52vw;height:52vw;max-width:700px;max-height:700px;border-radius:50%;background:radial-gradient(circle at 30% 30%, rgba(245,166,41,.55), rgba(191,80,43,.25) 55%, transparent 72%);filter:blur(30px);pointer-events:none;left:50%;top:40%;transform:translate(-50%,-50%);z-index:0;opacity:.8}
.ct .wrap{position:relative;z-index:1}
.ct h2{font-size:clamp(3.2rem, 13vw, 13rem);line-height:.85}
.ct h2 span{display:inline-block;transition:transform .2s}
.ct h2 span:hover{transform:translateY(-10px) rotate(-4deg);color:var(--y)}
.ct .lead{max-width:34rem;color:#d9d5cc;margin:22px 0 40px}
.ct-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:start}
.info{display:grid;gap:16px}
.info .k{font-size:.65rem;letter-spacing:.26em;text-transform:uppercase;color:var(--y);font-weight:700}
.info .v{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.4rem, 2.6vw, 2.2rem);line-height:1;color:#fff;text-decoration:none;word-break:break-word}
.copybtn{margin-left:12px;font-family:var(--body);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;background:none;border:1px solid var(--y);color:var(--y);padding:6px 10px;border-radius:999px;cursor:pointer;vertical-align:middle}
.copybtn:hover{background:var(--y);color:var(--ink)}
form{display:grid;gap:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);padding:clamp(20px, 3vw, 36px);border-radius:14px;backdrop-filter:blur(8px)}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fld{position:relative}
.fld input,.fld select,.fld textarea{width:100%;font:inherit;font-size:1rem;color:#fff;background:transparent;border:0;border-bottom:2px solid rgba(255,255,255,.25);padding:22px 0 10px;min-width:0;border-radius:0}
.fld textarea{min-height:120px;resize:vertical}
.fld label{position:absolute;left:0;top:22px;font-size:.95rem;color:var(--muted);pointer-events:none;transition:all .2s;transform-origin:left}
.fld input:focus~label,.fld input:not(:placeholder-shown)~label,.fld textarea:focus~label,.fld textarea:not(:placeholder-shown)~label,.fld select~label{top:0;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--y);font-weight:700}
.fld input:focus,.fld textarea:focus,.fld select:focus{outline:none;border-bottom-color:var(--y)}
.fld select option{color:#111}
.fld input::placeholder,.fld textarea::placeholder{color:transparent}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.82rem;color:var(--muted)}
.check input{width:18px;height:18px;margin-top:2px;accent-color:var(--y)}
.send{position:relative;overflow:hidden;background:var(--y);color:var(--ink);border:0;font-family:var(--display);text-transform:uppercase;font-size:1.6rem;letter-spacing:.04em;padding:16px 28px;border-radius:999px;cursor:pointer;justify-self:start}
.send::before{content:"";position:absolute;inset:0;background:#fff;transform:translateX(-101%);transition:transform .35s cubic-bezier(.2,.8,.2,1);z-index:0}
.send:hover::before{transform:none}
.send span{position:relative;z-index:1}
.ok{display:none;padding:18px;border:1px solid var(--y);border-radius:10px;background:rgba(245,166,41,.1)}
.ok.show{display:block}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
@media (max-width:860px){.ct-grid{grid-template-columns:1fr}.f2{grid-template-columns:1fr}}

/* footer */
footer{border-top:1px solid rgba(255,255,255,.1);overflow:hidden;padding-bottom:30px}
footer .mq .mi span{color:transparent;-webkit-text-stroke:1.5px #fff;font-size:clamp(3rem, 10vw, 9rem)}
footer .mq .mi span::after{content:"\2726";color:var(--y);-webkit-text-stroke:0}
.f-row{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;padding-top:24px;padding-left:var(--gl);padding-right:var(--gr)}
.f-row img{height:30px;width:auto}
.f-row p{margin:0;font-size:.78rem;color:var(--muted)}
.f-row nav{display:flex;gap:16px;flex-wrap:wrap;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.f-row nav a{color:#fff;text-decoration:none}


.ct{background:var(--bg2);border-top:1px solid var(--line)}
.ok.err{border-color:var(--sin);background:rgba(191,80,43,.12)}
.send[disabled]{opacity:.6;cursor:wait}
.check a{color:var(--y)}
footer{background:#0b0b0a}
.f-row nav a:hover{color:var(--y)}
.i-ampi_galleria{background-image:url(img/ampi_galleria.jpg)}.i-anna{background-image:url(img/anna.jpg)}.i-auto_front{background-image:url(img/auto_front.jpg)}.i-biasetto_box{background-image:url(img/biasetto_box.jpg)}.i-biasetto_cone{background-image:url(img/biasetto_cone.jpg)}.i-bigfish_dump{background-image:url(img/bigfish_dump.jpg)}.i-bocelli_mic{background-image:url(img/bocelli_mic.jpg)}.i-bocelli_piano{background-image:url(img/bocelli_piano.jpg)}.i-bocelli_portrait{background-image:url(img/bocelli_portrait.jpg)}.i-borghese{background-image:url(img/borghese.jpg)}.i-bosco{background-image:url(img/bosco.jpg)}.i-cavada{background-image:url(img/cavada.jpg)}.i-corporate{background-image:url(img/corporate.jpg)}.i-cross{background-image:url(img/cross.jpg)}.i-diletta_close{background-image:url(img/diletta_close.jpg)}.i-diletta_orange{background-image:url(img/diletta_orange.jpg)}.i-football{background-image:url(img/football.jpg)}.i-gialappa{background-image:url(img/gialappa.jpg)}.i-hero_live{background-image:url(img/hero_live.jpg)}.i-isola{background-image:url(img/isola.jpg)}.i-jacopo{background-image:url(img/jacopo.jpg)}.i-joseph{background-image:url(img/joseph.jpg)}.i-kayak_top{background-image:url(img/kayak_top.jpg)}.i-kolors{background-image:url(img/kolors.jpg)}.i-kolors_live{background-image:url(img/kolors_live.jpg)}.i-lolita{background-image:url(img/lolita.jpg)}.i-maci{background-image:url(img/maci.jpg)}.i-maci_phone{background-image:url(img/maci_phone.jpg)}.i-mahmood{background-image:url(img/mahmood.jpg)}.i-marchesi{background-image:url(img/marchesi.jpg)}.i-masterclass{background-image:url(img/masterclass.jpg)}.i-noemi{background-image:url(img/noemi.jpg)}.i-p993{background-image:url(img/p993.jpg)}.i-padel{background-image:url(img/padel.jpg)}.i-pizza{background-image:url(img/pizza.jpg)}.i-portrait_fur{background-image:url(img/portrait_fur.jpg)}.i-puratos{background-image:url(img/puratos.jpg)}.i-renga{background-image:url(img/renga.jpg)}.i-renzo{background-image:url(img/renzo.jpg)}.i-rkomi{background-image:url(img/rkomi.jpg)}.i-roller_jump{background-image:url(img/roller_jump.jpg)}.i-stunt{background-image:url(img/stunt.jpg)}.i-tedua{background-image:url(img/tedua.jpg)}.i-theater{background-image:url(img/theater.jpg)}.i-valrhona_egg{background-image:url(img/valrhona_egg.jpg)}.i-viaggi{background-image:url(img/viaggi.jpg)}.i-vinaio{background-image:url(img/vinaio.jpg)}.i-vodcast{background-image:url(img/vodcast.jpg)}.i-zecchino{background-image:url(img/zecchino.jpg)}.i-zecchino_phone{background-image:url(img/zecchino_phone.jpg)}

/* logo 3D in home (01/11/2026) */
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero .logo3d{position:relative;z-index:2;margin:0;width:clamp(260px,74vw,980px);aspect-ratio:785.6/395.2;perspective:1100px;margin-bottom:clamp(14px,3.2vw,44px);pointer-events:none}
.logo3d .l3d{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}
.logo3d .ly{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:translateZ(calc(var(--i) * -1.6px));color:color-mix(in srgb,var(--y) calc(100% - var(--i) * 4.2%),#2a1a00)}
.logo3d .ly.front{color:var(--y);filter:drop-shadow(0 0 .5px rgba(255,255,255,.25))}
.logo3d .shadow{position:absolute;left:8%;right:8%;bottom:-6%;height:18%;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.55),transparent);transform:translate3d(var(--sx,0),var(--sy,22px),-40px);filter:blur(10px)}
@supports not (color:color-mix(in srgb,red,blue)){.logo3d .ly{color:#b9771a}.logo3d .ly.front{color:var(--y)}}
@media (max-width:700px){.hero .logo3d{width:86vw}}
/* partner nel footer (01/11/2026) */
.f-partners{display:flex;align-items:center;gap:10px 22px;flex-wrap:wrap;padding-top:18px;margin-top:18px;border-top:1px solid rgba(255,255,255,.08);margin-left:var(--gl);margin-right:var(--gr)}
.f-partners .k{font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}
.f-partners a{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:#fff;text-decoration:none}
.f-partners a:hover,.f-partners a:focus-visible{color:var(--y)}
