.elementor-42379 .elementor-element.elementor-element-feb9928{--display:flex;}.elementor-42379 .elementor-element.elementor-element-a7d073c{--spacer-size:50px;}.elementor-42379 .elementor-element.elementor-element-59a0589 > .elementor-container{max-width:580px;}.elementor-42379 .elementor-element.elementor-element-59a0589{margin-top:25px;margin-bottom:0px;}.elementor-42379 .elementor-element.elementor-element-c8d89db > .elementor-container{max-width:580px;}.elementor-42379 .elementor-element.elementor-element-c8d89db{margin-top:25px;margin-bottom:0px;}.elementor-42379 .elementor-element.elementor-element-4db1dd2 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-42379 .elementor-element.elementor-element-4db1dd2:not(.elementor-motion-effects-element-type-background), .elementor-42379 .elementor-element.elementor-element-4db1dd2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-42379 .elementor-element.elementor-element-4db1dd2{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 0px 50px 0px;}.elementor-42379 .elementor-element.elementor-element-4db1dd2 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}@media(max-width:1024px){.elementor-42379 .elementor-element.elementor-element-4db1dd2{padding:30px 25px 30px 25px;}}@media(max-width:767px){.elementor-42379 .elementor-element.elementor-element-feb9928{--margin-top:-31px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-42379 .elementor-element.elementor-element-a7d073c{--spacer-size:38px;}.elementor-42379 .elementor-element.elementor-element-f6ba7e5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-42379 .elementor-element.elementor-element-012f236{margin:-36px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-42379 .elementor-element.elementor-element-59a0589{margin-top:50px;margin-bottom:0px;}.elementor-42379 .elementor-element.elementor-element-c8d89db{margin-top:50px;margin-bottom:0px;}.elementor-42379 .elementor-element.elementor-element-4db1dd2{margin-top:30px;margin-bottom:0px;padding:30px 20px 30px 20px;}}/* Start custom CSS for shortcode, class: .elementor-element-bc029ee *//* ==============================
   MODULO / FORM DORMI SERENO
============================== */

:root{
  --ds-blue:#0A2E5C;
  --ds-blue-dark:#062242;
  --ds-cream:#FAF8F4;
  --ds-white:#ffffff;
  --ds-beige:#F1EDE6;
  --ds-sand:#E2D6C3;
  --ds-gold:#D6B26D;
  --ds-gold-dark:#B98D42;
  --ds-green:#7BAE92;
  --ds-green-light:#A7D7B9;
  --ds-red:#E8534A;
  --ds-text:#102A43;
  --ds-muted:#5B7088;
  --ds-shadow:0 18px 50px rgba(10,46,92,.14);
}

/* CONTENITORE MODULO */
form,
.wpcf7 form,
.checkout-form,
.order-form,
.elementor-form{
  background:var(--ds-white);
  border:1px solid var(--ds-sand);
  border-radius:28px;
  padding:28px;
  box-shadow:var(--ds-shadow);
  font-family:'DM Sans', Arial, sans-serif;
  color:var(--ds-text);
}

/* LABEL */
form label,
.wpcf7 label,
.elementor-field-label{
  display:block;
  margin-bottom:7px;
  color:var(--ds-blue);
  font-weight:800;
  font-size:.88rem;
}

/* INPUT, SELECT, TEXTAREA */
form input,
form select,
form textarea,
.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea,
.elementor-field,
.elementor-field-textual{
  width:100%;
  min-height:52px;
  background:var(--ds-cream);
  border:1.5px solid var(--ds-sand);
  border-radius:15px;
  padding:13px 15px;
  font-family:'DM Sans', Arial, sans-serif;
  font-size:.95rem;
  color:var(--ds-text);
  outline:none;
  transition:.2s ease;
  box-shadow:none;
}

/* PLACEHOLDER */
form input::placeholder,
form textarea::placeholder,
.elementor-field::placeholder{
  color:rgba(91,112,136,.65);
}

/* FOCUS */
form input:focus,
form select:focus,
form textarea:focus,
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus,
.elementor-field:focus,
.elementor-field-textual:focus{
  border-color:var(--ds-green);
  background:#fff;
  box-shadow:0 0 0 4px rgba(123,174,146,.16);
}

/* CAMPI */
form p,
.form-row,
.elementor-field-group,
.wpcf7-form-control-wrap{
  margin-bottom:16px;
}

/* RADIO / CHECKBOX */
form input[type="radio"],
form input[type="checkbox"]{
  width:auto;
  min-height:auto;
  accent-color:var(--ds-green);
  margin-right:7px;
}

/* SELECT */
form select{
  appearance:auto;
  cursor:pointer;
}

/* TEXTAREA */
form textarea{
  min-height:110px;
  resize:vertical;
}

/* BOTTONE PRINCIPALE */
form button,
form input[type="submit"],
.wpcf7-submit,
.elementor-button,
.checkout-button,
button[type="submit"]{
  width:100%;
  min-height:56px;
  border:0;
  border-radius:16px;
  background:linear-gradient(135deg,var(--ds-green),var(--ds-green-light));
  color:#fff;
  font-family:'DM Sans', Arial, sans-serif;
  font-size:1rem;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 28px rgba(123,174,146,.36);
  transition:.22s ease;
  text-transform:none;
}

/* HOVER BOTTONE */
form button:hover,
form input[type="submit"]:hover,
.wpcf7-submit:hover,
.elementor-button:hover,
.checkout-button:hover,
button[type="submit"]:hover{
  transform:translateY(-2px);
  filter:brightness(1.04);
  box-shadow:0 15px 34px rgba(123,174,146,.46);
}

/* MESSAGGI DI ERRORE */
.wpcf7-not-valid-tip,
.error,
.form-error,
.woocommerce-error,
.elementor-message-danger{
  color:var(--ds-red);
  font-size:.82rem;
  font-weight:700;
  margin-top:6px;
}

/* MESSAGGI SUCCESSO */
.wpcf7-mail-sent-ok,
.success,
.form-success,
.woocommerce-message,
.elementor-message-success{
  background:var(--ds-green-pale, #EEF7F1);
  color:var(--ds-blue);
  border:1px solid rgba(123,174,146,.35);
  border-radius:16px;
  padding:14px 16px;
  font-weight:800;
}

/* BOX RIEPILOGO / TRUST */
.form-trust-box,
.order-trust-box,
.checkout-trust-box{
  background:linear-gradient(135deg,var(--ds-blue-dark),var(--ds-blue));
  color:#fff;
  border-radius:20px;
  padding:18px;
  margin-top:18px;
}

.form-trust-box strong,
.order-trust-box strong,
.checkout-trust-box strong{
  color:var(--ds-gold);
}

.form-trust-box p,
.order-trust-box p,
.checkout-trust-box p{
  color:rgba(255,255,255,.75);
  font-size:.9rem;
  margin:6px 0 0;
}

/* BADGE PAGAMENTO ALLA CONSEGNA */
.cod-badge,
.payment-badge,
.contrassegno-badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  background:rgba(123,174,146,.12);
  border:1px solid rgba(123,174,146,.3);
  color:var(--ds-blue);
  padding:8px 12px;
  border-radius:999px;
  font-size:.82rem;
  font-weight:900;
  margin-bottom:14px;
}

/* MOBILE */
@media(max-width:640px){
  form,
  .wpcf7 form,
  .checkout-form,
  .order-form,
  .elementor-form{
    padding:22px 18px;
    border-radius:22px;
  }

  form input,
  form select,
  form textarea,
  .wpcf7 input,
  .wpcf7 select,
  .wpcf7 textarea,
  .elementor-field,
  .elementor-field-textual{
    min-height:50px;
    font-size:.94rem;
    border-radius:14px;
  }

  form button,
  form input[type="submit"],
  .wpcf7-submit,
  .elementor-button,
  .checkout-button,
  button[type="submit"]{
    min-height:54px;
    font-size:.96rem;
  }
}/* End custom CSS */