.elementor-2406 .elementor-element.elementor-element-205154a{--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;--gap:10px 0px;--row-gap:10px;--column-gap:0px;--margin-top:60px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-2406 .elementor-element.elementor-element-2ad15bd{text-align:center;}.elementor-2406 .elementor-element.elementor-element-2ad15bd .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-size:22px;font-weight:400;color:#008051;}.elementor-2406 .elementor-element.elementor-element-3bd61aa{width:var( --container-widget-width, 70% );max-width:70%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:70%;--container-widget-flex-grow:0;text-align:center;}.elementor-2406 .elementor-element.elementor-element-3bd61aa .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-size:48px;font-weight:700;line-height:120%;color:#27262B;}.elementor-2406 .elementor-element.elementor-element-f4d2edf{--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;--justify-content:center;--margin-top:60px;--margin-bottom:80px;--margin-left:auto;--margin-right:auto;--padding-top:0px;--padding-bottom:0px;--padding-left:120px;--padding-right:120px;}.elementor-2406 .elementor-element.elementor-element-3e1279e{width:100%;max-width:100%;}.elementor-2406 .elementor-element.elementor-element-8a19ea6{--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:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-2406 .elementor-element.elementor-element-0e3ac10{--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;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--border-radius:40px 40px 40px 40px;--padding-top:80px;--padding-bottom:80px;--padding-left:100px;--padding-right:100px;}.elementor-2406 .elementor-element.elementor-element-0e3ac10:not(.elementor-motion-effects-element-type-background), .elementor-2406 .elementor-element.elementor-element-0e3ac10 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0080511A;}.elementor-2406 .elementor-element.elementor-element-0c7b5bc{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2406 .elementor-element.elementor-element-3536d27{text-align:start;}.elementor-2406 .elementor-element.elementor-element-3536d27 .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-size:22px;font-weight:400;text-transform:uppercase;color:#008051;}.elementor-2406 .elementor-element.elementor-element-1f2a89c{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2406 .elementor-element.elementor-element-1f2a89c .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-size:36px;font-weight:700;color:#27262B;}.elementor-widget-text-editor{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-2406 .elementor-element.elementor-element-22cb2a8{margin:48px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Public Sans", Sans-serif;font-size:16px;font-weight:300;color:#27262B;}.elementor-2406 .elementor-element.elementor-element-2407644{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:769px){.elementor-2406 .elementor-element.elementor-element-f4d2edf{--width:1920px;}.elementor-2406 .elementor-element.elementor-element-8a19ea6{--content-width:100%;}.elementor-2406 .elementor-element.elementor-element-0e3ac10{--content-width:1680px;}}@media(max-width:1540px) and (min-width:769px){.elementor-2406 .elementor-element.elementor-element-205154a{--content-width:100%;}.elementor-2406 .elementor-element.elementor-element-f4d2edf{--width:100%;}.elementor-2406 .elementor-element.elementor-element-0c7b5bc{--width:40%;}.elementor-2406 .elementor-element.elementor-element-2407644{--width:60%;}}@media(max-width:1024px) and (min-width:769px){.elementor-2406 .elementor-element.elementor-element-205154a{--content-width:100%;}.elementor-2406 .elementor-element.elementor-element-0c7b5bc{--width:100%;}.elementor-2406 .elementor-element.elementor-element-2407644{--width:100%;}}@media(min-width:1920px){.elementor-2406 .elementor-element.elementor-element-205154a{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-2406 .elementor-element.elementor-element-2ad15bd .elementor-heading-title{font-size:28px;}.elementor-2406 .elementor-element.elementor-element-3bd61aa .elementor-heading-title{font-size:60px;}.elementor-2406 .elementor-element.elementor-element-0e3ac10{--gap:150px 150px;--row-gap:150px;--column-gap:150px;}.elementor-2406 .elementor-element.elementor-element-3536d27 .elementor-heading-title{font-size:28px;}}@media(max-width:1540px){.elementor-2406 .elementor-element.elementor-element-205154a{--padding-top:0px;--padding-bottom:0px;--padding-left:80px;--padding-right:80px;}.elementor-2406 .elementor-element.elementor-element-2ad15bd .elementor-heading-title{font-size:18px;}.elementor-2406 .elementor-element.elementor-element-3bd61aa .elementor-heading-title{font-size:48px;}.elementor-2406 .elementor-element.elementor-element-f4d2edf{--padding-top:0px;--padding-bottom:0px;--padding-left:80px;--padding-right:80px;}.elementor-2406 .elementor-element.elementor-element-0e3ac10{--padding-top:80px;--padding-bottom:80px;--padding-left:60px;--padding-right:60px;}.elementor-2406 .elementor-element.elementor-element-3536d27 .elementor-heading-title{font-size:18px;}}@media(max-width:1024px){.elementor-2406 .elementor-element.elementor-element-205154a{--margin-top:60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;}.elementor-2406 .elementor-element.elementor-element-3bd61aa .elementor-heading-title{font-size:36px;}.elementor-2406 .elementor-element.elementor-element-f4d2edf{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-2406 .elementor-element.elementor-element-8a19ea6{--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;--border-radius:0px 0px 0px 0px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-2406 .elementor-element.elementor-element-0e3ac10{--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:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}}@media(max-width:768px){.elementor-2406 .elementor-element.elementor-element-205154a{--margin-top:30px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:6px;}.elementor-2406 .elementor-element.elementor-element-3bd61aa .elementor-heading-title{font-size:28px;}.elementor-2406 .elementor-element.elementor-element-f4d2edf{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-2406 .elementor-element.elementor-element-8a19ea6{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-2406 .elementor-element.elementor-element-0e3ac10{--padding-top:40px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}}/* Start custom CSS *//* ---- Layout righe: ogni <p> diventa flex (due campi affiancati) ---- */
.wpcf7-form p {
  display: flex;
  gap: 24px;
  margin: 0 0 24px 0;
  align-items: center;
}

/* Ogni campo occupa spazio uguale */
.wpcf7-form-control-wrap {
  flex: 1;
  position: relative;
  display: block;
}

/* ---- Campi di testo / email / telefono ---- */
.wpcf7-form-control.wpcf7-text,
.wpcf7-form-control.wpcf7-email,
.wpcf7-form-control.wpcf7-tel {
  width: 100%;
  box-sizing: border-box;
  border: none;
  background: #ffffff;
  border-radius: 50px;
  padding: 12px 32px;
  font-size: 18px;
  color: #444;
  transition: box-shadow 0.2s ease;
}

.wpcf7-form-control.wpcf7-text:focus,
.wpcf7-form-control.wpcf7-email:focus,
.wpcf7-form-control.wpcf7-tel:focus,
.wpcf7-form-control.wpcf7-textarea:focus {
  outline: none;
  box-shadow: 0 0 0 2px #16793f;
}

/* ---- Textarea (Descrizione) ---- */
.wpcf7-form-control.wpcf7-textarea {
  width: 100%;
  box-sizing: border-box;
  border: none;
  background: #ffffff;
  border-radius: 28px;
  padding: 12px 32px;
  font-size: 18px;
  color: #444;
  min-height: 170px;
  resize: vertical;
}

/* ---- Placeholder grigi ---- */
.wpcf7-form-control::placeholder {
  color: #8b8f8b;
  opacity: 1;
}

/* =========================================================
   CAMPO UPLOAD CV (pillola bianca + cerchio verde con icona)
   ========================================================= */
.wpcf7-form-control-wrap[data-name="CV"] {
  background: #ffffff;
  border-radius: 50px;
  min-height: 72px;
  overflow: hidden;
}

/* Testo "Carica il tuo CV" (segnaposto finto) */
.wpcf7-form-control-wrap[data-name="CV"]::before {
  content: "Carica il tuo CV";
  position: absolute;
  left: 32px;
  top: 50%;
  transform: translateY(-50%);
  color: #8b8f8b;
  font-size: 18px;
  pointer-events: none;
}

/* Cerchio verde con icona upload */
.wpcf7-form-control-wrap[data-name="CV"]::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-color: #16793f;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2220%22%20height=%2220%22%20viewBox=%220%200%2020%2020%22%20fill=%22none%22%3E%3Cg%20clip-path=%22url(%23clip0_2208_1598)%22%3E%3Cpath%20d=%22M11.666%205.84589V0.395052C12.4268%200.683385%2013.1268%201.12755%2013.7202%201.72005L16.6235%204.62505C17.2168%205.21755%2017.661%205.91755%2017.9493%206.67839H12.4993C12.0393%206.67839%2011.666%206.30505%2011.666%205.84589ZM18.3127%208.34589H12.4993C11.121%208.34589%209.99935%207.22422%209.99935%205.84589V0.0317187C9.86518%200.0225521%209.73101%200.0117188%209.59518%200.0117188H5.83268C3.53518%200.0125521%201.66602%201.88172%201.66602%204.17922V15.8459C1.66602%2018.1434%203.53518%2020.0126%205.83268%2020.0126H14.166C16.4635%2020.0126%2018.3327%2018.1434%2018.3327%2015.8459V8.75005C18.3327%208.61422%2018.3218%208.48005%2018.3127%208.34589ZM13.0885%2014.0792C12.926%2014.2417%2012.7127%2014.3234%2012.4993%2014.3234C12.286%2014.3234%2012.0727%2014.2417%2011.9102%2014.0792L10.8327%2013.0017V16.6667C10.8327%2017.1267%2010.4593%2017.5001%209.99935%2017.5001C9.53935%2017.5001%209.16601%2017.1267%209.16601%2016.6667V13.0017L8.08851%2014.0792C7.76268%2014.4051%207.23601%2014.4051%206.91018%2014.0792C6.58435%2013.7534%206.58435%2013.2267%206.91018%2012.9009L8.25518%2011.5559C9.21685%2010.5942%2010.7818%2010.5942%2011.7443%2011.5559L13.0893%2012.9009C13.4152%2013.2267%2013.4152%2013.7534%2013.0893%2014.0792H13.0885Z%22%20fill=%22white%22/%3E%3C/g%3E%3Cdefs%3E%3CclipPath%20id=%22clip0_2208_1598%22%3E%3Crect%20width=%2220%22%20height=%2220%22%20fill=%22white%22/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 22px;
  pointer-events: none;
}

/* Input file reale: invisibile ma cliccabile su tutta la pillola */
.wpcf7-form-control.wpcf7-file {
  width: 100%;
  min-height: 72px;
  opacity: 0;
  cursor: pointer;
}

/* =========================================================
   CHECKBOX PRIVACY
   ========================================================= */
.wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

.wpcf7-acceptance label {
  display: flex;
  align-items: center;
  gap: 14px;
  cursor: pointer;
  font-size: 16px;
  color: #5a5f5a;
}

.wpcf7-acceptance input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  border: 2px solid #16793f;
  border-radius: 7px;
  background: #ffffff;
  cursor: pointer;
  position: relative;
  margin: 0;
}

.wpcf7-acceptance input[type="checkbox"]:checked {
  background: #16793f;
}

.wpcf7-acceptance input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 7px;
  top: 3px;
  width: 6px;
  height: 11px;
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

/* =========================================================
   PULSANTE INVIA
   ========================================================= */
.wpcf7-submit {
  background: #16793f;
  color: #ffffff;
  border: none;
  border-radius: 50px;
  padding: 12px 44px;
  font-size: 18px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s ease;
}

.wpcf7-submit:hover {
  background: #115e30;
}

.wpcf7-submit:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

/* =========================================================
   STATI DI ERRORE / MESSAGGI
   ========================================================= */
.wpcf7-form-control.wpcf7-not-valid {
  box-shadow: 0 0 0 2px #e25555;
}

.wpcf7-not-valid-tip {
  display: block;
  color: #e25555;
  font-size: 14px;
  padding: 6px 0 0 32px;
}

.wpcf7-response-output {
  border-radius: 12px;
  margin: 18px 0 0;
  padding: 14px 20px;
  font-size: 15px;
}

/* =========================================================
   RESPONSIVE: su mobile i campi vanno in colonna
   ========================================================= */
@media (max-width: 600px) {
  .wpcf7-form p {
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }
}/* End custom CSS */