.elementor-48 .elementor-element.elementor-element-398521fa > .elementor-background-overlay{background-color:#000000;background-image:url("https://pinisara.com/wp-content/uploads/2026/03/ChatGPT-Image-16.-3.-2026-12_04_36.png");background-position:0px -124px;background-repeat:no-repeat;background-size:cover;opacity:1;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-48 .elementor-element.elementor-element-398521fa{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-48 .elementor-element.elementor-element-3472a47{--spacer-size: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-48 .elementor-element.elementor-element-780daf87 > .elementor-widget-container{margin:0px 0px -7px 0px;}.elementor-48 .elementor-element.elementor-element-780daf87{text-align:center;}.elementor-48 .elementor-element.elementor-element-780daf87 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:60px;font-weight:800;letter-spacing:0.5px;word-spacing:0px;color:var( --e-global-color-205889b );}.elementor-48 .elementor-element.elementor-element-680d2125 > .elementor-widget-container{margin:20px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-680d2125{text-align:center;}.elementor-48 .elementor-element.elementor-element-680d2125 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;color:var( --e-global-color-f12fd31 );}.elementor-48 .elementor-element.elementor-element-665b024c > .elementor-widget-container{margin:20px 0px 0px 0px;padding:0% 0% 0% 0%;}.elementor-48 .elementor-element.elementor-element-665b024c{text-align:center;}.elementor-48 .elementor-element.elementor-element-665b024c .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:33px;font-weight:700;-webkit-text-stroke-color:#000;stroke:#000;color:var( --e-global-color-974e19a );}.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-48 .elementor-element.elementor-element-d61c906 > .elementor-widget-container{margin:0px 30px 0px 30px;}.elementor-48 .elementor-element.elementor-element-d61c906{text-align:start;font-family:"Roboto", Sans-serif;font-size:26px;font-weight:normal;line-height:1.3em;color:#2E4856;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-48 .elementor-element.elementor-element-881eb83 .elementor-button{background-color:var( --e-global-color-205889b );font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;fill:var( --e-global-color-ff573a5 );color:var( --e-global-color-ff573a5 );border-style:solid;border-color:#000000;border-radius:11px 11px 11px 11px;}.elementor-48 .elementor-element.elementor-element-881eb83 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-ca35d69 > .elementor-widget-container{margin:0px 30px 0px 30px;}.elementor-48 .elementor-element.elementor-element-ca35d69{text-align:center;font-family:"Roboto", Sans-serif;font-size:26px;font-weight:normal;line-height:1.3em;color:#C04646;}.elementor-48 .elementor-element.elementor-element-41423ba6 > .elementor-background-overlay{background-color:#FFFFFF;opacity:0.5;}.elementor-48 .elementor-element.elementor-element-41423ba6 > .elementor-shape-bottom .elementor-shape-fill{fill:#FFDC9A;}.elementor-48 .elementor-element.elementor-element-41423ba6 > .elementor-shape-bottom svg{width:calc(141% + 1.3px);height:0px;}.elementor-48 .elementor-element.elementor-element-41423ba6{margin-top:0%;margin-bottom:3%;padding:0% 20% 0% 20%;}.elementor-48 .elementor-element.elementor-element-3b4a863:not(.elementor-motion-effects-element-type-background), .elementor-48 .elementor-element.elementor-element-3b4a863 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFEFD;}.elementor-48 .elementor-element.elementor-element-3b4a863{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;}.elementor-48 .elementor-element.elementor-element-3b4a863 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-48 .elementor-element.elementor-element-88daf54{margin-top:69px;margin-bottom:69px;}.elementor-48 .elementor-element.elementor-element-19b5eba1 > .elementor-widget-container{margin:-33px 0px 0px 0px;padding:-11px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-19b5eba1{text-align:center;}.elementor-48 .elementor-element.elementor-element-19b5eba1 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:54px;font-weight:900;line-height:1.3em;color:#000000;}.elementor-48 .elementor-element.elementor-element-6ebcac78 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-48 .elementor-element.elementor-element-021ab87 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-021ab87 .elementor-button{font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;fill:#000000;color:#000000;border-style:solid;border-color:#000000;border-radius:11px 11px 11px 11px;}.elementor-48 .elementor-element.elementor-element-6bd01a3f > .elementor-background-overlay{background-color:#FFFFFF;opacity:0.5;}.elementor-48 .elementor-element.elementor-element-76526bd6{--spacer-size:50px;}.elementor-48 .elementor-element.elementor-element-56f23b70{padding:0% 19% 0% 15%;}.elementor-48 .elementor-element.elementor-element-66181d1 .elementor-button{background-color:#FCBF49;font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;fill:#000000;color:#000000;border-style:solid;border-color:#000000;border-radius:11px 11px 11px 11px;}.elementor-48 .elementor-element.elementor-element-66181d1 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-15bf8e65:not(.elementor-motion-effects-element-type-background), .elementor-48 .elementor-element.elementor-element-15bf8e65 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-48 .elementor-element.elementor-element-15bf8e65 > .elementor-background-overlay{background-color:#FFFFFF;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-48 .elementor-element.elementor-element-15bf8e65{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-48 .elementor-element.elementor-element-778f8677{margin-top:30px;margin-bottom:20px;}.elementor-48 .elementor-element.elementor-element-358c2f90 > .elementor-widget-container{margin:0px 100px 0px 100px;}.elementor-48 .elementor-element.elementor-element-358c2f90{text-align:center;}.elementor-48 .elementor-element.elementor-element-358c2f90 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:33px;font-weight:700;font-style:italic;line-height:38px;color:var( --e-global-color-205889b );}.elementor-48 .elementor-element.elementor-element-800944f > .elementor-widget-container{margin:0px 30px 0px 30px;}.elementor-48 .elementor-element.elementor-element-800944f{text-align:start;font-family:"Roboto", Sans-serif;font-size:26px;font-weight:normal;line-height:1.3em;color:var( --e-global-color-f12fd31 );}.elementor-48 .elementor-element.elementor-element-979de22 .elementor-button{background-color:#FCBF49;font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;fill:#000000;color:#000000;border-style:solid;border-color:#000000;border-radius:11px 11px 11px 11px;}.elementor-48 .elementor-element.elementor-element-979de22 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-5a2e04c1{margin-top:3%;margin-bottom:3%;padding:0% 15% 0% 15%;}.elementor-48 .elementor-element.elementor-element-54fc6947 > .elementor-widget-container{margin:24px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-54fc6947{text-align:center;}.elementor-48 .elementor-element.elementor-element-54fc6947 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:35px;font-weight:bold;line-height:1.1em;color:var( --e-global-color-205889b );}.elementor-48 .elementor-element.elementor-element-58283972:not(.elementor-motion-effects-element-type-background), .elementor-48 .elementor-element.elementor-element-58283972 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-48 .elementor-element.elementor-element-58283972 > .elementor-background-overlay{opacity:0.36;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-48 .elementor-element.elementor-element-58283972{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-48 .elementor-element.elementor-element-8237d9e > .elementor-widget-container{margin:32px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-8237d9e{text-align:start;}.elementor-48 .elementor-element.elementor-element-8237d9e .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:28px;font-weight:bold;line-height:1.3em;color:var( --e-global-color-205889b );}.elementor-48 .elementor-element.elementor-element-1b56dba3 > .elementor-widget-container{margin:0px 0px 4px 0px;padding:0px 0px 10px 0px;}.elementor-48 .elementor-element.elementor-element-1b56dba3{font-family:"Roboto", Sans-serif;font-size:22px;font-weight:400;line-height:27px;color:#000000;}.elementor-48 .elementor-element.elementor-element-7d0d484 > .elementor-widget-container{margin:0px 30px 0px 30px;}.elementor-48 .elementor-element.elementor-element-7d0d484{text-align:center;font-family:"Roboto", Sans-serif;font-size:26px;font-weight:normal;line-height:1.3em;color:#C04646;}.elementor-48 .elementor-element.elementor-element-2c49da3d{margin-top:30px;margin-bottom:30px;}.elementor-48 .elementor-element.elementor-element-caa9bb9 .elementor-button{background-color:#FCBF49;font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;fill:#000000;color:#000000;border-style:solid;border-color:#000000;border-radius:11px 11px 11px 11px;}.elementor-48 .elementor-element.elementor-element-caa9bb9 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-d4b562e .elementor-button{background-color:#FCBF49;font-family:"Roboto", Sans-serif;font-size:25px;font-weight:500;fill:#000000;color:#000000;border-style:solid;border-color:#000000;border-radius:11px 11px 11px 11px;}.elementor-48 .elementor-element.elementor-element-d4b562e > .elementor-widget-container{margin:0px 0px 0px 0px;}.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-48 .elementor-element.elementor-element-578151d .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-field-group.recaptcha_v3-bottomleft, .elementor-48 .elementor-element.elementor-element-578151d .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-48 .elementor-element.elementor-element-578151d .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-48 .elementor-element.elementor-element-578151d .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-48 .elementor-element.elementor-element-578151d .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-field-type-html{padding-bottom:0px;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-button[type="submit"]{color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-48 .elementor-element.elementor-element-578151d{--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;}.elementor-48 .elementor-element.elementor-element-587aa591:not(.elementor-motion-effects-element-type-background), .elementor-48 .elementor-element.elementor-element-587aa591 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#A3C7D7;}.elementor-48 .elementor-element.elementor-element-587aa591{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-48 .elementor-element.elementor-element-587aa591 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-image .widget-image-caption{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 );}@media(min-width:768px){.elementor-48 .elementor-element.elementor-element-4c40ddc2{width:100%;}}@media(max-width:1024px){.elementor-48 .elementor-element.elementor-element-398521fa > .elementor-background-overlay{background-position:0px 0px;}}@media(max-width:767px){.elementor-48 .elementor-element.elementor-element-398521fa > .elementor-background-overlay{background-image:url("https://pinisara.com/wp-content/uploads/2026/03/ChatGPT-Image-16.-3.-2026-12_04_36.png");background-position:center left;}.elementor-48 .elementor-element.elementor-element-780daf87 .elementor-heading-title{font-size:31px;line-height:1em;}.elementor-48 .elementor-element.elementor-element-680d2125 .elementor-heading-title{font-size:21px;}.elementor-48 .elementor-element.elementor-element-665b024c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-665b024c .elementor-heading-title{font-size:1.5em;line-height:1.1em;}.elementor-48 .elementor-element.elementor-element-d61c906 > .elementor-widget-container{margin:0px 10px 0px 10px;}.elementor-48 .elementor-element.elementor-element-d61c906{font-size:18px;}.elementor-48 .elementor-element.elementor-element-881eb83 > .elementor-widget-container{margin:0px 20px 20px 20px;}.elementor-48 .elementor-element.elementor-element-881eb83 .elementor-button{font-size:21px;}.elementor-48 .elementor-element.elementor-element-ca35d69 > .elementor-widget-container{margin:0px 10px 0px 10px;}.elementor-48 .elementor-element.elementor-element-ca35d69{font-size:21px;}.elementor-48 .elementor-element.elementor-element-41423ba6{padding:0% 0% 0% 0%;}.elementor-48 .elementor-element.elementor-element-88daf54{margin-top:030px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-19b5eba1 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-19b5eba1 .elementor-heading-title{font-size:48px;}.elementor-48 .elementor-element.elementor-element-021ab87 > .elementor-widget-container{margin:0px 20px 20px 20px;}.elementor-48 .elementor-element.elementor-element-021ab87 .elementor-button{font-size:21px;}.elementor-48 .elementor-element.elementor-element-56f23b70{margin-top:-33px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-66181d1 > .elementor-widget-container{margin:0px 20px 20px 20px;}.elementor-48 .elementor-element.elementor-element-66181d1 .elementor-button{font-size:21px;}.elementor-48 .elementor-element.elementor-element-358c2f90 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-358c2f90 .elementor-heading-title{font-size:25px;line-height:1.1em;}.elementor-48 .elementor-element.elementor-element-800944f > .elementor-widget-container{margin:0px 10px 0px 10px;}.elementor-48 .elementor-element.elementor-element-800944f{font-size:21px;}.elementor-48 .elementor-element.elementor-element-979de22 > .elementor-widget-container{margin:0px 20px 20px 20px;}.elementor-48 .elementor-element.elementor-element-979de22 .elementor-button{font-size:21px;}.elementor-48 .elementor-element.elementor-element-5a2e04c1{padding:0px 0px 0px 0px;}.elementor-48 .elementor-element.elementor-element-54fc6947 .elementor-heading-title{font-size:30px;}.elementor-48 .elementor-element.elementor-element-8237d9e .elementor-heading-title{font-size:30px;}.elementor-48 .elementor-element.elementor-element-1b56dba3 > .elementor-widget-container{margin:0px 10px 0px 10px;}.elementor-48 .elementor-element.elementor-element-1b56dba3{font-size:21px;}.elementor-48 .elementor-element.elementor-element-7d0d484 > .elementor-widget-container{margin:0px 10px 0px 10px;}.elementor-48 .elementor-element.elementor-element-7d0d484{font-size:21px;}.elementor-48 .elementor-element.elementor-element-caa9bb9 > .elementor-widget-container{margin:0px 20px 20px 20px;}.elementor-48 .elementor-element.elementor-element-caa9bb9 .elementor-button{font-size:21px;}.elementor-48 .elementor-element.elementor-element-d4b562e > .elementor-widget-container{margin:0px 20px 20px 20px;}.elementor-48 .elementor-element.elementor-element-d4b562e .elementor-button{font-size:21px;}.elementor-48 .elementor-element.elementor-element-587aa591{margin-top:0px;margin-bottom:0px;}}/* Start custom CSS for button, class: .elementor-element-881eb83 *//* ===== Sara Pini Premium CTA (force override Elementor) ===== */

.sp-cta .elementor-button,
.sp-cta .elementor-button-wrapper .elementor-button{

  background: linear-gradient(180deg,#0F5D84,#0B4C6D) !important;
  color:#ffffff !important;

  border:1px solid rgba(15,93,132,.30) !important;
  border-radius:14px;

  padding:16px 28px;
  min-height:56px;

  font-weight:700;
  letter-spacing:.4px;

  box-shadow:0 14px 30px rgba(15,93,132,.28) !important;

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* Hover */
.sp-cta .elementor-button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);

  box-shadow:0 18px 36px rgba(15,93,132,.32) !important;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-398521fa */.hero-section::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(255,255,255,0.65);
z-index:1;
}

.hero-section *{
position:relative;
z-index:2;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-21827d2 *//* =========================
   Premium layout for the raw "pain/pleasure" text block
   Updated for new logo color palette
   ========================= */

.sp-dp3{
  --blue:#0F5D84;
  --blue-dark:#2E4856;
  --text:#2E4856;
  --muted:#5E6F79;
  --soft:#EAF2F6;
  --soft-2:#F4F9FC;
  --accent:#D95B55;
  --line:rgba(15,93,132,.16);

  background:#F8FBFC;
  padding: 80px 16px;
}

.sp-dp3 .sp-wrap{
  max-width: 960px;
  margin: 0 auto;
}

/* Title */
.sp-dp3 .sp-title{
  text-align:center;
  color: var(--blue-dark);
  font-size: 34px;
  line-height: 1.18;
  letter-spacing: -0.4px;
  font-weight: 800;
  margin: 0 0 34px 0;
}

/* Pain block */
.sp-dp3 .sp-pain{
  border: 1px solid rgba(15,93,132,0.08);
  border-radius: 20px;
  padding: 34px 32px;
  background:#ffffff;
}

.sp-dp3 p{
  margin: 0 0 14px 0;
  color: var(--text);
  font-size: 18px;
  line-height: 1.85;
  letter-spacing: 0.1px;
}

.sp-dp3 .sp-lead{
  font-size: 20px;
  line-height: 1.6;
  font-weight: 600;
  color: var(--blue-dark);
}

/* Pain bullets */
.sp-dp3 .sp-list{
  margin: 18px 0 18px 0;
  padding-left: 20px;
}

.sp-dp3 .sp-list li{
  margin: 0 0 12px 0;
  color: var(--text);
  font-size: 18px;
  line-height: 1.75;
}

.sp-dp3 .sp-list li::marker{
  color: var(--accent);
}

/* Emphasis box */
.sp-dp3 .sp-emphasis{
  margin: 18px 0;
  padding: 16px 18px;
  background: var(--soft);
  border-left: 3px solid var(--blue);
  border-radius: 14px;
}

.sp-dp3 .sp-emphasis p{
  color: var(--blue-dark);
}

.sp-dp3 .sp-emphasis strong{
  color: var(--blue);
}

/* Quote */
.sp-dp3 .sp-quote{
  color: var(--blue-dark);
}

.sp-dp3 .sp-quote em{
  color: var(--accent);
  font-style: italic;
}

/* Muted ending */
.sp-dp3 .sp-muted{
  color: var(--muted);
  font-size: 17px;
}

/* Pleasure block */
.sp-dp3 .sp-pleasure{
  margin-top: 28px;
  background: var(--soft-2);
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 32px 30px;
  box-shadow: 0 16px 40px rgba(15,93,132,.08);
}

.sp-dp3 .sp-subtitle{
  text-align:center;
  margin: 0 0 14px 0;
  color: var(--blue-dark);
  font-size: 22px;
  line-height: 1.35;
  font-weight: 800;
}

/* Check list for pleasure */
.sp-dp3 .sp-list-check{
  list-style: none;
  padding-left: 0;
  margin: 16px 0 0 0;
}

.sp-dp3 .sp-list-check li{
  position: relative;
  padding-left: 30px;
}

.sp-dp3 .sp-list-check li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color: var(--accent);
  font-weight: 800;
  opacity: .95;
}

.sp-dp3 .sp-close{
  text-align:center;
  margin-top: 18px;
  font-size: 19px;
  color: var(--blue-dark);
}

.sp-dp3 .sp-close strong{
  color: var(--blue);
}

/* Mobile */
@media (max-width: 767px){
  .sp-dp3{ padding: 64px 14px; }

  .sp-dp3 .sp-title{
    font-size: 26px;
    line-height: 1.2;
    margin-bottom: 22px;
  }

  .sp-dp3 .sp-pain,
  .sp-dp3 .sp-pleasure{
    padding: 24px 18px;
    border-radius: 16px;
  }

  .sp-dp3 p,
  .sp-dp3 .sp-list li{
    font-size: 16.5px;
    line-height: 1.75;
  }

  .sp-dp3 .sp-lead{
    font-size: 18px;
  }

  .sp-dp3 .sp-close{
    font-size: 17px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-df8ad79 *//* =========================
   Premium "Question" Section
   Updated for new logo color palette
   ========================= */
.sp-question{
  --blue:#0F5D84;
  --blue-dark:#2E4856;
  --text:#2E4856;
  --muted:#5E6F79;
  --paper:#EAF2F6;
  --soft:#F4F9FC;
  --accent:#D95B55;
  --line:rgba(15,93,132,.16);

  background:#F8FBFC;
  padding: 86px 16px 72px;
}

.sp-question .sp-wrap{
  max-width: 900px;
  margin: 0 auto;
}

/* Headline */
.sp-question .sp-q-title{
  text-align:center;
  color: var(--blue-dark);
  font-weight: 800;
  font-size: 34px;
  line-height: 1.18;
  letter-spacing: -0.4px;
  margin: 0 0 26px 0;
}

/* Reasons list */
.sp-question .sp-q-list{
  margin: 0 auto 26px;
  padding: 0;
  list-style: none;
  max-width: 760px;
}

.sp-question .sp-q-list li{
  position: relative;
  padding-left: 30px;
  margin: 0 0 12px 0;
  color: var(--text);
  font-size: 18px;
  line-height: 1.75;
  letter-spacing: 0.1px;
}

.sp-question .sp-q-list li::before{
  content:"•";
  position:absolute;
  left: 10px;
  top: 0;
  color: var(--accent);
  opacity: .95;
  font-size: 22px;
  line-height: 1;
}

/* Quote / Freedom card */
.sp-question .sp-q-quote{
  max-width: 780px;
  margin: 0 auto 18px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px 18px;
  text-align:center;
  box-shadow: 0 14px 34px rgba(15,93,132,.06);
}

.sp-question .sp-q-quote p{
  margin: 0;
  color: var(--blue-dark);
  font-size: 19px;
  line-height: 1.55;
}

.sp-question .sp-q-quote p + p{
  margin-top: 8px;
  font-weight: 700;
  color: var(--blue);
}

/* "Passo dopo passo" bridge */
.sp-question .sp-q-bridge{
  max-width: 780px;
  margin: 0 auto 28px;
  text-align:center;
}

.sp-question .sp-q-bridge p{
  margin: 0 0 10px 0;
  color: var(--text);
  font-size: 18px;
  line-height: 1.75;
}

.sp-question .sp-q-bridge p:last-child{
  color: var(--muted);
}

/* Video heading */
.sp-question .sp-q-video{
  text-align:center;
  color: var(--blue);
  font-weight: 800;
  font-size: 24px;
  letter-spacing: -0.2px;
  margin: 0;
}

/* Mobile */
@media (max-width: 767px){
  .sp-question{
    padding: 64px 14px 54px;
  }

  .sp-question .sp-q-title{
    font-size: 26px;
    line-height: 1.22;
    margin-bottom: 18px;
  }

  .sp-question .sp-q-list li,
  .sp-question .sp-q-bridge p{
    font-size: 16.5px;
    line-height: 1.75;
  }

  .sp-question .sp-q-quote p{
    font-size: 17px;
  }

  .sp-question .sp-q-video{
    font-size: 20px;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-021ab87 *//* ===== Sara Pini Premium CTA (force override Elementor) ===== */

.sp-cta .elementor-button,
.sp-cta .elementor-button-wrapper .elementor-button{

  background: linear-gradient(180deg,#0F5D84,#0B4C6D) !important;
  color:#ffffff !important;

  border:1px solid rgba(15,93,132,.30) !important;
  border-radius:14px;

  padding:16px 28px;
  min-height:56px;

  font-weight:700;
  letter-spacing:.4px;

  box-shadow:0 14px 30px rgba(15,93,132,.28) !important;

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* Hover */
.sp-cta .elementor-button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);

  box-shadow:0 18px 36px rgba(15,93,132,.32) !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0bf70ff *//* =========================
   Premium "About Sara" Section
   Updated for new logo color palette
   ========================= */
.sp-about{
  --bg:#F8FBFC;
  --blue:#0F5D84;
  --blue-dark:#2E4856;
  --text:#2E4856;
  --muted:#5E6F79;
  --card:#FFFFFF;
  --paper:#EAF2F6;
  --accent:#D95B55;
  --line:rgba(15,93,132,.16);

  background: var(--bg);
  padding: 96px 16px;
}

.sp-about .sp-wrap{
  max-width: 1120px;
  margin: 0 auto;
}

/* Quote block */
.sp-about-quote{
  max-width: 920px;
  margin: 0 auto 40px;
  text-align: center;
  padding: 22px 22px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.65);
  box-shadow: 0 18px 46px rgba(15,93,132,.06);
}

.sp-about-quote .sp-quote-text{
  margin: 0;
  color: var(--blue-dark);
  font-weight: 700;
  font-size: 20px;
  line-height: 1.55;
}

.sp-about-quote .sp-quote-sign{
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 14px;
  letter-spacing: .4px;
}

/* Layout grid */
.sp-about-grid{
  display: grid;
  grid-template-columns: 1.35fr .85fr;
  gap: 34px;
  align-items: start;
}

/* Story */
.sp-about-story{
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(15,93,132,.08);
  border-radius: 22px;
  padding: 34px 32px;
}

.sp-about-title{
  margin: 0 0 16px 0;
  color: var(--blue-dark);
  font-size: 30px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: -.3px;
}

.sp-about-story p{
  margin: 0 0 14px 0;
  color: var(--text);
  font-size: 17.5px;
  line-height: 1.85;
}

/* Callouts */
.sp-callout{
  margin: 16px 0 18px;
  padding: 16px 16px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 16px;
}

.sp-callout p{
  margin: 0;
}

.sp-callout strong{
  color: var(--blue);
}

.sp-callout-strong{
  padding: 18px 16px;
}

.sp-callout-strong .sp-muted{
  margin-top: 8px;
  color: var(--muted);
}

/* Final statement */
.sp-about-final{
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}

/* Side card */
.sp-side-card{
  position: sticky;
  top: 18px;
  background: #fff;
  border: 1px solid rgba(15,93,132,.08);
  border-radius: 22px;
  padding: 26px 24px;
  box-shadow: 0 24px 60px rgba(15,93,132,.08);
}

.sp-side-kicker{
  margin: 0 0 6px 0;
  color: var(--muted);
  font-size: 13px;
  letter-spacing: .5px;
  text-transform: uppercase;
}

.sp-side-title{
  margin: 0 0 10px 0;
  color: var(--blue-dark);
  font-size: 22px;
  line-height: 1.25;
  font-weight: 800;
}

.sp-side-text{
  margin: 0 0 14px 0;
  color: var(--text);
  font-size: 16px;
  line-height: 1.75;
}

.sp-side-list{
  margin: 0 0 16px 0;
  padding: 0;
  list-style: none;
}

.sp-side-list li{
  position: relative;
  padding-left: 26px;
  margin: 0 0 12px 0;
  color: var(--text);
  font-size: 16px;
  line-height: 1.7;
}

.sp-side-list li::before{
  content:"✓";
  position:absolute;
  left: 0;
  top: 0;
  color: var(--accent);
  font-weight: 800;
  opacity: .95;
}

.sp-side-divider{
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(15,93,132,.22), transparent);
  margin: 14px 0;
}

.sp-side-bold{
  margin: 0 0 8px 0;
  color: var(--blue);
  font-weight: 800;
}

/* Mobile */
@media (max-width: 980px){
  .sp-about-grid{
    grid-template-columns: 1fr;
  }

  .sp-side-card{
    position: relative;
    top: auto;
  }

  .sp-about{
    padding: 72px 14px;
  }

  .sp-about-title{
    font-size: 26px;
  }

  .sp-about-story{
    padding: 26px 18px;
    border-radius: 18px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fdcc59e *//* =========================
   Program Section: Passo dopo Passo
   Updated for new logo palette
   ========================= */
.sp-program{
  --bg:#F8FBFC;
  --blue:#0F5D84;
  --blue-dark:#2E4856;
  --text:#2E4856;
  --muted:#5E6F79;
  --card:#FFFFFF;
  --paper:#EAF2F6;
  --accent:#D95B55;
  --line:rgba(15,93,132,.16);

  background: var(--bg);
  padding: 92px 16px;
}

.sp-program .sp-wrap{
  max-width: 1120px;
  width: 100%;
  margin: 0 auto;
}

/* Header */
.sp-program .sp-kicker{
  margin: 0 0 10px 0;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
  letter-spacing: .5px;
  text-transform: uppercase;
}

.sp-program .sp-title{
  margin: 0 0 18px 0;
  text-align: center;
  color: var(--blue-dark);
  font-size: 36px;
  line-height: 1.15;
  font-weight: 850;
  letter-spacing: -.4px;
}

/* Lead */
.sp-program .sp-lead{
  max-width: 860px;
  margin: 0 auto 22px;
  background: rgba(255,255,255,.65);
  border: 1px solid rgba(15,93,132,.08);
  border-radius: 22px;
  padding: 26px 28px;
}

.sp-program .sp-lead p{
  margin: 0 0 12px 0;
  color: var(--text);
  font-size: 18px;
  line-height: 1.8;
}
.sp-program .sp-lead p:last-child{ margin-bottom: 0; }

/* Promise grid */
.sp-program .sp-promise{
  max-width: 980px;
  margin: 0 auto 46px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.sp-program .sp-promise-item{
  display: flex;
  gap: 10px;
  align-items: flex-start;
  background: #fff;
  border: 1px solid rgba(15,93,132,.08);
  border-radius: 18px;
  padding: 14px 14px;
  box-shadow: 0 18px 44px rgba(15,93,132,.06);
}

.sp-program .sp-icon{
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: rgba(15,93,132,.12);
  color: var(--blue);
  display: grid;
  place-items: center;
  font-weight: 900;
  flex: 0 0 26px;
}

.sp-program .sp-promise-item p{
  margin: 0;
  color: var(--text);
  font-size: 14.5px;
  line-height: 1.45;
}

/* Pillars */
.sp-program .sp-subtitle{
  margin: 0 0 10px 0;
  text-align: center;
  color: var(--blue-dark);
  font-size: 26px;
  font-weight: 850;
  letter-spacing: -.25px;
}

.sp-program .sp-sublead{
  margin: 0 auto 22px;
  text-align: center;
  color: var(--muted);
  max-width: 760px;
  font-size: 16.5px;
  line-height: 1.7;
}

.sp-program .sp-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}

/* Card */
.sp-program .sp-card{
  background: #fff;
  border: 1px solid rgba(15,93,132,.08);
  border-radius: 22px;
  padding: 22px 22px;
  box-shadow: 0 24px 60px rgba(15,93,132,.08);
}

.sp-program .sp-card h4{
  margin: 0 0 10px 0;
  color: var(--blue);
  font-weight: 850;
  font-size: 20px;
  letter-spacing: -.2px;
}

.sp-program .sp-card p{
  margin: 0 0 10px 0;
  color: var(--text);
  font-size: 16.5px;
  line-height: 1.75;
}

.sp-program .sp-muted{ color: var(--muted); }

.sp-program .sp-card ul{
  margin: 10px 0 0 0;
  padding: 0;
  list-style: none;
}

.sp-program .sp-card ul li{
  position: relative;
  padding-left: 26px;
  margin: 0 0 10px 0;
  color: var(--text);
  font-size: 16px;
  line-height: 1.65;
}

.sp-program .sp-card ul li::before{
  content:"•";
  position: absolute;
  left: 8px;
  top: 0;
  color: var(--accent);
  opacity: .9;
  font-size: 22px;
  line-height: 1;
}

.sp-program .sp-note{
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  color: var(--muted);
}

/* =========================
   WIDER DESKTOP FIX
   ========================= */
@media (min-width: 1024px){
  .sp-program{
    padding: 96px 24px;
  }

  .sp-program .sp-wrap{
    max-width: 1320px;
  }

  .sp-program .sp-lead{
    max-width: 100%;
  }

  .sp-program .sp-promise{
    max-width: 100%;
  }

  .sp-program .sp-sublead{
    max-width: 980px;
  }
}

/* Mobile */
@media (max-width: 980px){
  .sp-program .sp-title{ font-size: 28px; }

  .sp-program .sp-promise{
    grid-template-columns: repeat(2, 1fr);
  }

  .sp-program .sp-grid{
    grid-template-columns: 1fr;
  }

  .sp-program .sp-lead{
    padding: 20px 18px;
    border-radius: 18px;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-66181d1 *//* ===== Sara Pini Premium CTA (force override Elementor) ===== */

.sp-cta .elementor-button,
.sp-cta .elementor-button-wrapper .elementor-button{

  background: linear-gradient(180deg,#0F5D84,#0B4C6D) !important;
  color:#ffffff !important;

  border:1px solid rgba(15,93,132,.30) !important;
  border-radius:14px;

  padding:16px 28px;
  min-height:56px;

  font-weight:700;
  letter-spacing:.4px;

  box-shadow:0 14px 30px rgba(15,93,132,.28) !important;

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* Hover */
.sp-cta .elementor-button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);

  box-shadow:0 18px 36px rgba(15,93,132,.32) !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-979de22 *//* ===== Sara Pini Premium CTA (force override Elementor) ===== */

.sp-cta .elementor-button,
.sp-cta .elementor-button-wrapper .elementor-button{

  background: linear-gradient(180deg,#0F5D84,#0B4C6D) !important;
  color:#ffffff !important;

  border:1px solid rgba(15,93,132,.30) !important;
  border-radius:14px;

  padding:16px 28px;
  min-height:56px;

  font-weight:700;
  letter-spacing:.4px;

  box-shadow:0 14px 30px rgba(15,93,132,.28) !important;

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* Hover */
.sp-cta .elementor-button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);

  box-shadow:0 18px 36px rgba(15,93,132,.32) !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1b56dba3 *//* =========================
   Premium bullets – Text Editor only
   Updated for new logo palette
   ========================= */

.sp-bullet-premium ul{
  list-style: none;
  margin: 18px 0 22px 0;
  padding: 0;
}

.sp-bullet-premium ul li{
  position: relative;
  padding-left: 34px;
  margin-bottom: 14px;

  font-size: 17px;
  line-height: 1.65;
  color: #2E4856;   /* main text color */
}

/* Custom bullet */
.sp-bullet-premium ul li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 7px;

  width: 18px;
  height: 18px;
  border-radius: 50%;

  background: rgba(15,93,132,.12);   /* soft blue */
  border: 1px solid rgba(15,93,132,.20);
  box-shadow: inset 0 0 0 4px rgba(15,93,132,.28);
}

/* Last statement */
.sp-bullet-premium p{
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(15,93,132,.18);

  font-size: 16px;
  line-height: 1.6;
  color: #5E6F79;   /* muted text */
}

.sp-bullet-premium p strong{
  color: #0F5D84;   /* primary logo blue */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-caa9bb9 *//* ===== Sara Pini Premium CTA (force override Elementor) ===== */

.sp-cta .elementor-button,
.sp-cta .elementor-button-wrapper .elementor-button{

  background: linear-gradient(180deg,#0F5D84,#0B4C6D) !important;
  color:#ffffff !important;

  border:1px solid rgba(15,93,132,.30) !important;
  border-radius:14px;

  padding:16px 28px;
  min-height:56px;

  font-weight:700;
  letter-spacing:.4px;

  box-shadow:0 14px 30px rgba(15,93,132,.28) !important;

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* Hover */
.sp-cta .elementor-button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);

  box-shadow:0 18px 36px rgba(15,93,132,.32) !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-042c8df *//* =========================
   Premium "Come candidarsi" – updated palette
   ========================= */
.sp-steps{
  --blue:#0F5D84;
  --blue-dark:#2E4856;
  --text:#2E4856;
  --muted:#5E6F79;
  --accent:#D95B55;
  --line:rgba(15,93,132,.16);

  background:#FFFFFF;
  padding: 72px 16px;
}

.sp-steps__wrap{
  max-width: 920px;
  margin: 0 auto;
}

/* Headings */
.sp-steps__kicker{
  text-align:center;
  color: var(--muted);
  font-weight: 900;
  letter-spacing: .08em;
  font-size: 14px;
  margin: 0 0 14px 0;
  text-transform: uppercase;
}

.sp-steps__subtitle{
  text-align:center;
  margin: 0 0 18px 0;
  color: var(--blue-dark);
  font-weight: 800;
  font-size: 28px;
  line-height: 1.15;
}

.sp-steps__intro{
  text-align:center;
  margin: 0 auto 34px auto;
  max-width: 780px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.75;
}

/* Steps list */
.sp-steps__list{
  counter-reset: step;
  list-style: none;
  margin: 0 auto 28px auto;
  padding: 0;
  max-width: 760px;
}

.sp-steps__list li{
  counter-increment: step;
  position: relative;

  padding: 18px 18px 18px 64px;
  margin: 0 0 12px 0;

  color: var(--text);
  font-size: 18px;
  line-height: 1.6;

  border: 1px solid var(--line);
  border-radius: 14px;
  background: transparent;
}

.sp-steps__list li::before{
  content: counter(step);
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);

  width: 34px;
  height: 34px;
  border-radius: 999px;

  display: grid;
  place-items: center;

  color: var(--blue);
  font-weight: 900;
  border: 1px solid rgba(15,93,132,.22);
  background: rgba(15,93,132,.06);
}

.sp-steps__label{
  font-weight: 800;
  color: var(--blue);
}

.sp-steps__meta{
  color: var(--muted);
  font-weight: 700;
}

/* Notes */
.sp-steps__notes{
  max-width: 760px;
  margin: 0 auto;
  padding-top: 18px;
  border-top: 1px solid var(--line);

  text-align: left;
  color: var(--text);
}

.sp-steps__notes p{
  margin: 0 0 8px 0;
  font-size: 18px;
  line-height: 1.6;
}

.sp-steps__notes p strong{
  color: var(--blue);
}

/* Mobile */
@media (max-width: 767px){
  .sp-steps{ padding: 56px 14px; }

  .sp-steps__subtitle{ font-size: 24px; }
  .sp-steps__intro{ font-size: 16.5px; }

  .sp-steps__list li{
    padding: 16px 14px 16px 56px;
    font-size: 16.5px;
  }

  .sp-steps__list li::before{
    left: 12px;
    width: 30px;
    height: 30px;
  }

  .sp-steps__notes p{ font-size: 16.5px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e63547d *//* =========================
   Premium "Last" Section – updated palette
   ========================= */
.sp-last{
  --blue:#0F5D84;
  --blue-dark:#2E4856;
  --text:#2E4856;
  --muted:#5E6F79;
  --accent:#D95B55;
  --line:rgba(15,93,132,.16);

  background:#fff;
  padding: 84px 16px;
}

.sp-last__wrap{
  max-width: 980px;
  margin: 0 auto;
}

/* Title + kicker */
.sp-last__title{
  text-align:center;
  margin: 0 0 8px 0;
  color: var(--blue-dark);
  font-weight: 900;
  font-size: 40px;
  line-height: 1.1;
  letter-spacing: -0.5px;
}

.sp-last__kicker{
  text-align:center;
  margin: 0 0 34px 0;
  color: var(--blue);
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: 13px;
}

/* Copy block */
.sp-last__copy{
  max-width: 820px;
  margin: 0 auto 26px auto;
  color: var(--text);
  font-size: 18px;
  line-height: 1.85;
}

.sp-last__copy p{
  margin: 0 0 16px 0;
}

.sp-last__copy p strong{
  color: var(--blue-dark);
}

.sp-last__question{
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  color: var(--text);
}

.sp-last__question strong{
  color: var(--blue);
}

/* List */
.sp-last__list{
  max-width: 820px;
  margin: 0 auto 28px auto;
  padding: 0;
  list-style: none;
}

.sp-last__list li{
  position: relative;
  padding-left: 28px;
  margin: 0 0 12px 0;

  color: var(--text);
  font-size: 18px;
  line-height: 1.7;
}

.sp-last__list li::before{
  content:"";
  position:absolute;
  left: 0;
  top: .65em;

  width: 10px;
  height: 10px;
  border-radius: 999px;

  background: rgba(15,93,132,.16);
  border: 1px solid rgba(15,93,132,.32);
}

/* Closing */
.sp-last__closing{
  max-width: 820px;
  margin: 0 auto;
  padding-top: 18px;
  border-top: 1px solid var(--line);

  color: var(--text);
  font-size: 18px;
  line-height: 1.85;
}

.sp-last__closing p{
  margin: 0 0 14px 0;
}

.sp-last__closing strong{
  color: var(--blue);
  font-weight: 900;
}

.sp-last__signature{
  color: var(--muted);
  font-weight: 700;
}

/* Mobile */
@media (max-width: 767px){
  .sp-last{ padding: 64px 14px; }

  .sp-last__title{
    font-size: 30px;
    line-height: 1.12;
  }

  .sp-last__copy,
  .sp-last__list li,
  .sp-last__closing{
    font-size: 16.5px;
    line-height: 1.8;
  }

  .sp-last__list li{
    padding-left: 24px;
  }

  .sp-last__list li::before{
    width: 9px;
    height: 9px;
    top: .6em;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-d4b562e *//* ===== Sara Pini Premium CTA (force override Elementor) ===== */

.sp-cta .elementor-button,
.sp-cta .elementor-button-wrapper .elementor-button{

  background: linear-gradient(180deg,#0F5D84,#0B4C6D) !important;
  color:#ffffff !important;

  border:1px solid rgba(15,93,132,.30) !important;
  border-radius:14px;

  padding:16px 28px;
  min-height:56px;

  font-weight:700;
  letter-spacing:.4px;

  box-shadow:0 14px 30px rgba(15,93,132,.28) !important;

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* Hover */
.sp-cta .elementor-button:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);

  box-shadow:0 18px 36px rgba(15,93,132,.32) !important;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-578151d *//* =========================
   Premium Form (theme: blue + soft medical white)
   Apply class on the FORM widget: sp-form
   ========================= */

.sp-form{
  --blue:#0F5D84;
  --blue2:#0B4A69;
  --text:#2E4856;
  --muted:#5E6F79;
  --bg:#F8FBFC;
  --line:rgba(15,93,132,.20);
  --shadow: 0 18px 45px rgba(15,93,132,.12);

  max-width: 980px;
  margin: 0 auto;
}

/* Form container */
.sp-form form{
  background: linear-gradient(180deg, rgba(248,251,252,.96), rgba(248,251,252,.78));
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 22px 22px 18px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(6px);
}

/* Labels */
.sp-form label{
  color: var(--text);
  font-weight: 700;
  font-size: 14px;
  letter-spacing: .01em;
  margin-bottom: 8px;
}

/* Inputs */
.sp-form input[type="text"],
.sp-form input[type="email"],
.sp-form input[type="tel"],
.sp-form input[type="number"],
.sp-form input[type="url"],
.sp-form select,
.sp-form textarea{
  width: 100%;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(15,93,132,.25);
  border-radius: 14px;
  padding: 14px 14px;
  color: var(--text);
  font-size: 16px;
  line-height: 1.25;
  outline: none;
  box-shadow: 0 8px 22px rgba(15,93,132,.08);
  transition: border-color .18s ease, box-shadow .18s ease, transform .12s ease;
}

/* Placeholder */
.sp-form ::placeholder{
  color: rgba(46,72,86,.45);
}

/* Focus state */
.sp-form input:focus,
.sp-form select:focus,
.sp-form textarea:focus{
  border-color: rgba(15,93,132,.55);
  box-shadow: 0 0 0 4px rgba(15,93,132,.12), 0 10px 26px rgba(15,93,132,.12);
  transform: translateY(-1px);
}

/* Field spacing */
.sp-form .elementor-field-group,
.sp-form .field-group,
.sp-form .form-group{
  margin-bottom: 14px;
}

/* Remove theme borders */
.sp-form input,
.sp-form textarea,
.sp-form select{
  border-width: 1px !important;
}

/* Submit button */
.sp-form button[type="submit"],
.sp-form input[type="submit"],
.sp-form .elementor-button{
  width: 100%;
  border: none;
  border-radius: 14px;
  padding: 15px 16px;

  background: linear-gradient(180deg, var(--blue), var(--blue2));
  color: #fff;

  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;

  box-shadow: 0 18px 34px rgba(15,93,132,.28);

  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
  cursor: pointer;
}

/* Hover */
.sp-form button[type="submit"]:hover,
.sp-form input[type="submit"]:hover,
.sp-form .elementor-button:hover{
  transform: translateY(-1px);
  box-shadow: 0 22px 42px rgba(15,93,132,.32);
  filter: brightness(1.03);
}

/* Active */
.sp-form button[type="submit"]:active,
.sp-form input[type="submit"]:active,
.sp-form .elementor-button:active{
  transform: translateY(0px);
  box-shadow: 0 12px 24px rgba(15,93,132,.22);
}

/* Helper text */
.sp-form .elementor-field-subgroup,
.sp-form .elementor-message,
.sp-form .help,
.sp-form small{
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

/* Mobile */
@media (max-width: 767px){
  .sp-form form{
    padding: 18px 14px 14px;
    border-radius: 16px;
  }

  .sp-form input[type="text"],
  .sp-form input[type="email"],
  .sp-form input[type="tel"],
  .sp-form select,
  .sp-form textarea{
    padding: 13px 12px;
    border-radius: 13px;
  }
}/* End custom CSS */