.elementor-2625 .elementor-element.elementor-element-c14cd6f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-2625 .elementor-element.elementor-element-c14cd6f:not(.elementor-motion-effects-element-type-background), .elementor-2625 .elementor-element.elementor-element-c14cd6f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#7B5147;}.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-2625 .elementor-element.elementor-element-c9cfa80{margin:100px 0px calc(var(--kit-widget-spacing, 0px) + 100px) 0px;text-align:center;}.elementor-2625 .elementor-element.elementor-element-c9cfa80 .elementor-heading-title{font-family:"Cinzel", Sans-serif;font-size:45px;font-weight:600;text-transform:uppercase;letter-spacing:0.09em;color:#E7E2DC;}.elementor-2625 .elementor-element.elementor-element-c2880f7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2625 .elementor-element.elementor-element-3fa4c66 iframe{height:90vh;filter:brightness( 100% ) contrast( 100% ) saturate( 0% ) blur( 0px ) hue-rotate( 0deg );}.elementor-2625 .elementor-element.elementor-element-d2e6157{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2625 .elementor-element.elementor-element-d2e6157:not(.elementor-motion-effects-element-type-background), .elementor-2625 .elementor-element.elementor-element-d2e6157 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E7E2DC;}.elementor-2625 .elementor-element.elementor-element-4a7397c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-2625 .elementor-element.elementor-element-935a170{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2625 .elementor-element.elementor-element-379154e{font-family:"Roboto", Sans-serif;font-size:21px;font-weight:600;text-transform:uppercase;color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-6d4d360{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-2f4f40c{text-align:start;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-aa2d486{margin:-20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-7e7e7f2{--display:flex;--min-height:357px;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group > label, .elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-subgroup label{color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group > label{font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-type-html{padding-bottom:0px;color:#2D2D2D;font-family:"Roboto", Sans-serif;font-size:17px;font-weight:400;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group .elementor-field{color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group .elementor-field, .elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-subgroup label{font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:#A9A993;border-width:1px 1px 1px 1px;border-radius:0px 0px 0px 0px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:#A9A993;border-width:1px 1px 1px 1px;border-radius:0px 0px 0px 0px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group .elementor-select-wrapper::before{color:#A9A993;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-button{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:600;text-transform:uppercase;border-radius:0px 0px 0px 0px;padding:15px 50px 15px 50px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .e-form__buttons__wrapper__button-next{background-color:#A9A993;color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-button[type="submit"]{background-color:#A9A993;color:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-button[type="submit"] svg *{fill:#2D2D2D;}.elementor-2625 .elementor-element.elementor-element-76794b3 .e-form__buttons__wrapper__button-previous{background-color:#A9A993;color:#ffffff;}.elementor-2625 .elementor-element.elementor-element-76794b3 .e-form__buttons__wrapper__button-next:hover{background-color:#2D2D2D;color:#ffffff;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-button[type="submit"]:hover{background-color:#2D2D2D;color:#ffffff;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-2625 .elementor-element.elementor-element-76794b3 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-2625 .elementor-element.elementor-element-76794b3{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-2625 .elementor-element.elementor-element-c14cd6f{--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-2625 .elementor-element.elementor-element-c9cfa80{margin:45px 0px calc(var(--kit-widget-spacing, 0px) + 45px) 0px;text-align:start;}.elementor-2625 .elementor-element.elementor-element-c9cfa80 .elementor-heading-title{font-size:28px;}.elementor-2625 .elementor-element.elementor-element-d2e6157{--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-2625 .elementor-element.elementor-element-4a7397c{--margin-top:30px;--margin-bottom:30px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2625 .elementor-element.elementor-element-935a170{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2625 .elementor-element.elementor-element-379154e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;text-align:start;}.elementor-2625 .elementor-element.elementor-element-6d4d360{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;font-size:16px;}.elementor-2625 .elementor-element.elementor-element-2f4f40c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;font-size:16px;}.elementor-2625 .elementor-element.elementor-element-aa2d486{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;font-size:16px;}.elementor-2625 .elementor-element.elementor-element-7e7e7f2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group > label{font-size:15px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-type-html{font-size:15px;}.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group .elementor-field, .elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-subgroup label{font-size:14px;}}@media(min-width:768px){.elementor-2625 .elementor-element.elementor-element-c14cd6f{--content-width:620px;}.elementor-2625 .elementor-element.elementor-element-d2e6157{--content-width:1500px;}.elementor-2625 .elementor-element.elementor-element-935a170{--width:26%;}}/* Start custom CSS for heading, class: .elementor-element-c9cfa80 */@media (max-width: 767px){
  .elementor-2625 .elementor-element.elementor-element-c9cfa80 br { display: none !important; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6d4d360 */@media (max-width: 767px){
  .elementor-2625 .elementor-element.elementor-element-6d4d360 br { display: none !important; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-2f4f40c */@media (max-width: 767px){
  .elementor-2625 .elementor-element.elementor-element-2f4f40c br { display: none !important; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-aa2d486 */@media (max-width: 767px){
  .elementor-2625 .elementor-element.elementor-element-aa2d486 br { display: none !important; }
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-76794b3 *//* === Layout 2 colonne per Elementor Form === */
.form-contatti-2col{
  --field-h: 48px;   /* altezza input singolo */
  --row-gap: 15px;   /* spazio verticale tra campi */
}

.form-contatti-2col .elementor-form-fields-wrapper{
  display: grid;
  grid-template-columns: 1fr 1fr;      /* sx = campi, dx = messaggio */
  grid-auto-rows: min-content;
  gap: var(--row-gap) 24px;            /* spazi tra campi */
  align-items: start;
}

/* Tutti i campi standard nella colonna sinistra */
.form-contatti-2col .elementor-field-group{
  grid-column: 1;
  margin: 0 !important; /* usiamo solo il gap della grid */
}

/* Textarea Messaggio nella colonna destra, alta quanto i 4 campi */
.form-contatti-2col .elementor-field-group.elementor-field-type-textarea{
  grid-column: 2;
  grid-row: 1 / span 4;
  display: flex;
}
.form-contatti-2col .elementor-field-group.elementor-field-type-textarea textarea{
  height: 100%;
  min-height: calc(4 * var(--field-h) + 3 * var(--row-gap)) !important;
  resize: vertical;
}

/* Checkbox privacy: sotto la colonna sinistra */
.form-contatti-2col .elementor-field-group.elementor-field-type-acceptance{
  grid-column: 1;
  margin-bottom: -8px !important;   /* avvicina le due voci */
}
/* IMPORTANT: do spazio sotto l'ultima checkbox, così il messaggio generale respira */
.form-contatti-2col .elementor-field-group.elementor-field-type-acceptance:last-of-type{
  margin-bottom: 14px !important;
}

/* Pulsante INVIA nella colonna destra */
.form-contatti-2col .elementor-field-group.elementor-field-type-submit{
  grid-column: 2;
  justify-self: end;                 /* lo tengo a destra */
  align-self: end;
}

/* --- Responsive: su mobile tutto in una colonna --- */
@media (max-width: 767px){
  .form-contatti-2col .elementor-form-fields-wrapper{
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .form-contatti-2col .elementor-field-group,
  .form-contatti-2col .elementor-field-group.elementor-field-type-textarea,
  .form-contatti-2col .elementor-field-group.elementor-field-type-acceptance,
  .form-contatti-2col .elementor-field-group.elementor-field-type-submit{
    grid-column: 1;
    grid-row: auto;
  }
  .form-contatti-2col .elementor-field-group.elementor-field-type-textarea textarea{
    min-height: 200px !important;
    height: auto;
  }
  .form-contatti-2col .elementor-field-group.elementor-field-type-submit{
    margin-top: 20px !important;     /* più spazio rispetto alle acceptance */
    justify-self: center;            /* centrato su mobile */
  }
}

/* Colore testo e sfondo input/textarea */
.elementor-2625 .elementor-element.elementor-element-76794b3 input,
.elementor-2625 .elementor-element.elementor-element-76794b3 textarea{
  color: #000000 !important;
  background-color: transparent !important;
}

.elementor-2625 .elementor-element.elementor-element-76794b3 ::placeholder{
  color: #000000 !important;
  opacity: 1 !important;
}

/* Font più piccolo per checkbox */
.elementor-field-type-acceptance label{
  font-size: 13px !important;
}

/* ===== MESSAGGI FORM (success / error / server / invalid) ===== */

/* Forzo i gruppi campo (tranne textarea/checkbox/submit) a layout colonna,
   così il messaggio inline ha spazio reale sotto l’input */
.form-contatti-2col .elementor-field-group:not(.elementor-field-type-textarea):not(.elementor-field-type-acceptance):not(.elementor-field-type-submit){
  display: flex;
  flex-direction: column;
}

/* Stile base messaggi */
.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-message{
  color: #7B5147 !important;
  font-family: "Roboto", sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important; /* bold */
  line-height: 1.4 !important;

  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;

  display: block !important;
}

/* 1) Messaggi di errore sotto al singolo campo (inline) */
.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-field-group .elementor-message{
  margin-top: 12px !important;  /* stacco dall’input */
  margin-bottom: 0 !important;  /* lascia gestire lo spacing alla grid */
}

/* 2) Messaggio generale del form (es. "Si è verificato un errore! Riprova.") 
   Lo teniamo in colonna sinistra e lo stacchiamo bene */
.form-contatti-2col .elementor-form-fields-wrapper > .elementor-message{
  grid-column: 1 !important;
  margin-top: 12px !important;
}

/* Icone / X / spunte (se presenti) */
.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-message svg,
.elementor-2625 .elementor-element.elementor-element-76794b3 .elementor-message svg *{
  fill: #7B5147 !important;
  stroke: #7B5147 !important;
}/* End custom CSS */