.elementor-481 .elementor-element.elementor-element-4bb764d{--display:flex;--min-height:100vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-481 .elementor-element.elementor-element-4bb764d:not(.elementor-motion-effects-element-type-background), .elementor-481 .elementor-element.elementor-element-4bb764d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-077c9e4 );}.elementor-481 .elementor-element.elementor-element-4bb764d.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-481 .elementor-element.elementor-element-e3ce9e5{--display:flex;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--border-radius:0px 0px 0px 0px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-481 .elementor-element.elementor-element-e04bdfb{width:var( --container-widget-width, 100% );max-width:100%;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-481 .elementor-element.elementor-element-e04bdfb.elementor-element{--align-self:center;}#elementor-popup-modal-481 .dialog-widget-content{background-color:#02010100;margin:0px 0px 0px 0px;}#elementor-popup-modal-481{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-481 .dialog-message{width:100vw;height:100vh;align-items:center;padding:0px 0px 0px 0px;}#elementor-popup-modal-481 .dialog-close-button{display:flex;font-size:30px;}#elementor-popup-modal-481 .dialog-close-button i{color:#D2041C;}#elementor-popup-modal-481 .dialog-close-button svg{fill:#D2041C;}@media(max-width:767px){.elementor-481 .elementor-element.elementor-element-4bb764d{--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-481 .elementor-element.elementor-element-e3ce9e5{--padding-top:50px;--padding-bottom:20px;--padding-left:30px;--padding-right:30px;}.elementor-481 .elementor-element.elementor-element-7fa46a4{margin:200px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}#elementor-popup-modal-481{justify-content:center;align-items:center;}#elementor-popup-modal-481 .dialog-close-button{font-size:16px;}}@media(min-width:768px){.elementor-481 .elementor-element.elementor-element-4bb764d{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-e04bdfb *//* =========================================================
   .tir-uploader — struttura fissa a 3 blocchi:
   1) .tir-uploader-preview  (file già caricati)
   2) .tir-uploader-dropzone (area di caricamento)
   3) .tir-uploader-progress (avanzamento durante l'upload)
   Estratto da assets/tir-area-personale.css (stato attuale, con
   le modifiche fatte a mano: border-radius 4px, dropzone trasparente,
   progress-item senza bordo, gap:0 quando la preview è vuota).
   ========================================================= */
   .tir-consents label {
    display: flex;
    gap: 15px;
}
button {padding: 0 !important;}
.tir-button {
        padding: 15px 30px 15px 30px !important;
}
.tir-uploader{margin-top:0!important;display:block;padding:15px;border:1px solid #50606B20 !important;border-radius:15px; margin-bottom: 20px}
.tir-uploader-body{display:flex;flex-direction:column;gap:14px}
.tir-uploader-body:has(> .tir-uploader-preview:empty){gap:0!important}

/* ---------- DIV 2: area di caricamento ---------- */
.tir-dropzone{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;
  min-height:150px;border:1.5px dashed rgba(0,0,0,.18);border-radius:4px;cursor:pointer;
  padding:20px;transition:.2s;background:transparent!important;
}
.tir-dropzone:hover,
.tir-dropzone.is-dragover{background:#EEFAFB;border-color:#9BDEE8}
.tir-dropzone-input{display:none}
.tir-dropzone-icon{
  width:52px;height:52px;border-radius:50%;background:#9BDEE8;color:#33454C;
  display:flex;align-items:center;justify-content:center;margin-bottom:6px;
}
.tir-dropzone-title{font-family:'Instrument Sans',sans-serif;font-weight:700;font-size:16px;color:#33454C}
.tir-dropzone-text{color:#7a8a90;font-size:12px;margin:0;text-transform:lowercase}
.tir-dropzone-maxsize{color:#7a8a90;font-size:12px;font-weight:700}

/* ---------- DIV 1: preview dei file già caricati ----------
   Singolo (multiple="0"): a piena larghezza, PRIMA della dropzone.
   Galleria (multiple="1"): griglia dinamica DOPO la dropzone —
   2 colonne di base, 5 da 900px in su. */
.tir-uploader-preview{margin:0!important}
.tir-uploader-preview:empty{display:none}

.tir-uploader[data-multiple="0"] .tir-uploader-preview{order:1;width:100%;margin:0}
.tir-uploader[data-multiple="0"] .tir-uploader-dropzone{order:2}
.tir-uploader[data-multiple="0"] .tir-preview-item{width:100%;aspect-ratio:16/10}

.tir-uploader[data-multiple="1"] .tir-uploader-preview{
  order:1;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;
}
.tir-uploader[data-multiple="1"] .tir-uploader-dropzone{order:2}
.tir-uploader[data-multiple="1"] .tir-preview-item{width:100%;aspect-ratio:1/1}
@media(min-width:900px){
  .tir-uploader[data-multiple="1"] .tir-uploader-preview{grid-template-columns:repeat(5,1fr)}
}

.tir-preview-item{
  position:relative;border-radius:4px;overflow:hidden;background:#EEFAFB;border:none;
}
.tir-preview-open{display:block;width:100%;height:100%;border:0;padding:0;background:none;cursor:zoom-in}
.tir-preview-open img{width:100%;height:100%;object-fit:cover;display:block}
.tir-preview-video{width:100%;height:100%;display:block;background:#000;border-radius:10px}
.tir-preview-icon{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:26px;color:#33454C;
}
.tir-preview-name{
  position:absolute;left:0;right:0;bottom:0;padding:6px 8px;font-size:11px;font-weight:600;color:#33454C;
  background:rgba(255,255,255,.85);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.tir-preview-remove{
  position:absolute;top:6px;right:6px;width:22px;height:22px;border:0;border-radius:50%;
  background:#E89B9B;color:#fff;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;
  cursor:pointer;padding:0;z-index:2;
}

/* ---------- DIV 3: righe di avanzamento durante il caricamento ---------- */
.tir-uploader-progress{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.tir-uploader-progress[hidden]{display:none}

.tir-progress-item{
  display:flex;align-items:flex-start;gap:12px;width:100%;border:none!important;padding:0!important;
}
.tir-progress-thumb{
  width:44px;height:44px;flex:0 0 auto;border-radius:4px;overflow:hidden;background:#EEFAFB;
  display:flex;align-items:center;justify-content:center;font-size:18px;color:#33454C;
}
.tir-progress-thumb img{width:100%;height:100%;object-fit:cover}
.tir-progress-thumb .tir-preview-icon{position:static;inset:auto;font-size:18px}
.tir-progress-meta{flex:1 1 auto;min-width:0}
.tir-progress-toprow{display:flex;align-items:baseline;gap:8px;flex-wrap:nowrap;margin-bottom:8px}
.tir-progress-toprow strong{font-size:14px;font-weight:700;color:#33454C;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto}
.tir-progress-toprow span{font-size:12px;color:#7a8a90;flex:0 0 auto;white-space:nowrap}
.tir-progress-barrow{display:flex;align-items:center;gap:10px}
.tir-progress-bar{flex:1 1 auto;height:6px;border-radius:999px;background:#EAF8FA;overflow:hidden}
.tir-progress-bar>span{display:block;height:100%;width:0;background:#9BDEE8;transition:width .15s linear}
.tir-progress-percent{font-size:12px;font-weight:700;color:#455662;flex:0 0 auto;min-width:34px;text-align:right}
.tir-progress-cancel{
  border:0;background:#E89B9B;color:#fff;width:22px;height:22px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;cursor:pointer;padding:0;flex:0 0 auto;
}

/* ---------- Layout affiancato: Foto di copertina + Video di copertina ---------- */
.tir-cover-grid{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:900px){
  .tir-cover-grid{grid-template-columns:1fr 1fr;gap:18px;align-items:start}
  .tir-cover-grid .tir-upload-card{margin-bottom:0}
}

/* ---------- Variante scura: uploader "Allegati" dentro il pannello Assistenza ---------- */
.tir-support-form .tir-dropzone{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.25)}
.tir-support-form .tir-dropzone:hover,
.tir-support-form .tir-dropzone.is-dragover{background:rgba(255,255,255,.12);border-color:#9BDEE8}
.tir-support-form .tir-dropzone-title{color:#fff}
.tir-support-form .tir-dropzone-text,
.tir-support-form .tir-dropzone-maxsize{color:rgba(255,255,255,.65)}
.tir-support-form .tir-progress-item{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2)}
.tir-support-form .tir-progress-toprow strong{color:#fff}

/* ---------- Lightbox (apre le immagini caricate a schermo intero) ---------- */
.tir-lightbox{position:fixed;inset:0;z-index:9998;display:none;align-items:center;justify-content:center;padding:24px}
.tir-lightbox:not([hidden]){display:flex}
.tir-lightbox-backdrop{position:absolute;inset:0;background:rgba(20,26,29,.88)}
.tir-lightbox-inner{position:relative;z-index:1;max-width:min(92vw,900px);max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:16px}
.tir-lightbox-img{max-width:100%;max-height:74vh;border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,.4);display:block}
.tir-lightbox-actions{display:flex;align-items:center;gap:14px}
.tir-lightbox-download{
  background:#9BDEE8;color:#33454C;border-radius:999px;padding:10px 22px;font-weight:700;font-size:14px;
  text-decoration:none;font-family:'Instrument Sans',sans-serif;
}
.tir-lightbox-remove{
  background:#E89B9B;color:#fff;border:0;border-radius:999px;padding:10px 22px;font-weight:700;font-size:14px;
  cursor:pointer;font-family:'Instrument Sans',sans-serif;
}
.tir-lightbox-close{
  width:38px;height:38px;border-radius:50%;background:#fff;border:0;color:#33454C;font-size:18px;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
}
body.tir-lightbox-open{overflow:hidden}/* End custom CSS */
/* Start custom CSS */form {
    font-family: 'Instrument Sans';
}

.tir-field label, h4, .tir-consents label {
    font-weight: 300 !important;
    color: #50606B;
    font-size: 15px;
}
.tir-button {color: #50606B !important; margin-top: 20px; margin-left: auto !important;
    display: flex;
    align-self: flex-end;}
.tir-button:hover {
    color: #9BDEE8 !important;
}
.tir-upload-copy p, .tir-dropzone-title {display: none}
.tir-consents label {margin-bottom: 10px}
.tir-field input {margin-bottom: 20px !important}
.tir-field input, .tir-field textarea, .tir-custom-dropzone {
    background: transparent;
    border-radius: 15px;
    border-color: #50606B20 !important;
    border: 1px solid;
}
.tir-field input:focus, .tir-field input:active, .tir-field textarea:focus {
    outline: none !important;
}
.tir-custom-dropzone:hover, .tir-custom-dropzone.is-dragover {
    background: transparent;
}
.tir-upload-card, .tir-custom-dropzone {
    padding: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}
.tir-custom-dropzone {
    padding: 20px !important;
}
.tir-empty-preview {
    min-height: 0 !important;
    background: transparent;
}
.tir-media-remove {
    font-size: 15px !important;
    padding: 0 !important;
    background: transparent !important;
    color: #d2041c !important;
    font-weight: 600;
    text-align: right;
}
.tir-media-item {
    flex-direction: row;
    max-width: 100% !important;
    align-items: center;
}

.tir-media-thumb {
    aspect-ratio: 1 / 1;
    height: 110px;
    max-width: 110px !important;
    min-width: 110px !important;
}

.tir-media-thumb img {
    height: 100% !important;
}

.tir-media-meta {
    align-items: start;
    gap: 10px;
}

.tir-upload-progress {
    background: #0000000d !important;
}

.tir-upload-progress>span {
    background: #9BDEE8 !important;
}/* End custom CSS */