@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#121619;--dark:#111818;--dark2:#1c2625;--paper:#f2eee5;--light:#fffef8;--acid:#ddf75c;--faded:#878e89;--line:#d3d3c8;--font:'DM Sans',Arial,sans-serif;--display:'Space Grotesk',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);-webkit-font-smoothing:antialiased;background:var(--paper);color:var(--ink)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:var(--acid);color:var(--ink)}
.wrap{max-width:1340px;padding:0 46px;margin:auto}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:ui-monospace,Consolas,monospace;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:600}.eyebrow::before{content:'';width:7px;height:7px;background:var(--acid);border-radius:50%}.eyebrow.dark::before{background:#536f56}
.brand{font-family:var(--display);font-size:25px;font-weight:800;letter-spacing:-.075em;white-space:nowrap}.brand .dot{color:#8eae38}.badge-early{font-family:monospace;font-size:10px;letter-spacing:.1em;vertical-align:top;margin-left:10px;color:#81907f}
.topbar{position:sticky;top:0;z-index:20;background:rgba(17,24,24,.96);border-bottom:1px solid #3e4945;color:#fff;backdrop-filter:blur(18px)}.topbar-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.navlinks{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:700}.navlinks a:not(.nav-btn){color:#d1d9d5}.navlinks a:hover{color:var(--acid)}.nav-btn{display:inline-flex;background:var(--acid);padding:12px 17px;color:#182020;border-radius:3px;font-weight:800}
.hero{background:var(--dark);color:#fff;overflow:hidden;position:relative;padding:76px 0 65px}.hero:before{content:'';position:absolute;inset:0;opacity:.1;background-image:radial-gradient(#fff .7px,transparent .7px);background-size:16px 16px}.hero-grid{position:relative;display:grid;grid-template-columns:1fr .95fr;align-items:center;gap:50px}.hero h1{font:800 clamp(56px,6.6vw,112px)/.96 var(--display);letter-spacing:-.083em;margin:32px 0 26px;text-transform:uppercase;max-width:750px}.hero h1 em{font-style:normal;color:var(--acid)}.hero p{max-width:510px;color:#bdcac5;font-size:17px;line-height:1.75}.btns{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 0}.btn{display:inline-flex;align-items:center;gap:18px;padding:17px 21px;border-radius:4px;font-size:13px;font-weight:800;transition:transform .15s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--acid);color:var(--ink)}.btn.outline{border:1px solid #78867c;color:#fff}.hero-art{position:relative;min-height:540px}.hero-art .big-photo{width:78%;height:480px;object-fit:cover;transform:rotate(-4deg);margin-left:17%;border:8px solid #fff;box-shadow:0 22px 80px #0009;filter:saturate(.85)}.hero-art .floating-photo{position:absolute;bottom:-5px;left:-3%;width:50%;height:224px;object-fit:cover;transform:rotate(8deg);border:7px solid #eee;box-shadow:0 18px 50px #000a}.photo-label{position:absolute;right:0;bottom:-1px;padding:12px 14px;background:var(--acid);color:var(--ink);transform:rotate(-4deg);font:700 12px monospace}.hero-stamp{position:absolute;top:-20px;right:-15px;width:100px;height:100px;border:2px solid var(--acid);border-radius:100%;display:grid;place-items:center;font:700 12px/1.5 monospace;text-align:center;transform:rotate(15deg);z-index:2}
.marquee{background:var(--acid);border-bottom:1px solid var(--ink);padding:12px 0;white-space:nowrap;overflow:hidden;color:var(--ink);font:800 12px monospace;letter-spacing:.09em}.marquee span{display:inline-block;padding:0 36px}.marquee b{padding:0 16px;font-size:17px}
.section{padding:102px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.section h2{font:800 clamp(39px,4vw,70px)/1.02 var(--display);letter-spacing:-.067em;margin:16px 0 0}.section-intro{font-size:15px;line-height:1.75;color:#626b67;max-width:410px}.grid-story{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.story-card{background:var(--light);overflow:hidden;border:1px solid #deded4;transition:transform .2s,box-shadow .2s}.story-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #1f27141f}.story-card .cover{height:240px;overflow:hidden;background:#d9d5cc}.story-card .cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.story-card:hover img{transform:scale(1.045)}.story-content{padding:22px}.pill{font:700 10px monospace;text-transform:uppercase;letter-spacing:.07em;padding:6px 8px;background:#e5ead2;display:inline-flex;align-items:center}.story-card h3{font:750 25px/1.15 var(--display);letter-spacing:-.045em;margin:16px 0 9px}.story-card p{color:#737a75;font-size:13px;line-height:1.65;margin:0 0 18px}.story-card .read{font:700 12px var(--font);border-top:1px solid #e3e3d7;padding-top:13px;display:flex;justify-content:space-between}.section-dark{background:#17201e;color:#fff}.section-dark .section-intro{color:#bac5bd}.oldie{background:#263128;border:1px solid #526249;padding:28px;margin-bottom:42px;display:grid;grid-template-columns:1fr 1.1fr;gap:35px;align-items:center}.oldie img{height:220px;object-fit:cover;width:100%;filter:saturate(.87)}.oldie h3{font:750 33px/1.08 var(--display);margin:10px 0 12px;letter-spacing:-.04em}.oldie p{font-size:14px;line-height:1.7;color:#c5cec4}.oldie a{font-weight:800;color:var(--acid);font-size:13px}
.catalog-tools{display:flex;flex-wrap:wrap;gap:11px;justify-content:space-between;align-items:center;margin-bottom:17px}.catalog-tools input{background:#f4f4e8;border:1px solid #607368;border-radius:2px;color:#121818;width:min(100%,380px);padding:13px 15px;outline:none}.catalog-tools input:focus{border-color:var(--acid);box-shadow:0 0 0 2px #def75c55}.catalog-tools select{background:#f4f4e8;border:1px solid #607368;border-radius:2px;padding:12px;color:#182020;min-width:175px}.count{font:700 12px monospace;color:var(--acid)}.catalog-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.3}.catalog-table th{text-align:left;color:#9dab9e;border-bottom:1px solid #556458;padding:14px 10px 15px;font:700 11px monospace;text-transform:uppercase}.catalog-table td{padding:14px 10px;border-bottom:1px solid #35463c;vertical-align:top;color:#dce4dd}.catalog-table td:first-child{font-weight:800;color:#fff}.catalog-table a{color:var(--acid);text-decoration:underline;text-underline-offset:3px}.catalog-scroll{overflow-x:auto;max-height:485px;overflow-y:auto}.catalog-scroll table{min-width:800px}.catalog-table thead{position:sticky;top:0;background:#17201e}.smallnote{font-size:12px;color:#a7b3a8;line-height:1.6;margin-top:16px}
.album{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:13px}.album figure{margin:0;position:relative;height:340px;overflow:hidden;background:#ddd}.album figure img{width:100%;height:100%;object-fit:cover}.album figcaption{position:absolute;bottom:10px;left:10px;background:#101918ed;color:#fff;padding:8px 10px;font:700 10px monospace}.album figure:nth-child(2){transform:translateY(18px)}
.review-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.review-spot{background:#fffefa;border:1px solid #d5d8cc;position:relative;padding:12px}.review-spot img{height:188px;width:100%;object-fit:cover;filter:saturate(.9)}.review-spot h3{font:750 18px/1.1 var(--display);margin:15px 6px 8px}.review-spot p{font-size:11px;color:#616d63;margin:0 6px 14px}.review-spot a{position:absolute;inset:0}.review-spot:hover{outline:2px solid #4f6451}
.about{padding:75px 0;background:var(--acid);border-top:2px solid var(--ink)}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}.about h2{font:800 clamp(42px,4.7vw,75px)/.98 var(--display);letter-spacing:-.074em;margin:17px 0}.about p{font-size:16px;line-height:1.75;max-width:530px}.about-photo img{width:100%;max-height:370px;object-fit:cover;border:10px solid #fff;background:#fff;transform:rotate(2deg);box-shadow:15px 15px 0 #121818}.about-detail{display:flex;gap:30px;padding:20px 0;border-top:1px solid #889833;font:700 12px monospace}
.footer{background:#111818;color:#fff;padding:40px 0}.footer-grid{display:flex;align-items:end;justify-content:space-between;gap:24px}.footer .copyright{font-size:12px;color:#a2b0a6;line-height:1.7}.footer a{color:var(--acid)}
/* Gateway */
.gateway{background:#111818;min-height:100vh;color:#fff}.gateway-header{display:flex;align-items:center;justify-content:space-between;padding-top:32px;padding-bottom:32px;border-bottom:1px solid #39453d}.gateway-header span{font:700 11px monospace;color:#aab6ac}.gateway-intro{padding:70px 0 38px}.gateway-intro h1{font:800 clamp(54px,8.7vw,130px)/.9 var(--display);letter-spacing:-.085em;margin:15px 0 20px;text-transform:uppercase}.gateway-intro h1 em{font-style:normal;color:var(--acid)}.gateway-intro p{font-size:17px;color:#b6c1bb;max-width:650px;line-height:1.6}.gateway-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:60px}.gateway-card{position:relative;display:block;min-height:420px;overflow:hidden;background:#35423e}.gateway-card .bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .3s;filter:saturate(.75)}.gateway-card:hover .bg{transform:scale(1.035)}.gateway-card::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101818f5 0%,#10181822 85%);z-index:1}.gateway-card .overlay{position:absolute;inset:0;padding:27px;z-index:2;display:flex;flex-direction:column;justify-content:space-between}.gateway-card .no{font:700 12px monospace;color:var(--acid);letter-spacing:.1em}.gateway-card h2{font:800 44px/1 var(--display);letter-spacing:-.055em;margin:8px 0}.gateway-card p{font-size:13px;max-width:330px;color:#e1e7e1;line-height:1.5}.gateway-card .go{font:800 13px var(--font);display:inline-block;background:var(--acid);color:#121818;padding:12px 17px;margin-top:12px}.gateway-bottom{padding-bottom:36px;font:12px/1.6 monospace;color:#96a29b}
/* story page */
.story-hero{background:#17201e;color:#fff;padding:60px 0}.backlink{display:inline-block;font-size:13px;color:var(--acid);font-weight:800;margin-bottom:32px}.story-hero-grid{display:grid;grid-template-columns:1fr .95fr;gap:50px;align-items:center}.story-hero h1{font:800 clamp(44px,5.7vw,88px)/.99 var(--display);letter-spacing:-.07em;margin:20px 0}.story-hero p{font-size:17px;color:#bbc6bd;line-height:1.65;max-width:600px}.story-hero .story-photo{width:100%;max-height:450px;object-fit:cover;border:8px solid #fff}.story-body{max-width:840px;margin:auto;padding:80px 30px}.story-body h2{font:750 35px var(--display);letter-spacing:-.05em}.story-body p{line-height:1.8;color:#535c55;font-size:17px}.story-body .note{border-left:4px solid var(--acid);padding:20px;background:#fffef8;font-size:14px;line-height:1.7;color:#48574d}.story-body .source-btn{display:inline-flex;margin-top:25px;padding:15px 20px;background:#111818;color:var(--acid);font-weight:800;font-size:14px}
@media(max-width:1080px){.wrap{padding:0 26px}.navlinks{gap:15px}.hero-grid{gap:20px}.hero-art .big-photo{height:385px}.hero-art{min-height:430px}.hero h1{font-size:clamp(50px,7.5vw,85px)}.review-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.wrap{padding:0 18px}.topbar-inner{height:62px}.brand{font-size:21px}.badge-early{display:none}.navlinks a:not(.nav-btn){display:none}.navlinks{gap:4px}.nav-btn{font-size:11px;padding:10px 11px}.hero{padding:50px 0 40px}.hero-grid,.oldie,.about-grid,.story-hero-grid,.gateway-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(48px,13vw,82px)}.hero-art{min-height:350px;margin-top:35px}.hero-art .big-photo{height:300px;width:80%;margin-left:17%}.hero-art .floating-photo{width:48%;height:150px;bottom:6px}.hero-stamp{right:8px;top:-15px;width:78px;height:78px}.hero p{font-size:15px}.section{padding:65px 0}.section-head{display:block}.section h2{font-size:43px}.grid-story{grid-template-columns:1fr}.story-card .cover{height:240px}.album{grid-template-columns:1fr 1fr}.album figure{height:230px}.album figure:first-child{grid-column:span 2}.album figure:nth-child(2){transform:none}.review-strip{grid-template-columns:1fr 1fr}.review-spot img{height:130px}.review-spot h3{font-size:15px}.about-photo img{max-height:300px}.footer-grid{display:block}.gateway-intro{padding:55px 0 25px}.gateway-intro h1{font-size:clamp(51px,12vw,84px)}.gateway-card{min-height:330px}.gateway-card h2{font-size:39px}.story-hero{padding:36px 0}.story-body{padding:45px 20px}.story-body p{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* v4: tutte le sezioni originarie accessibili anche da smartphone */
.topbar-inner .brand{flex-shrink:0}
.topbar .navlinks{min-width:0;overflow-x:auto;scrollbar-width:none;gap:16px}
.topbar .navlinks::-webkit-scrollbar{display:none}
.topbar .navlinks a{white-space:nowrap;flex-shrink:0}
@media(max-width:760px){
 .topbar-inner{height:auto;display:flex;flex-direction:column;align-items:stretch;padding-top:12px;padding-bottom:10px;gap:10px}
 .topbar .navlinks{display:flex;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;gap:15px}
 .topbar .navlinks a:not(.nav-btn){display:inline-block;font-size:12px}
 .topbar .navlinks .nav-btn{display:inline-flex}
}

/* v9 – menu esteso e accessibile; su smartphone tutte le sezioni restano raggiungibili */
@media(min-width:761px){.topbar-inner{height:auto;min-height:76px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.topbar .navlinks{overflow:visible;flex-wrap:wrap;justify-content:flex-end;gap:10px 15px}.topbar .navlinks a{font-size:12px}}
@media(max-width:760px){.topbar .navlinks{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.topbar .navlinks a{scroll-snap-align:start;min-height:30px;display:inline-flex!important;align-items:center}}

/* 2026-11-12 – Miglioramento tocchi nella versione mobile.
   Le frecce ↗ sono parte del collegamento, non pulsanti separati. */
.hero::before { pointer-events: none; }
@media (max-width: 760px) {
  .hero .btns .btn {
    position: relative;
    z-index: 2;
    min-height: 48px;
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(221,247,92,.25);
  }
  .hero .btns .btn span[aria-hidden="true"],
  .story-card .read span[aria-hidden="true"] {
    pointer-events: none;
  }
  .story-card a { touch-action: manipulation; }
}

/* Correzione resa grafica frecce su iOS/Android: nessuna emoji.
   Freccia vettoriale disegnata via CSS, eredita il colore del testo. */
.site-arrow {
  display: inline-block;
  position: relative;
  width: 15px;
  height: 15px;
  vertical-align: -2px;
  margin-left: .35em;
  flex: 0 0 15px;
  font-size: 0;
  line-height: 0;
  white-space: nowrap;
}
.site-arrow::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 7px;
  width: 13px;
  height: 2px;
  background: currentColor;
  border-radius: 1px;
  transform: rotate(-45deg);
  transform-origin: center center;
}
.site-arrow::after {
  content: "";
  position: absolute;
  top: 1px;
  right: 1px;
  width: 7px;
  height: 7px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
}
