/* V6 — pagina mondo (stato B): fondo scurissimo materico + logo chiaro */
.w-r{--bg:var(--ruby-world);--acc:#7a1f2e;--lt:var(--pergamena)}
.w-s{--bg:var(--sage-world);--acc:#4d6b5b;--lt:var(--luna)}
body[data-world]{background:var(--bg)}html:has(body[data-world]){background:var(--bg)}
body[data-world] #curtain i{background:var(--bg)}

/* materia dello sfondo */
.mat{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.mat::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 38%,transparent 30%,rgba(0,0,0,.78) 100%)}
.w-r .mat{background:radial-gradient(ellipse at 50% 30%,#2b0a14 0%,#170509 45%,#0a0205 100%)}
.w-s .mat{background:radial-gradient(ellipse at 50% 30%,#18241f 0%,#0d1512 45%,#050807 100%)}
.velvet{position:absolute;inset:-25%;width:150%;height:150%;opacity:.5;-webkit-mask-image:radial-gradient(closest-side,#000 55%,transparent);mask-image:radial-gradient(closest-side,#000 55%,transparent);mix-blend-mode:soft-light;will-change:transform}
#net{position:absolute;inset:0;width:100%;height:100%;opacity:.8}
/* hero */
.wh{position:relative;z-index:3;min-height:92svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12vh 6vw 8vh}
.wh .bs{width:min(70vw,52vh);aspect-ratio:1}
.wh h1{font:300 clamp(54px,11vw,180px)/.85 var(--serif);font-style:italic;color:var(--lt);margin-top:-2vh}
.wh p{max-width:520px;margin-top:3vh;opacity:.75}
.scrollhint{position:absolute;bottom:90px;left:50%;transform:translateX(-50%)}
/* card impilate (servizi) */
.svc{position:relative;z-index:3;padding:14vh 6vw 20vh}
.svc>h2,.grid-s>h2{font:300 clamp(40px,6vw,96px)/1 var(--serif);color:var(--lt);margin:2vh 0 8vh}
.card{position:sticky;top:calc(14vh + var(--i)*22px);min-height:62vh;margin-bottom:8vh;border-radius:6px;padding:6vh 5vw;display:grid;grid-template-columns:auto 1fr;gap:4vw;align-items:end;
  background:linear-gradient(160deg,color-mix(in srgb,var(--acc) 34%,var(--bg)),var(--bg) 80%);border:1px solid rgba(232,225,214,.1);box-shadow:0 -30px 60px rgba(0,0,0,.45);transform-origin:top center}
.card .n{font:300 clamp(80px,14vw,220px)/.8 var(--serif);font-style:italic;color:var(--lt);opacity:.22}
.card h3{font:300 clamp(32px,4.4vw,70px)/1 var(--serif);color:var(--lt)}
.card p{max-width:460px;margin-top:2vh;opacity:.72;font-size:14px}
@media(max-width:700px){.card{grid-template-columns:1fr;min-height:54vh}}
/* griglia -> schermo intero (lavori) */
.grid-s{position:relative;z-index:3;padding:10vh 6vw 14vh}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tile{all:unset;cursor:pointer;position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:4px}
.tile img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease-out)}
.tile:hover img{transform:scale(1.07)}
.tile span{position:absolute;left:14px;bottom:14px;font:400 clamp(18px,2vw,28px)/1 var(--serif);font-style:italic;text-shadow:0 2px 20px #000}
@media(max-width:700px){.grid{grid-template-columns:1fr 1fr}}
.full{position:fixed;z-index:65;overflow:hidden;background:#000}
.full img{width:100%;height:100%;object-fit:cover}
.full .cap{position:absolute;left:6vw;bottom:10vh;right:6vw}
.full h3{font:300 clamp(48px,9vw,150px)/.9 var(--serif);font-style:italic;color:var(--lt);text-shadow:0 0 60px rgba(0,0,0,.6)}
.full p{margin-top:2vh;max-width:480px;opacity:.85}
.full button{all:unset;cursor:pointer;position:absolute;top:22px;right:5vw;font:500 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;padding:10px 14px;border:1px solid rgba(232,225,214,.35);border-radius:99px;background:rgba(0,0,0,.4)}
/* chiusura mondo */
.wend{position:relative;z-index:3;padding:14vh 6vw 16vh;display:flex;flex-wrap:wrap;gap:6vh 8vw;justify-content:space-between;align-items:flex-end}
.wend .cta{font:300 clamp(48px,10vw,170px)/.85 var(--serif);font-style:italic;color:var(--lt)}
.wend .other{font:500 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid;padding-bottom:6px}
/* scelta colore Ginkgo (luna / fumé / ottone) */
.tints{position:absolute;left:50%;top:70px;transform:translateX(-50%);z-index:72;display:flex;gap:6px;padding:6px;border-radius:99px;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(232,225,214,.15)}
.tints button{all:unset;cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:99px;font:500 9px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;opacity:.6}
.tints button i{width:12px;height:12px;border-radius:50%;background:var(--c)}
.tints button.on{opacity:1;background:rgba(232,225,214,.1)}
/* telefono: la barra dei colori sta sempre dentro lo schermo */
@media(max-width:520px){.tints{max-width:calc(100vw - 24px);gap:2px;padding:4px}.tints button{padding:8px 8px;gap:5px;letter-spacing:.08em}}
