/* Predictive Modeling News — foglio di stile. Design «Funkturm»: fasce di colore,
   ritagli circolari, titoli in minuscolo, carattere Halvar Breit (su licenza, self-hosted). */
@font-face{font-family:'Halvar Breit';font-weight:400;font-display:swap;src:url('fonts/HalvarBreit-Rg.woff2') format('woff2')}
@font-face{font-family:'Halvar Breit';font-weight:500;font-display:swap;src:url('fonts/HalvarBreit-Md.woff2') format('woff2')}
@font-face{font-family:'Halvar Breit';font-weight:600;font-display:swap;src:url('fonts/HalvarBreit-Bd.woff2') format('woff2')}
@font-face{font-family:'Halvar Breit';font-weight:700;font-display:swap;src:url('fonts/HalvarBreit-Bd.woff2') format('woff2')}

:root{
  --cream:#F5EFE0; --page:#E4DACA; --ink:#2A2118; --body:#4A3F31; --muted:#B8A88F; --muted2:#7A6A55;
  --orange:#D96C2C; --brown:#6B4A32; --red:#B8452B; --amber:#E8A857; --hero-ink:#4A3320; --hero-muted:#7A4A24;
  --sans:'Halvar Breit',system-ui,-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--page);color:var(--ink);font-family:var(--sans);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{opacity:.78}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.015em}
p{margin:0}
.fk-skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--cream);padding:8px 12px}
.fk-skip:focus{left:8px;top:8px;z-index:100}
.fk-shell{max-width:1340px;margin:0 auto;background:var(--cream);min-height:100vh}
.fk-lc,.fk-kicker,.fk-nav,.fk-brand-name,.fk-hero h1,.fk-art-h1,.fk-row-t,.fk-card-t,.fk-cathead h1,.fk-optin-h,.fk-page-h1,.fk-thanks h1,.fk-404 h1,.fk-pill,.fk-row-cat,.fk-footer-nav,.fk-cookie-title,.fk-prose h2,.fk-sources h2,.fk-readnext-head{text-transform:lowercase}
.fk-kicker{font-size:15px;font-weight:600;color:var(--brown)}
.fk-kicker--amber{color:var(--amber)}
.fk-byline{margin-top:16px;font-size:14.5px;font-weight:500;color:var(--muted2)}
.fk-mono{font-size:13.5px;font-weight:600;color:var(--red);text-transform:lowercase}
.fk-pill{display:inline-flex;align-items:center;gap:9px;background:var(--ink);color:var(--amber);padding:7px 14px;border-radius:999px;font-size:14px;font-weight:600}
.fk-pill--orange{background:var(--orange);color:var(--ink)}
.fk-pill--cream{background:var(--cream);color:var(--ink)}
.fk-pill--cream span{color:var(--muted2);font-weight:500}
.fk-pill--outline{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.fk-adlabel{display:inline-block;margin:14px 0 0;padding:5px 12px;border:1.5px solid currentColor;border-radius:999px;font-size:12.5px;font-weight:600;letter-spacing:.02em}
.fk-wrap{padding:0 40px 52px}

/* striscia + testata */
.fk-disclosure{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:8px 40px;background:var(--brown);color:var(--cream);font-size:13px;font-weight:500}
.fk-disclosure a{text-decoration:underline}
.fk-masthead{background:var(--ink);color:var(--cream);padding:20px 40px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.fk-brand{display:flex;align-items:center;gap:14px}
.fk-brand-dot{width:34px;height:34px;border-radius:50%;background:var(--orange);display:inline-block;flex:none}
.fk-brand-dot--sm{width:20px;height:20px}
.fk-brand-name{font-size:23px;font-weight:700;letter-spacing:-.01em}
.fk-nav{display:flex;gap:24px;font-size:15.5px;font-weight:500;align-items:center;flex-wrap:wrap}
.fk-nav a[aria-current]{color:var(--amber);text-decoration:underline;text-underline-offset:5px}
.fk-nav-nl{display:inline-flex;align-items:center;gap:8px;color:var(--amber)}

/* apertura */
.fk-hero{background:var(--orange);color:var(--ink);padding:50px 40px 54px;display:grid;grid-template-columns:1fr 440px;gap:56px;align-items:center}
.fk-hero h1{margin-top:20px;font-size:clamp(32px,4.2vw,52px);line-height:1;letter-spacing:-.02em;max-width:15em;text-wrap:pretty}
.fk-hero-p{margin-top:18px;font-size:19px;line-height:1.5;max-width:32em;color:var(--hero-ink)}
.fk-hero .fk-byline{color:var(--hero-muted)}
.fk-hero-fig{display:block;width:440px;height:440px;border-radius:50%;overflow:hidden;justify-self:end}
.fk-hero-fig img{width:100%;height:100%;object-fit:cover}
.fk-stripe{display:flex;height:14px}
.fk-stripe span{flex:1}
.fk-stripe span:nth-child(1){background:var(--ink)}
.fk-stripe span:nth-child(2){background:var(--brown)}
.fk-stripe span:nth-child(3){background:var(--red)}
.fk-stripe span:nth-child(4){background:var(--amber)}

/* righe */
.fk-week,.fk-list,.fk-more{padding:46px 40px 0}
.fk-rows{display:flex;flex-direction:column;margin-top:18px;border-bottom:2px solid var(--ink)}
.fk-row{display:grid;grid-template-columns:96px 1fr auto;gap:28px;align-items:center;padding:22px 0;border-top:2px solid var(--ink)}
.fk-row > img:first-child{width:96px;height:96px;border-radius:50%;object-fit:cover}
.fk-row-cat{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--red)}
.fk-row-t{margin-top:6px;font-size:25px;font-weight:700;line-height:1.08;letter-spacing:-.015em;max-width:26em;text-wrap:pretty}
.fk-row-p{margin-top:8px;font-size:15.5px;line-height:1.5;color:var(--body);max-width:44em}
.fk-row-arrow{width:38px;height:38px;flex:none}

/* pannello marrone */
.fk-panel{margin:46px 40px 0;background:var(--brown);color:var(--cream);border-radius:28px;padding:38px 44px;display:grid;grid-template-columns:auto 1fr;gap:44px;align-items:center}
.fk-panel-circle{width:150px;height:150px;border-radius:50%;background:var(--amber);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center}
.fk-panel-n{font-size:44px;font-weight:700;line-height:1;letter-spacing:-.015em}
.fk-panel-u{font-size:15px;font-weight:600}
.fk-panel-t{margin-top:8px;font-size:21px;font-weight:500;line-height:1.3;letter-spacing:-.01em;max-width:30em}
.fk-panel-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

/* griglia */
.fk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:18px}
.fk-card > img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:22px}
.fk-card .fk-row-cat{margin-top:14px}
.fk-card-t{margin-top:6px;font-size:21px;font-weight:700;line-height:1.12;letter-spacing:-.015em;text-wrap:pretty}

/* newsletter */
.fk-optin{margin-top:46px;background:var(--orange);border-radius:28px;padding:34px 36px}
.fk-optin--inline{margin:40px 0 52px}
.fk-optin-k{display:flex;align-items:center;gap:9px;font-size:14.5px;font-weight:600}
.fk-optin-h{margin-top:10px;font-size:26px;font-weight:700;line-height:1.12;letter-spacing:-.015em;max-width:20em}
.fk-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:22px}
.fk-form input{font-family:var(--sans);font-size:15.5px;padding:13px 16px;border:0;border-radius:999px;background:var(--cream);color:var(--ink);width:100%}
.fk-form button{font-family:var(--sans);font-size:15.5px;font-weight:600;padding:13px 26px;border:0;border-radius:999px;background:var(--ink);color:var(--cream);cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.fk-consent{display:flex;gap:10px;align-items:flex-start;margin-top:12px;font-size:13.5px;line-height:1.45;color:var(--hero-ink)}
.fk-consent input{margin:3px 0 0;flex:none;accent-color:var(--ink)}
.fk-consent a{text-decoration:underline}
.fk-fine{margin-top:8px;font-size:13px;color:var(--hero-muted)}
.fk-form-msg{font-size:14px;font-weight:600;min-height:1.2em;margin-top:6px}
.fk-form-msg[data-state=err]{color:var(--red)}
.fk-form-msg[data-state=ok]{color:var(--ink)}

/* articolo */
.fk-art-head{background:var(--ink);color:var(--cream);padding:44px 40px 48px}
.fk-art-head-in{max-width:760px}
.fk-art-h1{margin-top:18px;font-size:clamp(30px,3.8vw,46px);line-height:1.02;letter-spacing:-.02em;text-wrap:pretty}
.fk-art-head .fk-byline{color:var(--muted)}
.fk-art-head .fk-adlabel{color:var(--amber)}
.fk-art-body{max-width:780px;margin:0 auto;padding:44px 40px 0}
.fk-art-fig img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:22px}
.fk-art-fig figcaption{margin-top:10px;font-size:13px;color:var(--muted2);line-height:1.45}
.fk-prose{margin-top:34px}
.fk-standfirst{font-size:21px;line-height:1.55;font-weight:500}
.fk-prose p{margin-top:20px;font-size:17.5px;line-height:1.68;color:var(--body)}
.fk-prose h2{margin-top:32px;font-size:22px;font-weight:700;letter-spacing:-.01em}
.fk-prose h3{margin-top:24px;font-size:18px;font-weight:600}
.fk-prose ul,.fk-prose ol{margin:14px 0 0;padding-left:22px;font-size:17px;line-height:1.65;color:var(--body)}
.fk-prose li{margin-top:6px}
.fk-prose a{text-decoration:underline;text-underline-offset:3px}
.fk-prose strong,.fk-prose b{color:var(--ink)}
.fk-note{margin:32px 0;border:2px solid var(--ink);border-radius:22px;padding:24px 28px}
.fk-note-l{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:600;color:var(--red);text-transform:lowercase}
.fk-note-t{margin-top:8px;font-size:17px;line-height:1.55}
.fk-figures{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:32px 0}
.fk-fig{text-align:center}
.fk-fig-n{width:118px;height:118px;margin:0 auto;border-radius:50%;background:var(--amber);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;letter-spacing:-.015em;padding:0 10px;line-height:1.1}
.fk-fig-l{margin-top:10px;font-size:14px;line-height:1.4;color:var(--muted2);font-weight:500}
.fk-tablewrap{margin:28px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.fk-table{width:100%;border-collapse:collapse;font-size:15.5px}
.fk-table caption{caption-side:bottom;text-align:left;padding:10px 0 0;font-size:13.5px;color:var(--muted2)}
.fk-table th,.fk-table td{padding:10px 12px;border-bottom:2px solid var(--ink);text-align:left;vertical-align:top;line-height:1.4}
.fk-table th{font-weight:600;font-size:14px;color:var(--brown)}
.fk-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.fk-sources{margin-top:40px;border-top:2px solid var(--ink);padding-top:18px}
.fk-sources h2{font-size:15px;font-weight:600;color:var(--brown)}
.fk-sources ul{margin:12px 0 0;padding-left:18px;font-size:15px;line-height:1.55;color:var(--body)}
.fk-sources a{text-decoration:underline}
.fk-disclaimer{margin-top:28px;padding:20px 24px;background:#EADFCB;border-radius:22px;font-size:13.5px;line-height:1.55;color:var(--muted2)}
.fk-disclaimer b{display:block;color:var(--ink);margin-bottom:4px}
.fk-readnext{padding:0 40px 52px}
.fk-backlink{margin-top:18px;font-size:15px;font-weight:600}
.fk-backlink a{text-decoration:underline}

/* rubrica */
.fk-cathead{background:var(--orange);padding:50px 40px 54px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.fk-cathead h1{margin-top:20px;font-size:52px;line-height:1;letter-spacing:-.02em}
.fk-cathead p{margin-top:16px;font-size:19px;line-height:1.5;max-width:32em;color:var(--hero-ink)}
.fk-cathead-icon{width:200px;height:200px;border-radius:50%;background:var(--amber);display:flex;align-items:center;justify-content:center}
.fk-others{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:30px 40px 0}

/* pagine di servizio */
.fk-page{display:grid;grid-template-columns:260px 1fr;padding:40px 40px 60px;gap:50px}
.fk-page-side nav{display:flex;flex-direction:column;gap:10px;margin-top:14px;font-weight:500;text-transform:lowercase}
.fk-page-side a[aria-current]{color:var(--orange);text-decoration:underline;text-underline-offset:5px}
.fk-page-main{max-width:760px}
.fk-page-h1{margin-top:10px;font-size:44px;line-height:1.02;letter-spacing:-.02em}
.fk-page-lede{margin-top:16px;font-size:19px;line-height:1.5;color:var(--body)}
.fk-updated{margin-top:14px;font-size:14px;font-weight:500;color:var(--muted2)}
.fk-page-main .fk-prose{max-width:680px;margin-top:26px}
.fk-company{margin-top:30px;font-size:32px;font-weight:700;line-height:1.05;letter-spacing:-.015em}
.fk-vatbox{margin-top:14px;background:var(--ink);color:var(--cream);border-radius:22px;padding:22px 26px;max-width:680px}
.fk-vatbox-label{font-size:13.5px;font-weight:600;color:var(--amber);text-transform:lowercase}
.fk-vatbox-num{display:block;margin-top:6px;font-size:34px;line-height:1;letter-spacing:.01em;font-weight:700}
.fk-vatbox-reg{margin-top:10px;font-size:15px;color:var(--muted)}
.fk-vatbox-reg b{color:var(--cream)}
.fk-dl{margin:28px 0 0;display:grid;grid-template-columns:220px 1fr;gap:10px 20px;font-size:16px;max-width:680px;border-top:2px solid var(--ink);padding-top:16px}
.fk-dl dt{font-weight:600}
.fk-dl dd{margin:0;color:var(--body)}
.fk-contact{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.fk-contact-card{padding:20px 22px;border:2px solid var(--ink);border-radius:22px}
.fk-contact-card > a{display:block;margin-top:8px;font-size:18px;font-weight:700;word-break:break-all}
.fk-contact-card p{margin-top:8px;font-size:14.5px;color:var(--body);line-height:1.5}
.fk-kicker2,.fk-kicker.fk-small{font-size:13.5px}
.fk-thanks,.fk-404{padding:70px 40px 90px;max-width:720px;margin:0 auto;text-align:center}
.fk-thanks h1,.fk-404 h1{margin-top:10px;font-size:40px;line-height:1.02;letter-spacing:-.02em}
.fk-thanks p,.fk-404 p{margin-top:18px;font-size:17.5px;line-height:1.65;color:var(--body)}
.fk-btn{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--cream);padding:12px 22px;border-radius:999px;font-weight:600;font-size:15.5px}
.fk-btn--ghost{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.fk-nl-hero{display:grid;grid-template-columns:1fr 440px;gap:50px;padding:48px 40px 20px}
.fk-nl-points{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.fk-nl-points li{display:flex;gap:16px;align-items:flex-start;font-size:16px;line-height:1.55;color:var(--body)}
.fk-nl-points b{flex:none;width:44px;height:44px;border-radius:50%;background:var(--amber);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:15px}
.fk-nl-points strong{display:block;color:var(--ink)}
.fk-nl-hero .fk-optin{margin-top:0}

/* piè di pagina */
.fk-footer{background:var(--ink);color:var(--muted);padding:26px 40px 32px}
.fk-footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.fk-footer-brand{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--cream)}
.fk-footer-copy{font-size:13.5px;font-weight:400;color:var(--muted)}
.fk-footer-nav{display:flex;gap:20px;font-size:14px;flex-wrap:wrap}
.fk-footer-note{margin-top:18px;font-size:12.5px;line-height:1.6;max-width:980px}
.fk-footer-note a{text-decoration:underline}

/* cookie */
.fk-cookie{position:fixed;left:16px;right:16px;bottom:16px;max-width:460px;margin-left:auto;background:var(--cream);color:var(--ink);border:2px solid var(--ink);border-radius:22px;padding:20px 22px;z-index:50;box-shadow:0 10px 30px rgba(42,33,24,.25)}
.fk-cookie[hidden]{display:none}
.fk-cookie-title{font-size:19px;font-weight:700}
.fk-cookie p{margin-top:8px;font-size:14px;line-height:1.5;color:var(--body)}
.fk-cookie p a{text-decoration:underline}
.fk-cookie-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.fk-cookie button{font-family:var(--sans);font-size:14.5px;font-weight:600;padding:10px 18px;border:2px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--cream);cursor:pointer}
.fk-cookie button.fk-ghost{background:transparent;color:var(--ink)}

@media(max-width:1000px){
  .fk-hero{grid-template-columns:1fr;gap:30px}
  .fk-hero-fig{width:min(360px,80vw);height:min(360px,80vw);justify-self:start}
  .fk-grid{grid-template-columns:1fr 1fr}
  .fk-page{grid-template-columns:1fr;gap:20px}
  .fk-page-side nav{flex-direction:row;flex-wrap:wrap;gap:8px 18px}
  .fk-nl-hero{grid-template-columns:1fr;gap:30px}
  .fk-cathead{grid-template-columns:1fr}
  .fk-cathead-icon{display:none}
}
@media(max-width:720px){
  .fk-disclosure,.fk-masthead,.fk-hero,.fk-week,.fk-list,.fk-more,.fk-art-head,.fk-art-body,.fk-readnext,.fk-cathead,.fk-others,.fk-page,.fk-thanks,.fk-404,.fk-nl-hero,.fk-footer,.fk-wrap{padding-left:16px;padding-right:16px}
  .fk-panel{margin-left:16px;margin-right:16px;grid-template-columns:1fr;gap:20px;padding:28px 24px;border-radius:22px}
  .fk-masthead{flex-direction:column;align-items:flex-start;gap:14px}
  .fk-nav{gap:12px 18px;font-size:14.5px}
  .fk-hero{padding-top:30px;padding-bottom:34px}
  .fk-hero h1{font-size:32px;max-width:none}
  .fk-hero-fig{width:min(260px,70vw);height:min(260px,70vw)}
  .fk-row{grid-template-columns:64px 1fr;gap:14px}
  .fk-row > img:first-child{width:64px;height:64px}
  .fk-row-arrow{display:none}
  .fk-row-t{font-size:20px}
  .fk-grid{grid-template-columns:1fr}
  .fk-optin{padding:26px 20px;border-radius:22px}
  .fk-optin-h{font-size:22px}
  .fk-form{grid-template-columns:1fr}
  .fk-art-h1{font-size:30px}
  .fk-figures{grid-template-columns:1fr;gap:14px}
  .fk-fig{display:flex;align-items:center;gap:14px;text-align:left}
  .fk-fig-n{width:88px;height:88px;font-size:19px;margin:0;flex:none}
  .fk-fig-l{margin-top:0}
  .fk-cathead h1{font-size:40px}
  .fk-page-h1{font-size:34px}
  .fk-company{font-size:26px}
  .fk-vatbox-num{font-size:26px}
  .fk-dl{grid-template-columns:1fr;gap:2px 0}
  .fk-dl dd{margin-bottom:10px}
  .fk-contact{grid-template-columns:1fr}
  .fk-cookie{left:10px;right:10px;bottom:10px}
}
