/* Maison Trivius — redesign agosto 2026 (dal prototipo di Matteo + Sophie)
   Palette e tipografia: IDENTITA.md + prototipo. Font: EB Garamond + Space Grotesk (fonts-2026.css). */

:root{
  --paper:#faf8f4; --ink:#1a1714; --body:#35322c; --muted:#6f6a61;
  --rosso:#7d1f2e; --oro:#c7a468; --crema:#f2ead9; --crema-velluto:#f6efe2;
  --soglia:#3d0f1a;
  --serif:'EB Garamond',Georgia,serif;
  --grot:'Space Grotesk','Helvetica Neue',Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--serif);scroll-behavior:smooth;overflow-x:hidden}
em{font-style:normal}
sup{font-size:.6em;line-height:0;vertical-align:.4em}
a{color:inherit;text-decoration:none}
a:hover{color:var(--rosso)}
h1,h2,h3,p,blockquote,figure{margin:0;font-weight:400}

/* ---------- soglia d'ingresso ---------- */
.soglia{position:fixed;inset:0;z-index:50;background:var(--soglia);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:40px;cursor:pointer;touch-action:none;transition:transform 1.4s cubic-bezier(.77,0,.18,1)}
.soglia .motto{font-family:var(--grot);font-size:12px;letter-spacing:.6em;text-indent:.6em;text-transform:uppercase;color:var(--oro)}
.soglia .invito{font-family:var(--grot);font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:rgba(242,234,217,.45);animation:soglia-hint 2.4s ease-in-out infinite}
.soglia .disco{animation:pulse 2.6s ease-in-out infinite;transform-origin:50% 27%}

/* ---------- luce che segue il puntatore ---------- */
.luce{position:fixed;inset:0;pointer-events:none;z-index:1}

/* ---------- header ---------- */
header{display:flex;justify-content:space-between;align-items:center;padding:22px 48px}
.brand{display:flex;align-items:center;gap:12px}
.brand span{font-family:var(--grot);font-size:11px;letter-spacing:.32em;text-transform:uppercase}
.lingue{display:flex;gap:30px;font-family:var(--grot);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}
.lingue a{color:var(--muted)}
.lingue a:hover{color:var(--rosso)}
.lingue b{color:var(--ink);font-weight:500}

/* ---------- hero ---------- */
.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:0 48px}
.kicker{font-family:var(--grot);font-size:11px;letter-spacing:.5em;text-transform:uppercase;color:var(--rosso);margin-bottom:30px}
.monumentale{font-size:clamp(40px,8.5vw,130px);line-height:1.05;letter-spacing:-.01em;max-width:1100px}
.sottotitolo{font-family:var(--grot);font-size:16px;line-height:1.65;color:var(--body);max-width:440px;margin-top:44px;text-align:justify;hyphens:auto}
.metariga{display:flex;gap:44px;margin-top:70px;font-family:var(--grot);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}

/* ---------- trivio animato ---------- */
.trivio-wrap{display:flex;justify-content:center;padding:30px 48px 0}
.trivio-wrap svg{max-width:100%;display:block}

/* ---------- sezioni ---------- */
.etichetta{font-family:var(--grot);font-size:17px;letter-spacing:.5em;text-transform:uppercase;color:var(--rosso)}
#valorizzare{max-width:1240px;margin:0 auto;padding:60px 48px 120px}
#valorizzare .etichetta{margin-bottom:56px}
.righe{display:flex;flex-direction:column}
.riga{display:grid;grid-template-columns:110px 1fr 1.1fr;gap:32px;align-items:baseline;padding:38px 0;border-top:1px solid rgba(26,23,20,.25);transition:background .5s ease,padding-left .5s ease;cursor:default}
.riga:hover{background:var(--crema);padding-left:20px}
.riga .num{font-family:var(--grot);font-size:15px;color:var(--rosso)}
.riga h3{font-size:clamp(30px,5vw,42px)}
.riga p{font-family:var(--grot);font-size:15px;line-height:1.65;color:var(--muted);text-align:justify;hyphens:auto}

#silenzio{background:linear-gradient(160deg,#5b1826,#521523 55%,#3f1019);padding:130px 48px;text-align:center}
.cornice{max-width:680px;margin:0 auto;border:1px solid var(--oro);outline:1px solid rgba(199,164,104,.5);outline-offset:-8px;padding:64px 54px}
.citazione{font-size:clamp(24px,2.6vw,31px);line-height:1.5;color:var(--crema-velluto)}
.attribuzione{font-family:var(--grot);font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--oro);margin-top:26px}

#trasmettere{max-width:1240px;margin:0 auto;padding:130px 48px}
#trasmettere .etichetta{margin-bottom:34px}
.apertura{font-size:clamp(32px,3.6vw,50px);line-height:1.2;max-width:760px}
.due{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:80px}
.blocco{border-top:1px solid rgba(26,23,20,.25);padding-top:26px}
.blocco h3{font-size:27px;margin-bottom:16px}
.blocco p{font-family:var(--grot);font-size:15px;line-height:1.7;color:var(--muted);text-align:justify;hyphens:auto}

#corrispondenza{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 48px}
#corrispondenza .etichetta{margin-bottom:26px}
.invito-grande{font-size:34px;max-width:560px;line-height:1.4}
.sottoinvito{font-family:var(--grot);font-size:15px;color:var(--muted);margin-top:22px}
.mail{font-size:22px;color:var(--rosso);border-bottom:1px solid rgba(125,31,46,.4);margin-top:34px;display:inline-block}
.firma{font-family:var(--grot);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin-top:90px}

/* ---------- animazioni ---------- */
@keyframes pulse{0%,100%{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}
@keyframes soglia-hint{0%,100%{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}
@keyframes trivio-linea{0%{stroke-dashoffset:520}55%,70%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@keyframes trivio-punto{0%,45%{opacity:0;transform:scale(.4)}60%,70%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1)}}

/* ---------- mobile ---------- */
@media(max-width:700px){
  header{padding:16px 20px}
  .hero{min-height:0;padding-top:64px;padding-bottom:72px}
  section{padding-left:22px !important;padding-right:22px !important}
  .riga{grid-template-columns:1fr;gap:8px;padding:28px 0}
  .due{grid-template-columns:1fr;gap:36px;margin-top:48px}
  .metariga{flex-wrap:wrap;gap:12px 24px;margin-top:44px}
}

/* ---------- h1 per i motori, invisibile a schermo ---------- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
