@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@300;400;500;600&display=swap');
:root{--black:#070908;--panel:#0c0f0e;--paper:#e8e3d7;--ink:#171915;--gold:#b98d49;--gold2:#e0bc78;--red:#c32321;--muted:#92948f;--line:rgba(202,164,94,.28);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:#e8e5dc;font:300 16px/1.65 var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;background:var(--paper);color:var(--ink);padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-frame{position:fixed;inset:3px;z-index:99;border:1px solid rgba(185,141,73,.38);pointer-events:none}
.site-header{position:fixed;inset:0 0 auto;z-index:50;height:86px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(1.5rem,6vw,7rem);border-bottom:1px solid var(--line);background:rgba(7,9,8,.82);backdrop-filter:blur(14px)}.site-header.scrolled{height:70px}.brand{display:flex;align-items:center;gap:.9rem;width:max-content;color:var(--gold2);font:500 clamp(.8rem,1.3vw,1.15rem)/1 var(--serif);letter-spacing:.28em}.brand-mark{width:25px;height:44px;fill:none;stroke:var(--gold2);stroke-width:1}.main-nav{display:flex;gap:clamp(1.5rem,4vw,4.5rem);font-size:.59rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.main-nav a{padding:.5rem 0;border-bottom:1px solid transparent}.main-nav a:hover{color:var(--gold2);border-color:var(--gold)}.header-seal{justify-self:end;display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;color:var(--gold2);font:500 .55rem var(--serif)}.menu-toggle{display:none;background:none;border:0}.menu-toggle i{display:block;width:22px;height:1px;margin:5px;background:#eee}
.hero{min-height:820px;height:100svh;position:relative;display:grid;grid-template-columns:1fr .85fr;align-items:center;padding:8rem clamp(2rem,8vw,9rem) 5rem clamp(6rem,12vw,13rem);overflow:hidden;background:radial-gradient(circle at 72% 48%,rgba(168,131,70,.12),transparent 29%),linear-gradient(90deg,#070908 0%,#090c0b 55%,#040605 100%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(185,141,73,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(185,141,73,.055) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,transparent 10%,#000 75%,transparent)}.hero-rail{position:absolute;z-index:3;left:1.4rem;top:7rem;bottom:2rem;width:66px;display:flex;flex-direction:column;justify-content:space-between;padding-right:1rem;border-right:1px solid rgba(185,141,73,.25);font-size:.41rem;letter-spacing:.1em;color:#777a74}.hero-rail div{display:flex;flex-direction:column;gap:.35rem}.hero-rail b{color:var(--gold);font:400 .68rem var(--serif)}.hero-copy{position:relative;z-index:4;max-width:700px}.eyebrow,.section-kicker{margin:0 0 1.1rem;color:var(--gold);font-size:.58rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase}.hero h1{margin:0;font:400 clamp(4.2rem,7.2vw,8.2rem)/.91 var(--serif);letter-spacing:-.04em;text-transform:uppercase}.gold-rule{display:block;width:23px;height:3px;margin:1.65rem 0;background:var(--gold)}.hero-intro{max-width:455px;color:#aaa9a3;font-size:.92rem;line-height:1.7}.hero-actions{display:flex;gap:1rem;margin-top:2.3rem}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 1.75rem;border:1px solid var(--gold);font-size:.61rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;transition:.2s}.button-primary{background:linear-gradient(90deg,#c99e5b,#e4c083);color:#15130e}.button:hover{transform:translateY(-2px);box-shadow:0 10px 35px rgba(183,141,73,.14)}.button-ghost{color:var(--gold2)}.hero-specimen{position:relative;z-index:2;height:min(78vh,760px);display:grid;place-items:center}.hero-specimen:before{content:"";position:absolute;width:75%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(225,193,132,.16),transparent 67%);filter:blur(20px)}.hero-specimen svg{position:relative;height:96%;max-width:100%;filter:drop-shadow(0 0 15px rgba(221,187,123,.25))}.dust{position:absolute;inset:8%;opacity:.6;background-image:radial-gradient(circle,rgba(237,204,142,.8) 0 1px,transparent 1.5px);background-size:35px 41px;mask-image:radial-gradient(circle,#000,transparent 72%)}.data-tag{position:absolute;border:1px solid var(--gold);padding:.35rem .65rem;color:var(--gold2);font:400 .75rem/1.2 monospace;letter-spacing:.08em;background:rgba(5,7,6,.7)}.data-tag:before{content:"";position:absolute;right:100%;top:50%;width:70px;height:1px;background:var(--gold)}.tag-one{right:2%;top:20%}.tag-two{right:7%;top:45%}.tag-three{right:0;bottom:18%;display:flex;flex-direction:column}.tag-three span{font-size:.55rem;color:#c6c4bc}.sequence-code{position:absolute;left:3%;bottom:11%;color:#5f625d;font:400 .5rem/1.7 monospace;letter-spacing:.14em}
.paper{position:relative;color:var(--ink);background:var(--paper);overflow:hidden}.paper-grain{position:absolute;inset:0;opacity:.11;pointer-events:none;background-image:radial-gradient(#6d604a .55px,transparent .7px);background-size:7px 7px}.manifesto{min-height:560px;display:grid;grid-template-columns:1.25fr .65fr .28fr;gap:clamp(2rem,7vw,7rem);align-items:center;padding:clamp(5rem,8vw,8rem) clamp(2rem,9vw,10rem)}.manifesto>*:not(.paper-grain){position:relative}.manifesto-copy{max-width:760px}.manifesto h2{margin:0;font:400 clamp(3rem,5.3vw,6.1rem)/.94 var(--serif);letter-spacing:-.035em;text-transform:uppercase}.manifesto-copy>p:not(.section-kicker){max-width:700px;font-size:.85rem;line-height:1.75}.book-data{margin:0;border-left:1px solid rgba(23,25,21,.18);padding-left:2rem}.book-data div{padding:.55rem 0;border-bottom:1px solid rgba(23,25,21,.16)}.book-data dt{font-size:.48rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.book-data dd{margin:.25rem 0 0;font-size:.7rem}.paper-sigil{display:grid;place-items:center;width:120px;height:160px;border:1px solid rgba(23,25,21,.14);border-radius:50%}.paper-sigil svg{width:42px;fill:none;stroke:rgba(23,25,21,.22);stroke-width:1}
.world{padding:5rem clamp(1.5rem,5vw,5rem) 6rem;background:linear-gradient(#090b0a,#0c0f0e)}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:2rem}.section-heading h2{margin:0;font:400 clamp(2rem,3.3vw,4rem) var(--serif);letter-spacing:.02em;text-transform:uppercase}.section-heading>p{max-width:290px;color:var(--muted);font-size:.75rem}.world-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.world-card{min-width:0;height:490px;position:relative;overflow:hidden;border:1px solid rgba(185,141,73,.48);background:#0a0c0b}.card-art{position:absolute;inset:0 0 42%;overflow:hidden;transition:transform .5s}.world-card:hover .card-art{transform:scale(1.035)}.card-art:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#080a09 100%)}.corporate-art{background:linear-gradient(145deg,#344047,#0f1719 55%,#050606)}.city{position:absolute;bottom:-10%;background:linear-gradient(90deg,#090d0e,#273238 45%,#080a0b);clip-path:polygon(35% 0,65% 0,100% 100%,0 100%)}.city:after{content:"";position:absolute;inset:10%;background:repeating-linear-gradient(#b79762 0 1px,transparent 1px 13px);opacity:.25}.c1{left:8%;width:35%;height:100%}.c2{left:40%;width:22%;height:68%}.c3{right:3%;width:35%;height:86%}.moon{position:absolute;right:9%;top:13%;width:90px;height:90px;border-radius:50%;background:#9f998e;filter:blur(1px);opacity:.35}.pastry-art{background:linear-gradient(145deg,#26302c,#111613 55%,#070807)}.house{position:absolute;left:25%;bottom:5%;width:52%;height:63%;background:linear-gradient(90deg,#101513,#333b34,#111412);clip-path:polygon(10% 25%,50% 0,92% 27%,100% 100%,0 100%)}.house:after{content:"";position:absolute;inset:40% 23% 0;background:repeating-linear-gradient(90deg,transparent 0 22px,#b58f55 23px 25px);opacity:.3}.tree{position:absolute;left:4%;bottom:0;width:34%;height:90%;background:radial-gradient(ellipse,#39483d,transparent 65%)}.path{position:absolute;left:35%;bottom:-25%;width:45%;height:65%;background:#685a43;transform:perspective(200px) rotateX(55deg);filter:blur(5px);opacity:.45}.hive-art{background:radial-gradient(circle at 50% 65%,#5d4320,#1b1b13 36%,#050706 72%)}.hex-cluster{position:absolute;inset:3%;display:grid;grid-template-columns:repeat(3,100px);place-content:center;transform:rotate(28deg)}.hex-cluster i{width:100px;height:112px;clip-path:polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0 50%);border:1px solid #b58c45;background:rgba(193,145,67,.08);filter:drop-shadow(0 0 10px rgba(185,141,73,.2))}.card-overlay{position:absolute;z-index:3;inset:auto 0 0;min-height:58%;display:flex;flex-direction:column;align-items:flex-start;padding:1.5rem 1.7rem;background:linear-gradient(transparent,#080a09 18%,#080a09)}.card-overlay p{margin:0 0 .8rem;color:#777a75;font-size:.48rem;letter-spacing:.15em}.card-overlay h3{margin:0;color:var(--gold2);font:500 clamp(2.1rem,3.4vw,3.7rem)/.9 var(--serif);letter-spacing:.04em;text-transform:uppercase}.card-overlay b{margin-top:.7rem;font-size:.64rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase}.card-overlay span{max-width:300px;margin-top:.8rem;color:#999a95;font-size:.78rem}.card-overlay em{margin-top:auto;color:var(--gold);font-size:.56rem;font-style:normal;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.archive{padding:4rem clamp(1.5rem,5vw,5rem) 2.5rem;background:#050706}.section-kicker.red{color:var(--red)}.archive-brackets{position:relative;border-top:1px solid rgba(195,35,33,.6);border-bottom:1px solid rgba(195,35,33,.6)}.archive-brackets:before,.archive-brackets:after{content:"";position:absolute;top:-7px;bottom:-7px;width:12px;border:1px solid var(--red)}.archive-brackets:before{left:-1px;border-right:0}.archive-brackets:after{right:-1px;border-left:0}.archive article{min-height:82px;display:grid;grid-template-columns:48px 190px 1fr 80px 90px;align-items:center;gap:1rem;padding:0 1.25rem;border-bottom:1px solid rgba(195,35,33,.35);color:var(--red)}.archive article:last-child{border:0}.archive-icon{font-size:1.4rem}.archive article b{font:500 1.55rem var(--serif);text-transform:uppercase}.archive article p{color:#858783;font-size:.7rem}.archive article small,.archive article i{font-size:.52rem;font-style:normal;letter-spacing:.14em}.archive-warning{text-align:center;color:var(--red);font-size:.5rem;letter-spacing:.16em}
.author{min-height:390px;display:grid;grid-template-columns:280px 1fr .65fr;gap:3.5rem;align-items:center;padding:0 clamp(2rem,7vw,7rem) 0 0}.author-portrait{align-self:stretch;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#837c6a,#39382f 42%,#181b18 78%)}.portrait-sigil{display:grid;place-items:center;width:110px;height:150px;border:1px solid rgba(12,14,12,.45);border-radius:50%;font:400 4rem var(--serif)}.author-portrait span{position:absolute;bottom:0;width:90px;height:120px;background:#171916;clip-path:polygon(35% 0,65% 0,100% 100%,0 100%)}.author-copy{position:relative}.author h2{margin:0;font:400 clamp(4rem,7vw,7rem)/.9 var(--serif);text-transform:uppercase}.author-copy>p:not(.section-kicker){max-width:680px;font-size:.76rem}.paper-button{display:inline-flex;margin-top:1rem;padding:.65rem 1rem;border:1px solid #77756e;font-size:.52rem;letter-spacing:.12em;text-transform:uppercase}.author blockquote{position:relative;margin:0;font:italic 1.15rem/1.7 var(--serif)}.author blockquote:after{content:"Leone";display:block;margin-top:1rem;font:italic 1.8rem var(--serif);transform:rotate(-7deg)}
.newsletter{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;padding:2.8rem clamp(2rem,7vw,7rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.newsletter h2{margin:0;font:400 clamp(2.5rem,4vw,4.5rem)/.9 var(--serif);text-transform:uppercase}.newsletter>div>p:last-child{color:var(--muted);font-size:.67rem}.signup{display:grid;grid-template-columns:1fr auto}.signup input{height:48px;padding:0 1rem;border:1px solid #514633;background:#0b0d0c;color:#eee;outline:0}.signup button{padding:0 2rem;border:0;background:var(--gold2);color:#17140f;font-size:.55rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.form-status{grid-column:1/-1;color:var(--gold2);font-size:.65rem}.site-footer{display:grid;grid-template-columns:1.2fr repeat(3,.65fr) 1fr;gap:2rem;padding:3rem clamp(2rem,7vw,7rem);color:#7e817c;font-size:.58rem}.footer-brand{font-size:.8rem}.site-footer nav{display:flex;flex-direction:column;gap:.45rem;padding-left:1.5rem;border-left:1px solid var(--line);text-transform:uppercase}.site-footer b{margin-bottom:.6rem;color:#adaea7;font-size:.51rem;font-weight:500;letter-spacing:.14em}.footer-code{padding-left:1.5rem;border-left:1px solid var(--line)}.footer-code>span{font-family:monospace;letter-spacing:.15em}
.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.site-header{grid-template-columns:1fr auto}.header-seal{display:none}.menu-toggle{display:block}.main-nav{display:none;position:fixed;inset:70px 0 auto;flex-direction:column;background:#080a09;padding:1rem 2rem;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero{grid-template-columns:1fr .7fr;padding-left:7rem}.manifesto{grid-template-columns:1fr .65fr}.paper-sigil{display:none}.world-cards{grid-template-columns:1fr}.world-card{height:520px}.archive article{grid-template-columns:40px 150px 1fr 75px}.archive article i{display:none}.author{grid-template-columns:220px 1fr}.author blockquote{display:none}.site-footer{grid-template-columns:1fr 1fr 1fr}.footer-code{display:none}}
@media(max-width:680px){.site-header{height:70px;padding:0 1.2rem}.brand{font-size:.75rem}.brand-mark{height:36px}.hero{min-height:820px;height:auto;display:block;padding:8.5rem 1.35rem 4rem}.hero-rail{display:none}.hero h1{font-size:3.6rem}.hero-copy{position:relative;z-index:5}.hero-intro{max-width:92%}.hero-actions{flex-direction:column}.hero-specimen{position:absolute;right:-38%;bottom:-7%;width:100%;height:62%;opacity:.5}.data-tag,.sequence-code{display:none}.manifesto{display:block;padding:5rem 1.35rem}.manifesto h2{font-size:3rem}.book-data{margin-top:3rem;padding-left:0;border-left:0}.section-heading{display:block}.section-heading>p{margin-top:1rem}.world{padding:4rem 1.1rem}.world-card{height:500px}.archive{padding:4rem 1.1rem 2rem}.archive article{grid-template-columns:35px 1fr auto;padding:.8rem}.archive article b{font-size:1.25rem}.archive article p{grid-column:2/-1;margin:0}.archive article small{grid-row:1;grid-column:3}.author{display:block;padding:0 1.35rem 4rem}.author-portrait{height:260px;margin:0 -1.35rem 3rem}.newsletter{grid-template-columns:1fr;gap:2rem;padding:4rem 1.35rem}.signup{grid-template-columns:1fr}.signup button{height:48px}.site-footer{grid-template-columns:1fr 1fr;padding:3rem 1.35rem}.site-footer>div:first-child{grid-column:1/-1}.site-footer nav:nth-of-type(3){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Identità ufficiale e profili personaggi */
.brand{width:auto;height:70px;gap:.65rem;color:var(--gold2);font:500 .95rem/1 var(--serif);letter-spacing:.2em;text-transform:uppercase}
.brand img{display:block;width:62px;height:48px;object-fit:contain}
.brand span{white-space:nowrap}
.footer-brand{width:auto;height:76px}
.characters{padding:6rem clamp(1.5rem,5vw,5rem) 3rem;background:#050706}
.characters-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:3rem}
.characters-heading h2{margin:0;font:400 clamp(3rem,5vw,6rem)/.9 var(--serif);letter-spacing:-.03em;text-transform:uppercase}
.characters-heading>p{max-width:390px;color:#858783;font-size:.76rem}
.character-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(195,35,33,.45);border:1px solid rgba(195,35,33,.5)}
.character-card{min-height:360px;display:grid;grid-template-columns:.75fr 1.25fr;background:#090b0a;overflow:hidden}
.character-visual{position:relative;display:flex;align-items:end;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 40%,#31342f,#111411 55%,#080a09)}
.character-visual:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(195,35,33,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(195,35,33,.09) 1px,transparent 1px);background-size:28px 28px}
.portrait-head{position:absolute;z-index:1;top:18%;width:72px;height:86px;border-radius:50% 50% 44% 44%;background:linear-gradient(110deg,#111411,#555952)}
.portrait-body{position:absolute;z-index:1;bottom:-8%;width:78%;height:64%;border-radius:50% 50% 0 0;background:linear-gradient(100deg,#0b0d0c,#3b3e39 55%,#101210)}
.character-visual i{position:absolute;z-index:3;bottom:1rem;left:1rem;color:var(--red);font-size:.48rem;font-style:normal;letter-spacing:.13em}
.vanessa .character-visual{background:radial-gradient(circle at 50% 35%,#504734,#151713 59%,#080a09)}
.vanessa .portrait-head{box-shadow:0 -18px 0 -3px #191b18}
.lars .character-visual{background:radial-gradient(circle at 50% 40%,#51402d,#171511 58%,#080a09)}
.zero .character-visual{align-items:center}
.zero-mark{position:relative;z-index:2;color:transparent;-webkit-text-stroke:1px var(--red);font:400 11rem/.8 var(--serif);text-shadow:0 0 35px rgba(195,35,33,.2)}
.character-copy{display:flex;flex-direction:column;align-items:flex-start;padding:2rem}
.character-copy small{color:#666964;font-size:.47rem;letter-spacing:.15em}
.character-copy h3{margin:auto 0 0;color:#e5dfd4;font:500 clamp(2.2rem,3.4vw,3.7rem)/.9 var(--serif);text-transform:uppercase}
.character-copy b{margin:.7rem 0;color:var(--red);font-size:.58rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase}
.character-copy p{margin:.4rem 0;color:#989a95;font-size:.76rem}
.character-copy>span{margin-top:auto;padding-top:1.5rem;color:#686a66;font-size:.46rem;letter-spacing:.12em}
.characters-note{text-align:center;color:var(--red);font-size:.48rem;letter-spacing:.15em}
@media(max-width:1000px){.character-grid{grid-template-columns:1fr}}
@media(max-width:680px){.brand{height:58px;font-size:.72rem;letter-spacing:.14em}.brand img{width:48px;height:38px}.characters{padding:4rem 1.1rem 2rem}.characters-heading{display:block}.characters-heading>p{margin-top:1rem}.character-card{grid-template-columns:1fr;min-height:570px}.character-visual{min-height:280px}.character-copy{min-height:290px}.footer-brand{height:70px}}
