

@font-face{font-family:'Besley';src:url('../fonts/Besley-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Besley';src:url('../fonts/Besley-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Besley';src:url('../fonts/Besley-SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Besley';src:url('../fonts/Besley-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/Inter.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';src:url('../fonts/Inter-ext.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  color-scheme: light;

  --paper:      oklch(98.4% .005 82);
  --surface:    oklch(99.5% .002 82);
  --surface-2:  oklch(95.2% .026 84);
  --surface-3:  oklch(92.6% .032 84);
  --rule:       oklch(90%   .018 80);
  --rule-2:     oklch(83.5% .024 80);
  --ink:        oklch(23%   .014 62);
  --fondo-scuro: #000000;
  --ink-2:      oklch(36%   .013 62);

  --muted:      oklch(51%   .018 70);

  --seal:       oklch(62% .086 78);
  --seal-ink:   oklch(44% .092 70);
  --seal-wash:  oklch(92% .048 84);

  --live:       oklch(52% .105 158);
  --live-wash:  oklch(95.5% .028 158);
  --live-ink:   oklch(40% .095 158);

  --plan:       oklch(58% .028 250);
  --plan-wash:  oklch(96% .010 250);
  --plan-ink:   oklch(44% .028 250);

  --late:       oklch(60% .135 58);
  --late-wash:  oklch(95.5% .038 66);
  --late-ink:   oklch(46% .120 52);

  --miss:       oklch(52% .165 32);
  --miss-wash:  oklch(95.5% .034 32);
  --miss-ink:   oklch(44% .155 32);

  --fix:        oklch(50% .140 44);
  --fix-wash:   oklch(95.5% .032 44);

  --cat-1: #2A4E9B;  --cat-2: #A94E17;  --cat-3: #0F6E47;  --cat-4: #8B2976;
  --seq:   oklch(52% .105 158);

  --serif: 'Besley', Georgia, 'Times New Roman', serif;
  --ui: 'Segoe UI Variable Text','Segoe UI',-apple-system,BlinkMacSystemFont,'SF Pro Text',system-ui,'Helvetica Neue',Arial,sans-serif;
  --sans: 'Inter', var(--ui);
  --mono: ui-monospace,'SF Mono','Cascadia Mono','Segoe UI Mono',Menlo,Consolas,monospace;

  --f-xs:   12px;
  --f-sm:   14px;
  --f-md:   17px;
  --f-body: 17px;
  --f-lg:   clamp(19px,   1.6vw, 21px);
  --f-xl:   clamp(21px,   1.9vw, 24px);
  --f-2xl:  clamp(24px,   2.6vw, 32px);
  --f-3xl:  clamp(32px,   4.2vw, 48px);
  --f-4xl:  clamp(40px,   6.6vw, 80px);

  --sp-nota:    12px;
  --sp-vicino:  clamp(26px, 3vw,   42px);
  --sp-dentro:  clamp(20px, 2.4vw, 32px);
  --sp-testa:   clamp(36px, 4.4vw, 68px);
  --sp-lontano: clamp(40px, 4.6vw, 64px);

  --lh-display: 1.08;
  --lh-titolo:  1.14;
  --lh-riga:    1.28;
  --lh-dato:    1.35;
  --lh-lead:  1.38;
  --lh-corpo: 1.47;

  --tr-5xl: -.040em;
  --tr-4xl: -.035em;
  --tr-3xl: -.030em;
  --tr-2xl: -.024em;
  --tr-xl:  -.018em;
  --tr-lg:  -.016em;
  --tr-md:  -.013em;

  --tr-u-lg: -.011em;
  --tr-u-xs:   .01em;
  --tr-corpo: -.022em;

  --tr-caps: .14em;

  --m-somm:  34ch;
  --m-testo: 60ch;
  --m-nota:  70ch;

  --h-ctl-sm: 32px; --h-ctl: 40px; --h-ctl-lg: 52px;

  --r-xs: 6px; --r-sm: 8px; --r-md: 12px; --r-lg: 12px; --r-xl: 18px; --r-2xl: 28px;
  --r-pill: 999px;

  --carta: oklch(95.8% .012 84);

  --tondo:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3C/svg%3E");
  --segno-si: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='%23166B4A' stroke-width='5.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.7 20.4 17.93 25.63 27.3 14.38'/%3E%3C/svg%3E");
  --segno-no: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239C3A22' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E");
  --spunta-si:    oklch(92% .075 158);
  --spunta-no:    oklch(91% .080 32);
  --spunta-forse: oklch(92% .050 250);
  --anello-si:    inset 0 0 0 1.25px oklch(52% .105 158/.5);
  --anello-no:    inset 0 0 0 1.25px oklch(52% .165 32/.5);
  --anello-forse: inset 0 0 0 1.25px oklch(58% .028 250/.5);

  --lift-1: 0 1px 2px -1px oklch(23% .014 62 / .10), 0 2px 6px -2px oklch(23% .014 62 / .06);
  --lift-2: 0 2px 4px -2px oklch(23% .014 62 / .10), 0 10px 24px -8px oklch(23% .014 62 / .14);
  --lift-3: 0 4px 8px -4px oklch(23% .014 62 / .12), 0 26px 60px -20px oklch(23% .014 62 / .26);
  --fuoco: var(--seal-ink);
  --ring: 0 0 0 3px oklch(62% .086 78 / .30);

  --e-quint: cubic-bezier(.22, 1, .36, 1);
  --e-quart: cubic-bezier(.25, 1, .5, 1);
  --e-expo:  cubic-bezier(.16, 1, .3, 1);
  --e-io:    cubic-bezier(.65, 0, .35, 1);
  --t-fast: 130ms;
  --t-base: 190ms;
  --t-slow: 300ms;
  --t-exit: 130ms;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--ui);
  font-size:15px;line-height:1.5;font-synthesis-weight:none}
h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
table{border-collapse:collapse;width:100%}
h1,h2,h3,h4{text-wrap:balance;font-weight:600}
p,li,dd,figcaption{text-wrap:pretty}
:focus{outline:none}
:focus-visible{outline:2px solid var(--fuoco);outline-offset:2px;border-radius:var(--r-xs)}

.num,td,th,time,input[type="time"],input[type="number"],.tnum{font-variant-numeric:tabular-nums}

.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}

::selection{background:var(--seal-wash);color:var(--ink)}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:1ms !important;
    animation-iteration-count:1 !important;
    transition-duration:1ms !important;
    scroll-behavior:auto !important;
  }
}
