/* Normalizzazione dei blocchi WordPress/Stackable importati negli articoli. */
@font-face{font-family:"ct_font_t_t_firs_neue-_black";src:url('/fonts/TTFirsNeue-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"ct_font_agrandir__regular";src:url('/fonts/Agrandir-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"ct_font_boldstrom__outlines";src:url('/fonts/Boldstrom-Outlines.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{
  --theme-palette-color-1:#16297b;
  --theme-palette-color-2:#3f8fc5;
  --theme-palette-color-3:#fff33b;
  --theme-palette-color-5:#f2f2f2;
  --theme-palette-color-6:#333;
  --wp--preset--spacing--20:.44rem;
  --wp--preset--spacing--30:.67rem;
  --wp--preset--spacing--40:1rem;
  --wp--preset--spacing--50:1.5rem;
  --wp--preset--spacing--60:2.25rem;
  --wp--preset--spacing--70:3.38rem;
  --wp--preset--spacing--80:5.06rem;
}
.article-page{overflow-x:clip}
.wordpress-native-article .article-body{width:100%;max-width:none;margin:0;padding:0}
.article-body,
.article-body *{box-sizing:border-box}
.article-body a{overflow-wrap:anywhere}
.article-author{display:inline-flex;align-items:center;gap:12px;margin-top:18px;color:inherit;text-decoration:none}
.article-author img{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#e9e9e9}
.article-author span{display:grid;line-height:1.15}.article-author small{color:#6a6a6a}.article-author strong{font-size:15px}
.article-author:focus-visible{outline:3px solid #fff33b;outline-offset:4px}

.article-body .stk-block,
.article-body .stk-row,
.article-body .stk-column-wrapper,
.article-body .stk-block-content,
.article-body .wp-block-group,
.article-body .wp-block-image,
.article-body .wp-block-video,
.article-body .wp-block-embed,
.article-body .wp-block-table{min-width:0;max-width:100%}

/* Stackable: una riga di colonne sul desktop, impilata sul telefono. */
.article-body .stk-block-columns>.stk-row{
  display:flex;
  align-items:stretch;
  gap:clamp(16px,2.5vw,32px);
  width:100%;
}
.article-body .stk-block-columns>.stk-row>.stk-block-column{
  flex:1 1 0;
  width:auto;
  min-width:0;
}
.article-body .stk-column-wrapper,
.article-body .stk-block-column__content{width:100%;height:100%}
.article-body .stk--align-last-block-to-bottom{display:flex;flex-direction:column}
.article-body .stk--align-last-block-to-bottom>:last-child{margin-top:auto}
.article-body .has-text-align-center{text-align:center}
.article-body .has-text-align-left{text-align:left}
.article-body .has-text-align-right{text-align:right}

/* I blocchi larghi escono dalla colonna editoriale senza superare il viewport. */
.article-body>.alignwide,
.article-body>.wp-block-group.alignwide,
.article-body>.stk-block-columns.alignwide{
  width:100%;
  max-width:100%;
  margin-left:0;
  transform:none;
}
.article-body>.alignfull,
.article-body>.wp-block-group.alignfull,
.article-body>.stk-block-columns.alignfull{
  width:100%;
  max-width:100%;
  margin-left:0;
  transform:none;
  padding-left:0;
  padding-right:0;
}
.article-body .alignwide,
.article-body .alignfull{overflow-wrap:anywhere}

/* Media incorporati: nessuna larghezza fissa può creare scroll orizzontale. */
.article-body figure,
.article-body picture,
.article-body img,
.article-body video,
.article-body iframe,
.article-body embed,
.article-body object,
.article-body svg{max-width:100%}
.article-body iframe,
.article-body embed,
.article-body object{width:100%}
.article-body figure img{width:auto;height:auto}
.article-body figure.alignwide img,
.article-body figure.alignfull img{width:100%}

/* Le tabelle mantengono la semantica tabellare e scorrono nel proprio wrapper. */
.article-body .wp-block-table{display:block;width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.article-body .wp-block-table table{display:table;width:100%;max-width:none;min-width:560px}
.article-body table:not(.has-fixed-layout){table-layout:auto}
.article-body th,.article-body td{overflow-wrap:normal;word-break:normal;vertical-align:top}

/* Pulsanti Gutenberg/Stackable coerenti con i CTA del sito. */
.article-body .stk-block-button,
.article-body .wp-block-button{display:flex;max-width:100%;margin:1.4em 0}
.article-body .stk-block-button-group>.stk-button-group{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.article-body .stk-block-button__content,
.article-body .stk-button,
.article-body .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
  min-height:46px;
  padding:12px 22px;
  border:2px solid #2d6e9e;
  border-radius:999px;
  background:#2d6e9e;
  color:#fff;
  font-family:var(--display);
  font-size:15px;
  font-weight:900;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  white-space:normal;
}
.article-body .stk-button__inner-text{color:inherit!important}

/* Visibilità Stackable: le tre classi descrivono viewport distinti. */
@media (min-width:1025px){
  .article-body .stk--hide-desktop{display:none!important}
}
@media (min-width:768px) and (max-width:1024px){
  .article-body .stk--hide-tablet{display:none!important}
  .article-body .stk-block-columns>.stk-row{flex-wrap:wrap}
  .article-body .stk-block-columns>.stk-row>.stk-block-column{flex-basis:min(320px,100%)}
}
@media (max-width:767px){
  .article-body{overflow-wrap:anywhere}
  .article-body .stk--hide-mobile{display:none!important}
  .article-body .stk-block-columns>.stk-row{flex-direction:column;gap:18px}
  .article-body .stk-block-columns>.stk-row>.stk-block-column{flex-basis:auto;width:100%}
  .article-body>.alignwide,
  .article-body>.alignfull,
  .article-body>.wp-block-group.alignwide,
  .article-body>.wp-block-group.alignfull,
  .article-body>.stk-block-columns.alignwide,
  .article-body>.stk-block-columns.alignfull{
    width:100%;
    max-width:100%;
    margin-left:0;
    padding-left:0;
    padding-right:0;
    transform:none;
  }
  .article-body [style*="width"]{max-width:100%!important}
  .article-body .stk-block-button__content,
  .article-body .stk-button,
  .article-body .wp-block-button__link{width:100%}
}

/* Articoli riprodotti dal tema WordPress: il corpo parte subito sotto la
   barra di navigazione, come su mallei.it sotto la testata del sito. */
.article-page.wordpress-article{padding-top:var(--nav-h)}
.article-page.wordpress-article>.wp-article-root{margin:0}
.wp-article-root .wp-pdf-flipbook{margin:1.5em auto;max-width:900px}
.wp-article-root .wp-pdf-flipbook object{display:block;width:100%;aspect-ratio:16/10;border:0;background:#fff}

/* Moduli negli articoli (ex WPForms 996362 e 1006643/1006614): misure del vecchio sito. */
.wp-article-root .mallei-article-form-container{margin:0 auto;padding:24px 0}
.wp-article-root .mallei-article-form{margin:0;font-family:inherit}
.wp-article-root .mallei-article-form__field{padding:15px 0}
.wp-article-root .mallei-article-form__field>label,.wp-article-root .mallei-article-form__legend{display:block;margin:0 0 10px;font-weight:700;font-size:14px;line-height:17px;color:#f2f2f2}
.wp-article-root .mallei-article-form__required{color:#fff33b}
.wp-article-root .mallei-article-form input[type=text],.wp-article-root .mallei-article-form input[type=email],.wp-article-root .mallei-article-form input[type=url]{display:block;box-sizing:border-box;width:100%;height:31px;margin:0;padding:0 9px;border:1px solid #3f8fc5;border-radius:50px;background:#fff;color:#3f8fc5;font:inherit;font-size:14px;box-shadow:none}
.wp-article-root .mallei-article-form input:focus{outline:2px solid #fff33b;outline-offset:1px}
.wp-article-root .mallei-article-form .mallei-article-form__check{display:flex;gap:10px;align-items:flex-start;margin:0;font-size:14px;line-height:18.2px;color:#f2f2f2;font-weight:400}
.wp-article-root .mallei-article-form .mallei-article-form__check input{flex:0 0 auto;width:14px;height:14px;margin:2px 0 0;accent-color:#3f8fc5}
.wp-article-root .mallei-article-form__check a{color:inherit;text-decoration:none}
.wp-article-root .mallei-article-form__check a:hover{text-decoration:underline}
.wp-article-root .mallei-article-form__submit{margin-top:5px}
.wp-article-root .mallei-article-form button[type=submit]{height:40px;padding:0 15px;border:0;border-radius:100px;background:#fff33b;color:#16297b;font:inherit;font-size:14px;font-weight:500;text-transform:none;letter-spacing:normal;cursor:pointer;transition:filter .2s}
.wp-article-root .mallei-article-form button[type=submit]:hover{filter:brightness(.95)}
.wp-article-root .mallei-article-form button[type=submit]:disabled{opacity:.7;cursor:progress}
.wp-article-root .mallei-article-form__hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.wp-article-root .mallei-article-form__result{margin:12px 0 0;font-size:14px;line-height:1.45;color:#f2f2f2}
.wp-article-root .mallei-article-form__result:empty{display:none}
.wp-article-root .mallei-article-form__result a{color:inherit;font-weight:700}
.wp-article-root .mallei-article-form__result.is-error{color:#ffb4b4}
/* Guida LinkedIn: fondo chiaro, etichette scure, campi arrotondati a 20px. */
.wp-article-root .mallei-article-form--guide{max-width:555px}
.wp-article-root .mallei-article-form--guide .mallei-article-form__field>label,.wp-article-root .mallei-article-form--guide .mallei-article-form__legend{font-size:16px;line-height:19px;color:#333}
.wp-article-root .mallei-article-form--guide .mallei-article-form__required{color:#16297b}
.wp-article-root .mallei-article-form--guide input[type=text],.wp-article-root .mallei-article-form--guide input[type=email],.wp-article-root .mallei-article-form--guide input[type=url]{border-radius:20px;color:#16297b}
.wp-article-root .mallei-article-form--guide input:focus{outline-color:#3f8fc5}
.wp-article-root .mallei-article-form--guide .mallei-article-form__check,.wp-article-root .mallei-article-form--guide .mallei-article-form__result{font-size:16px;color:#333}
.wp-article-root .mallei-article-form--guide .mallei-article-form__result.is-error{color:#b3261e}
.wp-article-root .mallei-article-form--guide .mallei-article-form__submit{margin-top:10px}
.wp-article-root .mallei-article-form--guide button[type=submit]{height:auto;min-height:41px;padding:8px 15px;border-radius:30px;font-size:17px;line-height:1.2}
.wp-article-root .mallei-article-form__row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media (max-width:600px){.wp-article-root .mallei-article-form__row{grid-template-columns:1fr;gap:12px}}
