:root{
  --ink:#07090e;--rail:#0d1220;--rail-2:#121a2c;--line:rgba(147,160,180,.14);
  --text:#eef2f8;--mut:#93a0b4;--dawn-a:#6f9bff;--dawn-c:#4f7cff;--alt:#7dd6ff;
  --dawn-grad:linear-gradient(92deg,#4f7cff 0%,#6f9bff 55%,#b9d9ff 100%);
  --r-lg:20px;--r-md:14px;--r-sm:9px;
  --disp:'Unbounded',sans-serif;--body:'Sora',sans-serif;--mono:'Space Mono',monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{overflow-x:hidden;scroll-behavior:smooth}
body{background:var(--ink);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.7;overflow-x:hidden;width:100%;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}

/* nav */
nav{position:sticky;top:0;z-index:50;background:rgba(7,9,14,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{font-family:var(--disp);font-weight:700;font-size:17px;letter-spacing:.04em;display:flex;align-items:center;gap:10px}
.logo-img{height:26px;width:auto;display:inline-block;vertical-align:middle}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:999px;font-family:var(--body);font-weight:600;font-size:14px;cursor:pointer;transition:transform .2s,box-shadow .2s;border:none}
.btn-dawn{background:var(--dawn-grad);color:#081334;box-shadow:0 6px 24px rgba(79,124,255,.35)}
.btn-dawn:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(79,124,255,.5)}

/* page header */
.page-head{padding:74px 0 42px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.page-head::before{content:"";position:absolute;inset:auto -20% -60% -20%;height:90%;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 50% 100%,rgba(79,124,255,.16),transparent 68%);pointer-events:none}
.page-head .inner{position:relative;z-index:1}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--dawn-a);margin-bottom:16px;display:block}
.page-head h1{font-family:var(--disp);font-weight:700;font-size:clamp(30px,5vw,48px);line-height:1.08;letter-spacing:-.02em}
.page-head .sub{color:var(--mut);font-size:17px;margin-top:16px;max-width:620px}
.updated{color:var(--mut);font-size:12px;font-family:var(--mono);margin-top:20px}

/* prose */
/* [MOBILE-FIX] padding orizzontale: prima era 0 → sotto i 760px il testo toccava
   i bordi. max-width 808 = 760 di colonna + 2×24 di padding: desktop identico al pixel. */
.prose{max-width:808px;margin:0 auto;padding:54px 24px 80px}
.prose h2{font-family:var(--disp);font-weight:700;font-size:22px;margin:42px 0 14px;letter-spacing:-.01em}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:17px;font-weight:600;margin:26px 0 10px}
.prose p{color:var(--mut);margin-bottom:16px}
.prose ul{color:var(--mut);margin:0 0 16px 20px}
.prose li{margin-bottom:8px}
.prose a{color:var(--dawn-a)}
.prose a:hover{color:var(--alt)}
.prose strong{color:var(--text)}
.note{background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 20px;margin:24px 0;color:var(--mut);font-size:14px}
.note strong{color:var(--dawn-a)}
.lede{font-size:19px;color:var(--text);line-height:1.7;margin-bottom:24px}

/* about values */
.vals{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0}
.val{background:linear-gradient(165deg,rgba(255,255,255,.025),rgba(255,255,255,.008));border:1px solid var(--line);border-radius:var(--r-md);padding:24px}
.val h3{font-size:16px;font-weight:600;margin:0 0 8px}
.val p{color:var(--mut);font-size:14px;margin:0}
.cta-band{text-align:center;padding:56px 24px;margin-top:8px;border-top:1px solid var(--line)}
.cta-band h2{font-family:var(--disp);font-weight:700;font-size:clamp(24px,4vw,34px);margin-bottom:20px}
@media(max-width:640px){.vals{grid-template-columns:1fr}}

/* footer (shared with landing) */
footer{border-top:1px solid var(--line);padding:64px 0 30px;color:var(--mut);font-size:13px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.foot-brand{max-width:290px}
.foot-brand .logo{margin-bottom:14px}
.foot-tag{color:var(--mut);font-size:13px;line-height:1.6;margin-bottom:18px}
.foot-social{display:flex;gap:10px}
.foot-social a{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--mut);transition:color .2s,border-color .2s}
.foot-social a:hover{color:var(--text);border-color:rgba(255,255,255,.3)}
.foot-social svg{width:15px;height:15px}
.foot-col h4{color:var(--text);font-size:11px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:15px;font-weight:600}
.foot-col a{display:block;color:var(--mut);margin-bottom:11px;transition:color .2s}
.foot-col a:hover{color:var(--text)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:46px;padding-top:24px;border-top:1px solid var(--line);font-size:12px}
.foot-bottom .logo-img,.foot-brand .logo-img{height:20px}
@media(max-width:640px){.foot-grid{grid-template-columns:1fr 1fr;gap:30px}.foot-brand{grid-column:1/-1;max-width:none}}

/* ═══ [MOBILE-FIX] Rifiniture ≤640px ═══
   1) h1: Unbounded è larghissimo — "infrastructure," a 30px non entra nei ~312px
      utili di un iPhone. clamp più aggressivo + <br> disattivato (torna a capo
      naturale) + hyphens come rete di sicurezza sugli schermi da 320px.
   2) nav compatta: logo + CTA convivono senza toccarsi a 360px.
   3) ritmi verticali ridotti: la prima schermata mostra titolo E sottotitolo. */
@media(max-width:640px){
  .nav-in{height:60px}
  .logo{font-size:15px;gap:8px}
  .nav-in .btn{padding:9px 16px;font-size:13px}
  .page-head{padding:46px 0 32px}
  .page-head h1{font-size:clamp(23px,7vw,48px);hyphens:auto;overflow-wrap:break-word}
  .page-head h1 br{display:none}
  .page-head .sub{font-size:15.5px}
  .prose{padding:38px 22px 60px}
  .lede{font-size:17px}
  .prose h2{font-size:20px}
  .val{padding:20px}
  .cta-band{padding:44px 20px}
  .cta-band h2{font-size:clamp(21px,6vw,34px)}
}
