.elementor-4640 .elementor-element.elementor-element-fcf97db{--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;--padding-top:30px;--padding-bottom:60px;--padding-left:60px;--padding-right:60px;}.elementor-4640 .elementor-element.elementor-element-fcf97db:not(.elementor-motion-effects-element-type-background), .elementor-4640 .elementor-element.elementor-element-fcf97db > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-4640 .elementor-element.elementor-element-a5e5ebd{--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;--justify-content:space-evenly;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:60px;--padding-right:60px;}.elementor-4640 .elementor-element.elementor-element-a5e5ebd.e-con{--align-self:stretch;}.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-4640 .elementor-element.elementor-element-ab823c9 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;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-4640 .elementor-element.elementor-element-a9cf214{font-family:"Outfit", Sans-serif;font-size:20px;}.elementor-4640 .elementor-element.elementor-element-a1187d3{--grid-template-columns:repeat(0, auto);text-align:left;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-4640 .elementor-element.elementor-element-a1187d3 .elementor-social-icon{background-color:var( --e-global-color-primary );}.elementor-4640 .elementor-element.elementor-element-a1187d3 .elementor-social-icon i{color:var( --e-global-color-secondary );}.elementor-4640 .elementor-element.elementor-element-a1187d3 .elementor-social-icon svg{fill:var( --e-global-color-secondary );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;}.elementor-4640 .elementor-element.elementor-element-8a70fd9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4640 .elementor-element.elementor-element-41f7dab{--display:flex;}.elementor-4640 .elementor-element.elementor-element-41f7dab:not(.elementor-motion-effects-element-type-background), .elementor-4640 .elementor-element.elementor-element-41f7dab > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-4640 .elementor-element.elementor-element-f8008d4{--display:flex;--background-transition:0.3s;}.elementor-4640 .elementor-element.elementor-element-f8008d4:not(.elementor-motion-effects-element-type-background), .elementor-4640 .elementor-element.elementor-element-f8008d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-border );}.elementor-4640 .elementor-element.elementor-element-1a19eda{padding:20px 60px 0px 60px;text-align:start;}.elementor-4640 .elementor-element.elementor-element-1a19eda .elementor-heading-title{font-family:"Outfit", Sans-serif;font-size:25px;font-weight:400;color:#49382C;}.elementor-4640 .elementor-element.elementor-element-986ca53{--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-4640 .elementor-element.elementor-element-986ca53:not(.elementor-motion-effects-element-type-background), .elementor-4640 .elementor-element.elementor-element-986ca53 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-4640 .elementor-element.elementor-element-dec6b7a{--display:flex;--justify-content:center;}.elementor-widget-onefinest-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-onefinest-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-onefinest-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-onefinest-icon-box.elementor-view-stacked-onefinest .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-onefinest-icon-box.elementor-view-stacked-onefinest .elementor-icon-box-wrapper:hover i{color:var( --e-global-color-primary );}.elementor-widget-onefinest-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-onefinest-icon-box .elementor-icon-box-title a{color:var( --e-global-color-primary );}.elementor-widget-onefinest-icon-box .elementor-icon-box-description{color:var( --e-global-color-text );}.elementor-widget-onefinest-icon-box .elementor-icon-box-description-2{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-aabacaa.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-aabacaa.elementor-view-framed .elementor-icon, .elementor-4640 .elementor-element.elementor-element-aabacaa.elementor-view-default .elementor-icon{fill:var( --e-global-color-text );color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-aabacaa.elementor-view-stacked-onefinest .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-aabacaa.elementor-view-stacked-onefinest .elementor-icon-box-wrapper:hover i{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-aabacaa{--icon-box-icon-margin:13px;}.elementor-4640 .elementor-element.elementor-element-aabacaa .elementor-icon{font-size:50px;}.elementor-4640 .elementor-element.elementor-element-aabacaa .elementor-icon-box-icon{justify-content:center;}.elementor-4640 .elementor-element.elementor-element-aabacaa .elementor-icon-box-icon .elementor-icon{justify-content:center;}.elementor-4640 .elementor-element.elementor-element-aabacaa .elementor-icon-box-title{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-aabacaa .elementor-icon-box-title a{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-aabacaa .elementor-icon-box-title, .elementor-4640 .elementor-element.elementor-element-aabacaa .elementor-icon-box-title a{font-family:"Cormorant", Sans-serif;font-weight:500;}.elementor-4640 .elementor-element.elementor-element-fba4dd1{text-align:center;}.elementor-4640 .elementor-element.elementor-element-fba4dd1 a{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-fba4dd1 a:hover, .elementor-4640 .elementor-element.elementor-element-fba4dd1 a:focus{color:var( --e-global-color-accent );}.elementor-4640 .elementor-element.elementor-element-115f330{--display:flex;--justify-content:center;border-style:solid;--border-style:solid;border-width:0px 0px 0px 1px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:1px;border-color:var( --e-global-color-accent );--border-color:var( --e-global-color-accent );--border-radius:0px 0px 0px 0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:0px;}.elementor-4640 .elementor-element.elementor-element-a8b03a9.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-a8b03a9.elementor-view-framed .elementor-icon, .elementor-4640 .elementor-element.elementor-element-a8b03a9.elementor-view-default .elementor-icon{fill:var( --e-global-color-text );color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-a8b03a9.elementor-view-stacked-onefinest .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-a8b03a9.elementor-view-stacked-onefinest .elementor-icon-box-wrapper:hover i{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-a8b03a9{--icon-box-icon-margin:13px;}.elementor-4640 .elementor-element.elementor-element-a8b03a9 .elementor-icon{font-size:50px;}.elementor-4640 .elementor-element.elementor-element-a8b03a9 .elementor-icon-box-icon{justify-content:center;}.elementor-4640 .elementor-element.elementor-element-a8b03a9 .elementor-icon-box-icon .elementor-icon{justify-content:center;}.elementor-4640 .elementor-element.elementor-element-a8b03a9 .elementor-icon-box-title{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-a8b03a9 .elementor-icon-box-title a{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-a8b03a9 .elementor-icon-box-title, .elementor-4640 .elementor-element.elementor-element-a8b03a9 .elementor-icon-box-title a{font-family:"Cormorant", Sans-serif;font-weight:500;}.elementor-4640 .elementor-element.elementor-element-4ab2776{text-align:center;}.elementor-4640 .elementor-element.elementor-element-4ab2776 a:hover, .elementor-4640 .elementor-element.elementor-element-4ab2776 a:focus{color:var( --e-global-color-accent );}.elementor-4640 .elementor-element.elementor-element-f7c4924{--display:flex;--justify-content:center;border-style:solid;--border-style:solid;border-width:0px 0px 0px 1px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:1px;border-color:var( --e-global-color-accent );--border-color:var( --e-global-color-accent );--border-radius:0px 0px 0px 0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:0px;}.elementor-4640 .elementor-element.elementor-element-bf498b1.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-bf498b1.elementor-view-framed .elementor-icon, .elementor-4640 .elementor-element.elementor-element-bf498b1.elementor-view-default .elementor-icon{fill:var( --e-global-color-text );color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-bf498b1.elementor-view-stacked-onefinest .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-bf498b1.elementor-view-stacked-onefinest .elementor-icon-box-wrapper:hover i{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-bf498b1{--icon-box-icon-margin:13px;}.elementor-4640 .elementor-element.elementor-element-bf498b1 .elementor-icon{font-size:50px;}.elementor-4640 .elementor-element.elementor-element-bf498b1 .elementor-icon-box-icon{justify-content:center;}.elementor-4640 .elementor-element.elementor-element-bf498b1 .elementor-icon-box-icon .elementor-icon{justify-content:center;}.elementor-4640 .elementor-element.elementor-element-bf498b1 .elementor-icon-box-title{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-bf498b1 .elementor-icon-box-title a{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-bf498b1 .elementor-icon-box-title, .elementor-4640 .elementor-element.elementor-element-bf498b1 .elementor-icon-box-title a{font-family:"Cormorant", Sans-serif;font-weight:500;}.elementor-4640 .elementor-element.elementor-element-952ab1a{text-align:center;}.elementor-4640 .elementor-element.elementor-element-952ab1a a:hover, .elementor-4640 .elementor-element.elementor-element-952ab1a a:focus{color:var( --e-global-color-accent );}.elementor-4640 .elementor-element.elementor-element-c0b092d{--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;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:60px;--padding-bottom:60px;--padding-left:60px;--padding-right:60px;}.elementor-4640 .elementor-element.elementor-element-c0b092d:not(.elementor-motion-effects-element-type-background), .elementor-4640 .elementor-element.elementor-element-c0b092d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;}.elementor-4640 .elementor-element.elementor-element-27c5771 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Outfit", Sans-serif;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-text );border-radius:84px 84px 84px 84px;padding:16px 48px 16px 48px;}.elementor-4640 .elementor-element.elementor-element-27c5771 .elementor-button:hover, .elementor-4640 .elementor-element.elementor-element-27c5771 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-secondary );}.elementor-4640 .elementor-element.elementor-element-27c5771{padding:0px 0px 0px 0px;}.elementor-4640 .elementor-element.elementor-element-27c5771 .elementor-button:hover svg, .elementor-4640 .elementor-element.elementor-element-27c5771 .elementor-button:focus svg{fill:var( --e-global-color-secondary );}.elementor-4640 .elementor-element.elementor-element-04479fd{text-align:center;}.elementor-4640 .elementor-element.elementor-element-04479fd .elementor-heading-title{color:var( --e-global-color-text );}.elementor-4640 .elementor-element.elementor-element-7595cac{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-e7460bd{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-8e75dff{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-5c4868c{padding:10px 0px 10px 10px;border-style:none;}.elementor-4640 .elementor-element.elementor-element-a651c71{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-1b6e96d{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-8c245f5{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-248e44c{padding:10px 0px 10px 10px;border-style:none;}.elementor-4640 .elementor-element.elementor-element-f8e3cc0{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-3f6d1ed{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-5f1667b{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-fa79cc9{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-09127ff{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-59a3667{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-6bf60cf{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-5d5aeda{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-f27ef4f{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-774ce44{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-7ac31c4{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-f21e7d1{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-5abc925{--display:flex;border-style:none;--border-style:none;}.elementor-4640 .elementor-element.elementor-element-31186a4{padding:10px 0px 10px 10px;}.elementor-4640 .elementor-element.elementor-element-524e630{--n-accordion-title-font-size:1rem;--n-accordion-title-icon-order:initial;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-title-normal-color:var( --e-global-color-text );--n-accordion-icon-size:16px;--n-accordion-icon-gap:0px;}.elementor-4640 .elementor-element.elementor-element-524e630 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{border-style:solid;border-width:1px 0px 1px 0px;border-color:var( --e-global-color-border );}.elementor-4640 .elementor-element.elementor-element-524e630 {--n-accordion-padding:15px 15px 15px 15px;}:where( .elementor-4640 .elementor-element.elementor-element-524e630 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Outfit", Sans-serif;font-weight:500;}.elementor-4640 .elementor-element.elementor-element-524e630 .e-n-accordion-item .e-n-accordion-item-title .e-n-accordion-item-title-icon{width:2%;height:1%;}@media(max-width:1200px){.elementor-4640 .elementor-element.elementor-element-a5e5ebd{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}}@media(max-width:1024px){.elementor-4640 .elementor-element.elementor-element-a5e5ebd{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}}@media(max-width:880px){.elementor-4640 .elementor-element.elementor-element-986ca53{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}}@media(max-width:767px){.elementor-4640 .elementor-element.elementor-element-fcf97db{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-4640 .elementor-element.elementor-element-115f330{border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4640 .elementor-element.elementor-element-f7c4924{border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4640 .elementor-element.elementor-element-c0b092d{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-4640 .elementor-element.elementor-element-27c5771 .elementor-button{font-size:11px;}}@media(min-width:768px){.elementor-4640 .elementor-element.elementor-element-a5e5ebd{--width:50%;}.elementor-4640 .elementor-element.elementor-element-41f7dab{--width:50%;}.elementor-4640 .elementor-element.elementor-element-c0b092d{--content-width:800px;}}@media(max-width:1200px) and (min-width:768px){.elementor-4640 .elementor-element.elementor-element-41f7dab{--width:60%;}}@media(max-width:1024px) and (min-width:768px){.elementor-4640 .elementor-element.elementor-element-41f7dab{--width:60%;}}/* Start custom CSS for .elementor-element-41f7dab */@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap');

/* --- CONTENITORE GENERALE DEL FORM --- */
.wpcf7-form {
  font-family: 'Outfit', sans-serif;
  max-width: 100%;
  padding: 30px;
}

/* --- OGNI RIGA DEL FORM --- */
.wpcf7-form p {
  margin-bottom: 32px;
}

/* --- LABEL (es. "Nome*", "Email*"...) --- */
.wpcf7-form label {
  display: block;
  font-size: 18px;
  font-weight: 400;
  color: #49382C; /* placeholder */
  margin-bottom: 10px;
}

/* --- WRAPPER ATTORNO A INPUT/TEXTAREA --- */
.wpcf7-form-control-wrap {
  display: block;
}

/* --- STILE BASE CONDIVISO DA TUTTI I CAMPI --- */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="date"],
.wpcf7-form input[type="number"],
.wpcf7-form textarea {
  width: 100%;
  box-sizing: border-box;
  background-color: #F4F4EA; /* placeholder */
  border: 1px solid #D8D2C2; /* placeholder */
  border-radius: 0;
  padding: 18px 20px;
  font-family: 'Outfit', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #4A443B; /* placeholder */
}

/* --- CAMPO TESTO → "Nome" (hook per override specifico) --- */
.wpcf7-form input.wpcf7-text {

}

/* --- CAMPO EMAIL --- */
.wpcf7-form input.wpcf7-email {

}

/* --- CAMPO TELEFONO --- */
.wpcf7-form input.wpcf7-tel {

}

/* --- CAMPO DATA --- */
.wpcf7-form input.wpcf7-date {

}

/* --- CAMPI NUMERICI (Numero Adulti / Numero Bambini) --- */
.wpcf7-form input.wpcf7-number {

}

/* --- TEXTAREA → "Messaggio" --- */
.wpcf7-form textarea.wpcf7-textarea {
  min-height: 180px;
  resize: vertical;
}

/* --- STATO FOCUS (bordo scuro, come nel campo "Nome" nello screenshot) --- */
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
  outline: none;
  border-color: #1F1710; /* placeholder */
}

/* --- PLACEHOLDER (es. "Nome e Cognome", "Indirizzo mail") --- */
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
  color: #8A8374; /* placeholder */
  opacity: 1;
}

/* --- PULSANTE SUBMIT ("Invia") --- */
.wpcf7-form input.wpcf7-submit {
  width: 100%;
  background-color: #221A12; /* placeholder */
  color: #FFFFFF; /* placeholder */
  border: none;
  border-radius: 0;
  padding: 20px;
  font-family: 'Outfit', sans-serif;
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.wpcf7-form input.wpcf7-submit:hover {
  background-color: #3A2E20; /* placeholder */
}

.wpcf7-form input.wpcf7-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* --- SPINNER DI CARICAMENTO --- */
.wpcf7-form .wpcf7-spinner {
  margin-left: 12px;
}

/* --- CAMPO NON VALIDO --- */
.wpcf7-form input.wpcf7-not-valid,
.wpcf7-form textarea.wpcf7-not-valid {
  border-color: #B33A3A; /* placeholder */
}

/* --- TOOLTIP DI ERRORE SOTTO AL SINGOLO CAMPO --- */
.wpcf7-form .wpcf7-not-valid-tip {
  display: block;
  font-size: 13px;
  color: #B33A3A; /* placeholder */
  margin-top: 6px;
}

/* --- MESSAGGIO GENERALE DI RISPOSTA --- */
.wpcf7-form .wpcf7-response-output {
  margin-top: 24px;
  padding: 16px 20px;
  font-size: 15px;
  border: 1px solid transparent;
}

.wpcf7-form.sent .wpcf7-response-output {
  border-color: #4A7A4A; /* placeholder */
  color: #4A7A4A; /* placeholder */
}

.wpcf7-form.invalid .wpcf7-response-output {
  border-color: #B33A3A; /* placeholder */
  color: #B33A3A; /* placeholder */
}

/* ================================================================
   OPZIONALE — SELETTORE PER CAMPO SPECIFICO
   ================================================================ */
.wpcf7-form-control-wrap[data-name="nome-del-campo"] input {

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-41f7dab */@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap');

/* --- CONTENITORE GENERALE DEL FORM --- */
.wpcf7-form {
  font-family: 'Outfit', sans-serif;
  max-width: 100%;
  padding: 30px;
}

/* --- OGNI RIGA DEL FORM --- */
.wpcf7-form p {
  margin-bottom: 32px;
}

/* --- LABEL (es. "Nome*", "Email*"...) --- */
.wpcf7-form label {
  display: block;
  font-size: 18px;
  font-weight: 400;
  color: #49382C; /* placeholder */
  margin-bottom: 10px;
}

/* --- WRAPPER ATTORNO A INPUT/TEXTAREA --- */
.wpcf7-form-control-wrap {
  display: block;
}

/* --- STILE BASE CONDIVISO DA TUTTI I CAMPI --- */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="date"],
.wpcf7-form input[type="number"],
.wpcf7-form textarea {
  width: 100%;
  box-sizing: border-box;
  background-color: #F4F4EA; /* placeholder */
  border: 1px solid #D8D2C2; /* placeholder */
  border-radius: 0;
  padding: 18px 20px;
  font-family: 'Outfit', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #4A443B; /* placeholder */
}

/* --- CAMPO TESTO → "Nome" (hook per override specifico) --- */
.wpcf7-form input.wpcf7-text {

}

/* --- CAMPO EMAIL --- */
.wpcf7-form input.wpcf7-email {

}

/* --- CAMPO TELEFONO --- */
.wpcf7-form input.wpcf7-tel {

}

/* --- CAMPO DATA --- */
.wpcf7-form input.wpcf7-date {

}

/* --- CAMPI NUMERICI (Numero Adulti / Numero Bambini) --- */
.wpcf7-form input.wpcf7-number {

}

/* --- TEXTAREA → "Messaggio" --- */
.wpcf7-form textarea.wpcf7-textarea {
  min-height: 180px;
  resize: vertical;
}

/* --- STATO FOCUS (bordo scuro, come nel campo "Nome" nello screenshot) --- */
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
  outline: none;
  border-color: #1F1710; /* placeholder */
}

/* --- PLACEHOLDER (es. "Nome e Cognome", "Indirizzo mail") --- */
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
  color: #8A8374; /* placeholder */
  opacity: 1;
}

/* --- PULSANTE SUBMIT ("Invia") --- */
.wpcf7-form input.wpcf7-submit {
  width: 100%;
  background-color: #221A12; /* placeholder */
  color: #FFFFFF; /* placeholder */
  border: none;
  border-radius: 0;
  padding: 20px;
  font-family: 'Outfit', sans-serif;
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.wpcf7-form input.wpcf7-submit:hover {
  background-color: #3A2E20; /* placeholder */
}

.wpcf7-form input.wpcf7-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* --- SPINNER DI CARICAMENTO --- */
.wpcf7-form .wpcf7-spinner {
  margin-left: 12px;
}

/* --- CAMPO NON VALIDO --- */
.wpcf7-form input.wpcf7-not-valid,
.wpcf7-form textarea.wpcf7-not-valid {
  border-color: #B33A3A; /* placeholder */
}

/* --- TOOLTIP DI ERRORE SOTTO AL SINGOLO CAMPO --- */
.wpcf7-form .wpcf7-not-valid-tip {
  display: block;
  font-size: 13px;
  color: #B33A3A; /* placeholder */
  margin-top: 6px;
}

/* --- MESSAGGIO GENERALE DI RISPOSTA --- */
.wpcf7-form .wpcf7-response-output {
  margin-top: 24px;
  padding: 16px 20px;
  font-size: 15px;
  border: 1px solid transparent;
}

.wpcf7-form.sent .wpcf7-response-output {
  border-color: #4A7A4A; /* placeholder */
  color: #4A7A4A; /* placeholder */
}

.wpcf7-form.invalid .wpcf7-response-output {
  border-color: #B33A3A; /* placeholder */
  color: #B33A3A; /* placeholder */
}

/* ================================================================
   OPZIONALE — SELETTORE PER CAMPO SPECIFICO
   ================================================================ */
.wpcf7-form-control-wrap[data-name="nome-del-campo"] input {

}/* End custom CSS */