@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-JEOLYBOO.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-EOVOK2B5.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-IRE366VL.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-HA22NDSG.woff2") format("woff2-variations");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}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-NRMW37G5.woff2") format("woff2-variations");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}:root{color-scheme:dark;--bg: #0A0908;--tile: #141210;--surface: #1A1816;--surface-2: #211E1B;--ink: #F7F5F2;--muted: #ABA59D;--accent: #FF6A00;--on-accent: #0B0908;--link: #00F0FF;--field-border: #6E675F;--text-dim: #6B655D;--hair: #2A2622;--chip: #2B2824;--bar: #3A3631;--frame: #3A3631;--accent-hover: #FF8533;--accent-tint: #331604;--dark: #0B0A09;--dark-tile: #181512;--on-dark: #F6F5FB;--on-dark-muted: #BDB7AE;--field-border-hover: #8A8379;--field-placeholder: #8F887F;--danger: #FF8A7A;--danger-bg: #3A1714;--late-fg: #FF9C8F;--late-bg: #3A1714;--ok: var(--link);--nav-bg: rgba(10, 9, 8, .72);--nav-line: rgba(255, 255, 255, .08);--glow: 0 0 28px rgba(255, 106, 0, .7);--shadow-plate: 0 50px 70px -40px rgba(0, 0, 0, .5);--shadow-pop: 0 18px 40px -16px rgba(0, 0, 0, .5);--shadow-soft: 0 12px 30px -14px rgba(0, 0, 0, .18);--shadow-float: 0 12px 30px -12px rgba(0, 0, 0, .6);--highlight-top: inset 0 1px 0 rgba(255, 255, 255, .14);--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 22px;--r-xl: 28px;--r-full: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--space-11: 96px;--space-12: 128px;--gutter: var(--space-6);--section-pad: clamp(var(--space-11), 11cqi, var(--space-12));--page-head-top: clamp(var(--space-10), 9cqi, var(--space-11));--page-head-bottom: clamp(var(--space-9), 6cqi, var(--space-10));--final-pad: clamp(var(--space-10), 8cqi, var(--space-11));--sticky-top: calc(var(--nav-h) + var(--space-6));--nav-h: 52px;--control-h: 44px;--control-h-sm: 32px;--filter-h: 40px;--field-h: 48px;--menu-item-h: 52px;--est-mini-h: 72px;--icon-btn: 36px;--wrap-max: 1080px;--wide-max: 1240px;--stroke-idea: 1.5px;--focus-ring: 2px;--focus-offset: 3px;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter Variable", Inter, system-ui, sans-serif;--fs-micro: .6875rem;--fs-caption: .75rem;--fs-label: .8125rem;--fs-ui: .875rem;--fs-body-sm: .9375rem;--fs-body-md: 1rem;--fs-body: 1.0625rem;--fs-lead-sm: 1.125rem;--fs-card: 1.1875rem;--fs-menu: 1.25rem;--fs-item: 1.3125rem;--fs-title-sm: 1.375rem;--fs-stat: 1.75rem;--fs-section-sm: 2rem;--fs-display: clamp(3rem, 7.2cqi, 5.75rem);--fs-hero: clamp(2.6rem, 6cqi, 4.6rem);--fs-h2: clamp(2.25rem, 5cqi, 3.5rem);--fs-h3: clamp(1.375rem, 2.4cqi, 1.75rem);--fs-h3-tile: clamp(1.625rem, 2.6cqi, 2rem);--fs-sub: clamp(1.1875rem, 2cqi, 1.5rem);--fs-question: clamp(1.625rem, 3cqi, 2.125rem);--fs-estimate: clamp(1.75rem, 3.4cqi, 2.25rem);--fs-ribbon: clamp(1.25rem, 2.4cqi, 1.75rem);--lh-display: 1.04;--lh-h2: 1.07;--lh-h3-tile: 1.12;--lh-h3: 1.15;--lh-title: 1.25;--lh-card: 1.3;--lh-sub: 1.38;--lh-body: 1.47;--tracking-display: -.04em;--tracking-h2: -.035em;--tracking-h3: -.025em;--tracking-title: -.02em;--tracking-sub: -.015em;--tracking-body: -.01em;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-out-soft: cubic-bezier(.2, .8, .2, 1);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-back: cubic-bezier(.34, 1.56, .64, 1);--ease-back-soft: cubic-bezier(.34, 1.4, .64, 1);--dur-press: .1s;--dur-word: .15s;--dur-hover: .2s;--dur-quick: .3s;--dur-state: .35s;--dur-fade: .4s;--dur-reveal: .6s;--dur-settle: .9s;--dur-assemble: 1.5s;--dur-story: 3s;--dur-ribbon: 40s}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-block-start:calc(var(--nav-h) + var(--space-4))}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}.pg{position:relative;container-type:inline-size;display:flex;flex-direction:column;min-height:100dvh;color:var(--ink);background:var(--bg);font-family:var(--font-sans);font-optical-sizing:auto;font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--tracking-body)}.pg:before{content:"";position:absolute;inset:0;z-index:60;pointer-events:none;background-image:url(/grain.svg);background-size:220px 220px;opacity:.05}.wrap{max-width:var(--wrap-max);margin-inline:auto;padding-inline:var(--gutter)}.wide{max-width:var(--wide-max);margin-inline:auto;padding-inline:var(--gutter)}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.15em}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:var(--focus-ring) solid var(--link);outline-offset:var(--focus-offset)}:where([tabindex="-1"]):focus-visible{outline:none}:where(a:focus-visible){border-radius:var(--r-sm)}.skip-link{position:absolute;inset-block-start:var(--space-2);inset-inline-start:var(--space-2);z-index:70;display:inline-flex;align-items:center;min-height:var(--control-h);padding:0 var(--space-6);border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);font-weight:600;translate:0 calc(-100% - var(--space-4))}.skip-link:focus-visible{translate:none}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}.pill{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-6);border:0;border-radius:var(--r-full);font:inherit;font-size:var(--fs-body);font-weight:500;letter-spacing:var(--tracking-body);cursor:pointer;transition:background-color var(--dur-hover) ease,transform var(--dur-press) ease-out}.pill:hover{text-decoration:none}.pill:active{transform:scale(.97)}.pill-primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--glow)}.pill-primary:hover{background:var(--accent-hover)}.pill-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--hair)}.pill-ghost:hover{background:var(--surface-2)}.pill-sm{min-height:var(--control-h-sm);padding:0 var(--space-4);font-size:var(--fs-label)}.pill[aria-disabled=true]{opacity:.7;cursor:progress}.chev:after{content:"\a0\203a"}.hero-ctas{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-5)}@container (max-width: 520px){.hero-ctas{flex-direction:column}.hero-ctas .pill{width:100%}}.display{margin:0;font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--tracking-display);font-weight:700;text-wrap:balance}.h2{margin:0;font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:var(--tracking-h2);font-weight:700;text-wrap:balance}.h3{margin:0;font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--tracking-h3);font-weight:700;text-wrap:balance}.sub{margin:0;font-size:var(--fs-sub);line-height:var(--lh-sub);letter-spacing:var(--tracking-sub);color:var(--muted);font-weight:500;text-wrap:pretty}.label{font-size:var(--fs-label);font-weight:600;color:var(--muted)}.center{text-align:center}.center .sub{margin-inline:auto;max-width:34em}.sec{padding-block:var(--section-pad)}.sec-head{margin-bottom:var(--space-10)}.sec-head .sub{margin-top:var(--space-4)}.page-head{padding:var(--page-head-top) 0 var(--page-head-bottom);text-align:center}.page-head .sub{margin:var(--space-5) auto 0;max-width:34em}.page-head .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4);margin-top:var(--space-7)}.mstack{--s: 22px;position:relative;display:inline-block;flex:none;width:var(--s);height:var(--s);transform-style:preserve-3d;transform:rotateX(57deg) rotate(-40deg)}.mstack i{position:absolute;inset:0;border-radius:calc(var(--s) * .2);background:var(--bar);border:1px solid var(--hair);transform:translateZ(calc(var(--i) * var(--s) * .36))}.mstack i.on{background:var(--accent);border-color:var(--accent)}.mstack i.idea{background:transparent;border:var(--stroke-idea) dashed var(--link)}.mstack i.glow{background:color-mix(in oklab,var(--accent) 30%,transparent);border-color:color-mix(in oklab,var(--accent) 70%,transparent);box-shadow:0 0 60px color-mix(in oklab,var(--accent) 60%,transparent)}.chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.chips li{padding:var(--space-1) var(--space-3);border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--hair);color:var(--ink);font-size:var(--fs-label)}@media(max-width:960px){:root:has(.est-mini){scroll-padding-block-end:calc(var(--est-mini-h) + var(--space-3) + var(--space-6))}}.planner{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--space-5);align-items:start}.form-card{border-radius:var(--r-xl);background:var(--tile);padding:var(--space-8)}.q-title{display:block;padding:0;font-size:var(--fs-question);line-height:var(--lh-h3);letter-spacing:-.03em;font-weight:700;margin:0;text-wrap:balance}.q-help{color:var(--muted);margin:var(--space-3) 0 0}.hint{font-size:var(--fs-label);color:var(--muted);margin:var(--space-2) 0 0}.nav-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-7)}.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-7)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field label{font-size:var(--fs-ui);font-weight:600}.input{width:100%;min-height:var(--field-h);padding:var(--space-3) var(--space-4);border-radius:var(--r-sm);border:1px solid var(--field-border);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-body-md)}.input-area{width:100%;min-height:150px;padding:var(--space-4);border-radius:var(--r-md);border:1px solid var(--field-border);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-body-md);line-height:1.5;resize:vertical}.input-area::placeholder{color:var(--field-placeholder)}.input:hover,.input-area:hover{border-color:var(--field-border-hover)}.input:focus,.input-area:focus{outline:none;border-color:var(--link);box-shadow:0 0 0 3px color-mix(in oklab,var(--link) 30%,transparent)}.input[aria-invalid=true],.input-area[aria-invalid=true]{border-color:var(--danger)}.err{font-size:var(--fs-ui);color:var(--danger);margin:0}.err-privacy{margin-top:var(--space-2)}.check{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--fs-body-sm);color:var(--muted);cursor:pointer;margin-top:var(--space-5)}.check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent);flex:none}.invio-msg{margin:var(--space-5) 0 0;padding:var(--space-4);border-radius:var(--r-sm);border:1px solid var(--hair);background:var(--surface);color:var(--muted);font-size:var(--fs-body-sm)}.invio-errore{border-color:var(--danger);color:var(--danger)}.spinner{width:16px;height:16px;border-radius:var(--r-full);border:2px solid currentColor;border-right-color:transparent;animation:gira .8s linear infinite}@keyframes gira{to{transform:rotate(360deg)}}.sent{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4)}.sent .ok{width:56px;height:56px;border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);display:grid;place-items:center}.sent p{margin:0;color:var(--muted);max-width:34em}.direct{margin-top:var(--space-5);padding:var(--space-5) var(--space-6);border-radius:var(--r-lg);border:1px solid var(--hair);font-size:var(--fs-body-sm);color:var(--muted)}.direct a{font-weight:600;overflow-wrap:anywhere}@container (max-width: 960px){.planner{grid-template-columns:minmax(0,1fr)}}@container (max-width: 560px){.form-card{padding:var(--space-7) var(--space-5);border-radius:var(--r-lg)}.contact-fields{grid-template-columns:minmax(0,1fr)}}@media(forced-colors:active){.input:focus,.input-area:focus{outline:2px solid Highlight}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.torch{position:relative;isolation:isolate}.torch:before,.torch:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity var(--dur-fade) ease}.torch:before{z-index:-1;background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%),color-mix(in oklab,var(--accent) 15%,transparent),transparent 65%)}.torch:after{z-index:3;padding:1px;background:radial-gradient(260px circle at var(--mx, 50%) var(--my, 50%),color-mix(in oklab,var(--accent) 85%,transparent),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}@media(hover:hover)and (pointer:fine){.torch:hover:before,.torch:hover:after{opacity:1}}.magnet{translate:var(--bx, 0px) var(--by, 0px);transition:translate var(--dur-state) var(--ease-out-soft),background-color var(--dur-hover) ease,transform var(--dur-press) ease-out}.magnet-zone{padding:var(--space-6);margin:var(--space-3) calc(-1 * var(--space-6)) calc(-1 * var(--space-6))}@container (max-width: 520px){.magnet-zone{padding-inline:0;margin-inline:0}}@media(prefers-reduced-motion:reduce){*:not(.motion-essenziale,.motion-dissolvenza),*:before,*:after{animation-duration:1ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:1ms!important;transition-delay:0s!important;scroll-behavior:auto!important}.motion-dissolvenza{animation:none!important;transition-property:opacity!important;transition-duration:var(--dur-hover)!important;transition-timing-function:ease!important;transition-delay:0s!important}.magnet{translate:none}.pill:active{transform:none}}@page{size:A4;margin:16mm 14mm}@media print{:root{color-scheme:light;--ink: #0A0908;--muted: #6B655D;--link: #0A0908;--accent: #0A0908;--on-dark: #0A0908;--on-dark-muted: #6B655D;--bg: transparent;--tile: transparent;--surface: transparent;--surface-2: transparent;--chip: transparent;--bar: transparent;--hair: #6B655D;--glow: none}html,body,.pg{background:none!important;color:var(--ink)}.pg:before{display:none!important}*,*:before,*:after{box-shadow:none!important;text-shadow:none!important;animation:none!important;transition:none!important}.solo-schermo,.skip-link,.nav,.ftr,.pdf,.page-head .actions{display:none!important}.page-head{padding:0 0 var(--space-6);text-align:start}.page-head .sub{display:none!important}.wrap,.wide{max-width:none;padding-inline:0}.profile{padding:0 0 var(--space-6)!important;margin-bottom:var(--space-6)!important;border-bottom:1px solid var(--hair);border-radius:0!important}.profile{grid-template-columns:minmax(0,1fr)!important;justify-items:start!important;text-align:start!important}.profile .contact-list{align-items:flex-start!important}.cv{display:block!important}.aside{position:static!important;padding:var(--space-6) 0 0!important;margin-top:var(--space-6);border-top:1px solid var(--hair);border-radius:0!important}.job,.skill-group,.aside .plain li,.profile{break-inside:avoid}h1,h2,h3{break-after:avoid}.chips li{border-color:var(--hair)}a[href^=http]:after,a[href^="mailto:"]:after{content:" (" attr(href) ")";font-size:var(--fs-label);color:var(--muted)}}
