/* Andromeda Labs: pagine provvisorie (home minima e informativa). Token dal design system
   (brand/design-system/andromeda-labs-design-system.html). Font serviti dal nostro dominio, niente Google Fonts. */
@font-face { font-family: "Montserrat"; font-weight: 400; font-display: swap; src: url("/fonts/Montserrat-Regular.ttf") format("truetype"); }
@font-face { font-family: "Montserrat"; font-weight: 500; font-display: swap; src: url("/fonts/Montserrat-Medium.ttf") format("truetype"); }
@font-face { font-family: "Montserrat"; font-weight: 600; font-display: swap; src: url("/fonts/Montserrat-SemiBold.ttf") format("truetype"); }

:root {
  --inchiostro: #15191C;
  --avorio: #F6F3EC;
  --grigio: #716C62;
  --petrolio: #3F6459;
  --bordo: #DCD7CC;
  --card-bg: #EFECE4;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; }
body { background: var(--avorio); color: var(--inchiostro); font-family: "Montserrat", Arial, sans-serif; font-size: 16px; line-height: 1.65; }
a { color: var(--petrolio); }
a:hover { color: var(--inchiostro); }
code, a { overflow-wrap: anywhere; }

.wrap { max-width: 880px; margin: 0 auto; padding: 0 24px; }
header.top { padding: 32px 0 24px; border-bottom: 1px solid var(--bordo); }
header.top .wrap { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
header.top img { width: 200px; height: auto; display: block; }
header.top nav a { font-size: 14px; font-weight: 500; text-decoration: none; }

main { padding: 56px 0 72px; }
.label { font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--petrolio); margin-bottom: 12px; }
h1 { font-size: clamp(28px, 5vw, 40px); font-weight: 400; line-height: 1.2; margin-bottom: 20px; text-wrap: balance; }
h2 { font-size: 22px; font-weight: 400; line-height: 1.3; margin: 40px 0 12px; }
h3 { font-size: 17px; font-weight: 600; margin: 24px 0 8px; }
p, li { max-width: 68ch; }
p + p { margin-top: 12px; }
ul { padding-left: 20px; margin-top: 8px; }
li + li { margin-top: 6px; }
.lead { font-size: 18px; }
.muted { color: var(--grigio); font-size: 14px; }

.card { background: var(--card-bg); border: 1px solid var(--bordo); border-radius: 6px; padding: 24px; margin-top: 32px; }
.card.highlight { border-left: 4px solid var(--petrolio); }
.card h2 { margin-top: 0; }
.button { display: inline-block; margin-top: 16px; background: var(--petrolio); color: var(--avorio); padding: 12px 22px; border-radius: 4px;
  font-weight: 500; font-size: 15px; text-decoration: none; }
.button:hover { color: var(--avorio); filter: brightness(1.08); }

.en { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--bordo); }
.toc { margin-top: 24px; }

footer.legal { border-top: 1px solid var(--bordo); padding: 20px 0 32px; font-size: 13px; color: var(--grigio); }
footer.legal .wrap { display: flex; justify-content: space-between; gap: 8px 24px; flex-wrap: wrap; }
footer.legal a { color: var(--grigio); }
