/* =====================================================================
   L'OFFICINA DELLA LUNA — foglio di stile unico del sito
   Direzione "Effemeride". Caricato una volta sola dal tema figlio.
   Prefisso .odl- per il sito, .lf-cl- per i moduli di calcolo.
   ===================================================================== */

:root{
  --carta:#f4efe4;
  --scheda:#fffdf9;
  --inchiostro:#171613;
  --grafite:#6b6659;
  --linea:rgba(23,22,19,0.16);
  --linea-tenue:rgba(23,22,19,0.09);
  --indaco:#26386f;
  --indaco-scuro:#1a2a57;
  --ocra:#8f6318;
  --oro:#c8a86a;
  --notte:#12120f;
  --gutter:clamp(20px,4.5vw,64px);
  --max:1280px;
  --testo:820px;
}

.odl,.odl *,.odl *::before,.odl *::after{box-sizing:border-box}
.odl{
  background:var(--carta);color:var(--inchiostro);
  font-family:'Libre Franklin',sans-serif;font-weight:300;font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;overflow-x:clip;position:relative;
}
.odl img{display:block;max-width:100%}
.odl :where(h1,h2,h3,h4){margin:0;font-weight:400}
.odl :where(p){margin:0}
.odl a{color:var(--indaco)}
.odl ::selection{background:var(--indaco);color:#fff}
.odl em{font-style:italic}

.odl-wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter);position:relative;z-index:1}
.odl-mono{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:0.26em;text-transform:uppercase}

/* trama di carta, appena percettibile */
.odl-trama{position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:repeating-linear-gradient(0deg,rgba(23,22,19,0.022) 0 1px,transparent 1px 7px)}

/* ===== BARRA ===== */
.odl-bar{position:sticky;top:0;z-index:40;background:rgba(244,239,228,0.92);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--linea)}
.odl-bar__in{max-width:var(--max);margin:0 auto;padding:14px var(--gutter);display:flex;align-items:center;gap:32px}
.odl-marchio{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;flex-shrink:0}
.odl-marchio__t{font-family:'EB Garamond',serif;font-size:21px;line-height:1;letter-spacing:-0.01em}
.odl-nav{display:flex;gap:26px;font-size:15px}
.odl-nav a{color:var(--inchiostro);text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent;transition:border-color .2s}
.odl-nav a:hover{border-color:var(--inchiostro)}
.odl-bar__cta{margin-left:auto;display:inline-flex;align-items:center;font-family:'IBM Plex Mono',monospace;
  font-size:11px;letter-spacing:0.18em;text-transform:uppercase;text-decoration:none;
  color:#fff !important;background:var(--indaco);padding:11px 18px;transition:background .25s}
.odl-bar__cta:hover{background:var(--indaco-scuro)}
@media(max-width:900px){.odl-nav{display:none}}

/* ===== BOTTONI ===== */
.odl-btn{display:inline-flex;align-items:center;gap:10px;font-family:'IBM Plex Mono',monospace;font-size:11px;
  letter-spacing:0.18em;text-transform:uppercase;text-decoration:none;padding:13px 20px;
  border:1px solid var(--indaco);color:var(--indaco);background:transparent;transition:background .25s,color .25s;cursor:pointer}
.odl-btn:hover{background:var(--indaco);color:#fff}
.odl-btn--pieno{background:var(--indaco);color:#fff !important}
.odl-btn--pieno:hover{background:var(--indaco-scuro)}
.odl-btn--oro{border-color:var(--oro);background:var(--oro);color:var(--notte) !important}
.odl-btn--oro:hover{background:#dcc08a;border-color:#dcc08a}

/* ===== APERTURA ===== */
.odl-hero{padding:clamp(56px,9vw,124px) 0 clamp(40px,5vw,64px)}
.odl-hero__eyebrow{color:var(--ocra);margin-bottom:26px}
.odl-hero__t{font-family:'EB Garamond',serif;font-size:clamp(46px,6.2vw,88px);line-height:1;letter-spacing:-0.022em;max-width:17ch}
.odl-hero__t em{color:var(--indaco)}
.odl-hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(30px,4vw,64px);
  align-items:start;margin-top:clamp(22px,3vw,38px)}
@media(max-width:940px){.odl-hero__grid{grid-template-columns:1fr;gap:34px}}
.odl-hero__lead{font-size:clamp(17px,1.35vw,19.5px);line-height:1.62;color:#3b382f;max-width:48ch}
.odl-hero__aside{border-left:1px solid var(--linea);padding-left:clamp(20px,2.4vw,32px)}
.odl-hero__aside p{font-family:'EB Garamond',serif;font-style:italic;font-size:19px;line-height:1.5;color:#4a463c}
.odl-hero__aside .odl-mono{display:block;margin-top:18px;color:var(--grafite);font-size:10.5px}

/* ===== RICERCA ===== */
.odl-cerca{margin-top:clamp(36px,4.5vw,56px)}
.odl-cerca__box{display:flex;align-items:center;gap:16px;background:var(--scheda);border:1px solid var(--inchiostro);
  padding:clamp(14px,1.6vw,20px) clamp(18px,2vw,26px);transition:box-shadow .25s}
.odl-cerca__box:focus-within{box-shadow:0 0 0 3px rgba(38,56,111,0.18)}
.odl .odl-cerca__box input{flex:1;min-width:0;border:0 !important;outline:0 !important;box-shadow:none !important;
  background:transparent !important;font-family:'EB Garamond',serif !important;font-size:clamp(21px,2.3vw,30px);
  color:var(--inchiostro) !important;-webkit-text-fill-color:var(--inchiostro) !important;padding:0 !important;height:auto !important}
.odl .odl-cerca__box input::placeholder{color:#a39c8c}
.odl-cerca__n{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.16em;color:var(--grafite);white-space:nowrap}
.odl-chips{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.odl-chips .odl-mono{color:var(--grafite);margin-right:6px;font-size:10.5px}
.odl-chip{font-family:'Libre Franklin',sans-serif;font-size:14px;color:#3b382f;background:transparent;
  border:1px solid var(--linea);border-radius:100px;padding:7px 15px;cursor:pointer;transition:border-color .2s,background .2s}
.odl-chip:hover{border-color:var(--inchiostro);background:rgba(23,22,19,0.04)}

/* ===== TAVOLE FOTOGRAFICHE ===== */
.odl-tavola{margin:clamp(48px,6vw,88px) 0 0;background:var(--notte);position:relative;z-index:1}
.odl-tavola__img{width:100%;height:clamp(300px,42vw,560px);object-fit:cover;object-position:center 42%}
.odl-tavola__cap{max-width:var(--max);margin:0 auto;padding:16px var(--gutter) 22px;display:flex;
  justify-content:space-between;gap:24px;flex-wrap:wrap}
.odl-tavola__cap span{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.2em;
  text-transform:uppercase;color:rgba(244,239,228,0.6)}
.odl-tavola__cap strong{color:rgba(244,239,228,0.92);font-weight:400}
.odl-duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.6vw,22px)}
@media(max-width:700px){.odl-duo{grid-template-columns:1fr}}
.odl-duo figure{margin:0;background:var(--notte)}
.odl-duo img{width:100%;aspect-ratio:3/2;object-fit:cover}
.odl-duo figcaption{padding:12px 16px 16px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;
  letter-spacing:0.18em;text-transform:uppercase;color:rgba(244,239,228,0.62)}

/* ===== SEZIONI ===== */
.odl-sez{padding:clamp(56px,7.5vw,110px) 0}
.odl-sez__head{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:clamp(24px,3vw,56px);
  align-items:baseline;margin-bottom:clamp(32px,4vw,56px)}
@media(max-width:860px){.odl-sez__head{grid-template-columns:1fr;gap:14px}}
.odl-sez__n{color:var(--ocra)}
.odl-sez__t{font-family:'EB Garamond',serif;font-size:clamp(34px,4.6vw,60px);line-height:1.04;letter-spacing:-0.018em}
.odl-sez__t em{color:var(--indaco)}
.odl-sez__lead{margin-top:18px;color:#45413a;max-width:56ch}

/* ===== ELENCHI DI STRUMENTI ===== */
.odl-fam+.odl-fam{margin-top:clamp(40px,4.4vw,64px)}
.odl-fam__head{display:flex;align-items:baseline;gap:18px;padding-bottom:12px;border-bottom:1px solid var(--inchiostro)}
.odl-fam__nome{font-family:'EB Garamond',serif;font-size:26px;line-height:1}
.odl-fam__c{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.18em;color:var(--grafite);margin-left:auto}
.odl-lista{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(28px,3.4vw,56px)}
@media(max-width:820px){.odl-lista{grid-template-columns:1fr}}
.odl-voce{display:grid;grid-template-columns:38px 1fr 22px;gap:14px;align-items:baseline;padding:19px 0;
  border-bottom:1px solid var(--linea-tenue);text-decoration:none;color:inherit;transition:padding-left .25s}
.odl-voce:hover{padding-left:8px}
.odl-voce__n{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#a39c8c}
.odl-voce__t{display:block;font-family:'EB Garamond',serif;font-size:24px;line-height:1.25}
.odl-voce:hover .odl-voce__t{color:var(--indaco)}
.odl-voce__d{display:block;font-size:14.5px;line-height:1.5;color:var(--grafite);margin-top:5px}
.odl-voce__a{font-family:'EB Garamond',serif;font-size:20px;color:#bdb5a4;transition:transform .25s,color .25s}
.odl-voce:hover .odl-voce__a{transform:translateX(5px);color:var(--indaco)}
.odl-voce__tag{display:inline-block;margin-left:10px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;
  letter-spacing:0.14em;text-transform:uppercase;color:var(--ocra);border:1px solid rgba(143,99,24,0.4);
  padding:2px 7px;vertical-align:middle}

/* ===== BRICIOLE E TESTATA DI PAGINA ===== */
.odl-bric{padding-top:26px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--grafite)}
.odl-bric a{color:var(--grafite);text-decoration:none}
.odl-bric a:hover{color:var(--indaco)}
.odl-bric span{margin:0 8px;color:#b5ad9c}
.odl-testata{padding:clamp(26px,3.4vw,44px) 0}
.odl-testata h1{font-family:'EB Garamond',serif;font-size:clamp(38px,5vw,66px);line-height:1.04;
  letter-spacing:-0.022em;max-width:22ch}
.odl-testata h1 em{font-style:italic;color:var(--indaco)}
.odl-testata__lead{margin-top:24px;font-size:clamp(17px,1.35vw,19.5px);line-height:1.62;color:#3b382f;max-width:62ch}

/* =====================================================================
   MODULI DI CALCOLO
   ===================================================================== */
.odl-strumento{background:var(--scheda);border:1px solid var(--linea);padding:clamp(26px,3.4vw,48px)}
.odl-modulo+.odl-modulo{margin-top:clamp(34px,4vw,54px);padding-top:clamp(30px,3.4vw,44px);border-top:1px solid var(--linea)}
.odl-modulo__k{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:0.24em;text-transform:uppercase;
  color:var(--indaco);margin-bottom:12px}
.odl-modulo__h{font-family:'EB Garamond',serif;font-size:clamp(26px,2.8vw,34px);line-height:1.12;margin-bottom:12px}
.odl-modulo__h em{font-style:italic;color:var(--indaco)}
.odl-modulo__d{font-size:15.5px;line-height:1.7;color:#45413a;max-width:66ch;margin-bottom:clamp(22px,2.4vw,30px)}

.lf-cl-tool{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,350px);gap:clamp(26px,3.4vw,52px);align-items:start}
@media(max-width:820px){.lf-cl-tool{grid-template-columns:1fr}}
.lf-cl-in{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px clamp(20px,2.4vw,32px);align-content:start}
@media(max-width:560px){.lf-cl-in{grid-template-columns:1fr}}
.lf-cl-f{display:flex;flex-direction:column;gap:8px}
.lf-cl-f__label{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:var(--grafite)}
.lf-cl-f__box{display:flex;align-items:baseline;gap:8px;border-bottom:1.5px solid var(--inchiostro);padding-bottom:8px}
.lf-cl-f__box:focus-within{border-color:var(--indaco)}

/* blindatura contro i fogli di stile del tema: senza !important il tema
   impone fondo bianco e il testo sparisce */
.odl .lf-cl-f__box input.lf-cl-inp,.odl .lf-cl-f__box select.lf-cl-inp{
  flex:1;min-width:0;width:100%;
  background:transparent !important;background-color:transparent !important;background-image:none !important;
  border:0 !important;outline:0 !important;box-shadow:none !important;
  color:var(--inchiostro) !important;-webkit-text-fill-color:var(--inchiostro) !important;
  opacity:1 !important;filter:none !important;text-shadow:none !important;
  font-family:'EB Garamond',serif !important;font-weight:400 !important;font-size:26px;line-height:1.25;
  padding:0 !important;margin:0 !important;border-radius:0 !important;height:auto !important;min-height:0 !important;
  -webkit-appearance:none;-moz-appearance:none;appearance:none}
.odl .lf-cl-f__box select.lf-cl-inp{font-size:18px;cursor:pointer}
.odl .lf-cl-f__box select.lf-cl-inp option{background:var(--scheda);color:var(--inchiostro);font-family:'Libre Franklin',sans-serif}
/* il valore precaricato è un esempio: smorzato finché non lo tocchi */
.odl .lf-cl-f__box input.lf-cl-inp.is-hint,.odl .lf-cl-f__box select.lf-cl-inp.is-hint{
  color:#a39c8c !important;-webkit-text-fill-color:#a39c8c !important}
.odl .lf-cl-f__box input.lf-cl-inp:focus,.odl .lf-cl-f__box select.lf-cl-inp:focus{
  color:var(--inchiostro) !important;-webkit-text-fill-color:var(--inchiostro) !important;background:transparent !important}
.odl .lf-cl-f__box input.lf-cl-inp:-webkit-autofill{
  -webkit-text-fill-color:var(--inchiostro) !important;
  -webkit-box-shadow:0 0 0 1000px var(--scheda) inset !important;
  transition:background-color 99999s ease-in-out 0s}
.lf-cl-f__unit{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--grafite);white-space:nowrap}
.lf-cl-f__arrow{color:var(--indaco);font-size:11px;line-height:1}
.lf-cl-f__help{font-size:13px;line-height:1.5;color:var(--grafite)}

.lf-cl-out{border:1px solid var(--indaco);padding:clamp(22px,2.4vw,30px);background:var(--carta);
  display:flex;flex-direction:column;gap:16px}
.lf-cl-out__head{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--indaco)}
.lf-cl-big__l{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:0.16em;text-transform:uppercase;
  color:var(--grafite);margin-bottom:10px}
.lf-cl-big__v{font-family:'EB Garamond',serif;font-size:clamp(52px,5.6vw,72px);line-height:0.92;letter-spacing:-0.02em}
.lf-cl-big__v.is-empty{font-size:32px;opacity:.3}
.lf-cl-big__u{font-size:14px;color:var(--grafite);margin-top:6px}
.lf-cl-rows{display:flex;flex-direction:column}
.lf-cl-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;
  border-top:1px solid rgba(38,56,111,0.18);font-size:14.5px;color:#45413a}
.lf-cl-row__v{font-family:'EB Garamond',serif;font-size:19px;color:var(--inchiostro);text-align:right;white-space:nowrap}
.lf-cl-row__v span{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--grafite);margin-left:6px}
.lf-cl-verdict{align-self:flex-start;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:0.12em;
  text-transform:uppercase;padding:9px 14px;background:var(--indaco);color:#fff;line-height:1.4}
.lf-cl-verdict.is-warn{background:var(--ocra)}
.lf-cl-verdict.is-far{background:#a33f18}
.lf-cl-verdict.is-wait{background:transparent;color:var(--grafite);border:1px solid var(--linea)}

/* ===== RICHIAMO AI SERVIZI ===== */
.odl-richiamo{margin-top:clamp(24px,2.8vw,36px);padding-top:22px;border-top:1px solid var(--linea);
  display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.odl-richiamo p{font-family:'EB Garamond',serif;font-style:italic;font-size:19px;line-height:1.5;color:#45413a;max-width:56ch}

/* ===== CORPO REDAZIONALE ===== */
.odl-testo{max-width:var(--testo);padding:clamp(48px,6vw,84px) 0 0}
.odl-testo h2{font-family:'EB Garamond',serif;font-size:clamp(30px,3.8vw,46px);line-height:1.08;
  letter-spacing:-0.018em;margin-bottom:22px}
.odl-testo h2:not(:first-child){margin-top:clamp(40px,5vw,68px)}
.odl-testo h2 em{font-style:italic;color:var(--indaco)}
.odl-testo h3{font-family:'EB Garamond',serif;font-size:clamp(22px,2.2vw,27px);line-height:1.2;margin:34px 0 12px}
.odl-testo p{color:#33302a;line-height:1.78}
.odl-testo p+p{margin-top:16px}
.odl-testo strong{font-weight:500;color:var(--inchiostro)}
.odl-formula{margin:28px 0;background:var(--scheda);border:1px solid var(--linea);padding:clamp(22px,2.6vw,34px)}
.odl-formula__f{font-family:'IBM Plex Mono',monospace;font-size:clamp(15px,1.5vw,19px);line-height:1.7;color:var(--inchiostro)}
.odl-formula__d{margin-top:20px;display:grid;grid-template-columns:auto 1fr;gap:10px 18px;font-size:14.5px;
  color:#45413a;align-items:baseline}
.odl-formula__d dt{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--indaco);white-space:nowrap}
.odl-formula__d dd{margin:0}
@media(max-width:560px){.odl-formula__d{grid-template-columns:1fr;gap:4px 0}.odl-formula__d dd{margin-bottom:12px}}
.odl-esempi{margin:30px 0;border-top:1px solid var(--inchiostro)}
.odl-esempio{padding:22px 0;border-bottom:1px solid var(--linea-tenue)}
.odl-esempio__t{font-family:'EB Garamond',serif;font-size:22px;margin-bottom:6px}
.odl-esempio__c{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--indaco);margin-bottom:10px}
.odl-esempio p{font-size:15.5px;line-height:1.7;color:#45413a}
.odl-avvertenza{margin:30px 0;background:rgba(143,99,24,0.07);border:1px solid rgba(143,99,24,0.3);padding:22px 26px}
.odl-avvertenza p{font-size:15.5px;line-height:1.72;color:#3d3a34}
.odl-errori{margin-top:8px;border-top:1px solid var(--inchiostro)}
.odl-errore{display:grid;grid-template-columns:38px 1fr;gap:16px;padding:20px 0;
  border-bottom:1px solid var(--linea-tenue);align-items:baseline}
.odl-errore__n{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#a39c8c}
.odl-errore__t{font-family:'EB Garamond',serif;font-size:21px;line-height:1.25;margin-bottom:7px}
.odl-errore p{font-size:15.5px;line-height:1.7;color:#45413a}

/* ===== CHI C'È DIETRO ===== */
.odl-chi{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:clamp(30px,4vw,68px);align-items:start}
@media(max-width:820px){.odl-chi{grid-template-columns:1fr}}
.odl-chi__ritratto{aspect-ratio:4/5;object-fit:cover;object-position:42% 40%;width:100%}
.odl-chi__t{font-family:'EB Garamond',serif;font-size:clamp(30px,3.6vw,46px);line-height:1.08;
  letter-spacing:-0.015em;margin-bottom:22px}
.odl-chi__t em{color:var(--indaco)}
.odl-chi p{color:#3b382f;line-height:1.75}
.odl-chi p+p{margin-top:15px}
.odl-servizi{margin-top:32px;border-top:1px solid var(--inchiostro)}
.odl-serv{display:grid;grid-template-columns:34px 1fr auto;gap:16px;align-items:baseline;padding:16px 0;
  border-bottom:1px solid var(--linea-tenue);text-decoration:none;color:inherit;transition:padding-left .25s}
.odl-serv:hover{padding-left:8px}
.odl-serv__n{font-family:'IBM Plex Mono',monospace;font-size:11px;color:#a39c8c}
.odl-serv__t{display:block;font-family:'EB Garamond',serif;font-size:23px;line-height:1.25}
.odl-serv:hover .odl-serv__t{color:var(--indaco)}
.odl-serv__d{display:block;font-size:14px;color:var(--grafite);margin-top:4px}
.odl-serv__a{font-family:'EB Garamond',serif;font-size:19px;color:#bdb5a4}
.odl-serv:hover .odl-serv__a{color:var(--indaco)}

/* ===== NEWSLETTER ===== */
.odl-news{background:var(--notte);color:#f4efe4}
.odl-news__in{max-width:var(--max);margin:0 auto;padding:clamp(44px,5.4vw,80px) var(--gutter);
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(28px,4vw,64px);align-items:center}
@media(max-width:820px){.odl-news__in{grid-template-columns:1fr}.odl-news .odl-btn{width:100%;justify-content:center}}
.odl-news__t{font-family:'EB Garamond',serif;font-size:clamp(28px,3.4vw,44px);line-height:1.1;margin:14px 0}
.odl-news__t em{font-style:italic;color:var(--oro)}
.odl-news p{color:rgba(244,239,228,0.78);max-width:56ch}
.odl-news .odl-mono{color:var(--oro)}

/* ===== LIBRI ===== */
.odl-libri{display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr);gap:clamp(26px,3.4vw,48px);align-items:center}
@media(max-width:700px){.odl-libri{grid-template-columns:1fr}}
.odl-libri img{width:100%;border:1px solid var(--linea)}

/* ===== COLLEGATI ===== */
.odl-collegati{padding:clamp(48px,6vw,84px) 0 0}
.odl-collegati__t{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;
  color:var(--grafite);margin-bottom:18px}
.odl-collegati .odl-lista{border-top:1px solid var(--inchiostro)}

/* ===== PIÈ DI PAGINA ===== */
.odl-pie{border-top:1px solid var(--linea);padding:clamp(40px,5vw,72px) 0 32px;font-size:15px}
.odl-pie__grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px)}
@media(max-width:820px){.odl-pie__grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.odl-pie__grid{grid-template-columns:1fr}}
.odl-pie h4{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:0.22em;text-transform:uppercase;
  color:var(--grafite);margin-bottom:16px}
.odl-pie ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.odl-pie a{color:#3b382f;text-decoration:none}
.odl-pie a:hover{color:var(--indaco)}
.odl-pie__nota{margin-top:36px;padding-top:20px;border-top:1px solid var(--linea-tenue);display:flex;
  justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace;font-size:10.5px;
  letter-spacing:0.14em;text-transform:uppercase;color:var(--grafite)}

/* etichetta nascosta ma leggibile dagli screen reader */
.odl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
