.elementor-31407 .elementor-element.elementor-element-1330f23{--display:flex;}.elementor-31407 .elementor-element.elementor-element-94ba72d{--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-31407 .elementor-element.elementor-element-47514e3{--display:flex;}.elementor-31407 .elementor-element.elementor-element-e620d18{--display:flex;}.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .validation_message:not(.validation_message--hidden-on-empty){display:block !important;}.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .validation_error{display:block !important;}.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gfield textarea, .elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gfield select{background-color:#f9f9f9;padding:10px 10px 10px 10px;border-radius:5px 5px 5px 5px;}.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gfield.gsection{border-bottom-style:solid;border-bottom-width:1px;}.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gform_wrapper .gform_footer input[type="submit"],
					.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gform_wrapper .gform_page_footer input[type="submit"],
					.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gform_wrapper .gfield--type-submit input[type="submit"]{background-color:var( --e-global-color-secondary );}.elementor-31407 .elementor-element.elementor-element-6973159 .pp-gravity-form .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .elementor-31407 .elementor-element.elementor-element-6973159 .gform_wrapper li.gfield_error textarea{border-width:1px;}.elementor-31407 .elementor-element.elementor-element-6973159 .gform_confirmation_wrapper{padding:10px 10px 10px 10px;}/* Start custom CSS for pp-gravity-forms, class: .elementor-element-6973159 */.gfield_consent_label, .gform_required_legend {
    font-size:80%;
}

/* Form Donor Care – Pozzo Samburu
   Sub-label nascoste visivamente, ma leggibili dagli screen reader.
   Sostituire #gform_X con l'ID del form Gravity reale. */
#gform_65 .gform-field-label--type-sub {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}/* End custom CSS */
/* Start custom CSS *//* ==========================================================
   CUSTOM PROPERTIES — Brand ACF
   ========================================================== */
.acf-pozzo-landing {
  /* Palette ACF — colori brand ufficiali */
  --acf-color-primary: #005fb6;         /* blu ACF — colore brand primario */
  --acf-color-primary-dark: #004a8e;    /* blu ACF scuro per hover/active */
  --acf-color-accent: #52ae32;          /* verde ACF — colore brand secondario */
  --acf-color-accent-dark: #418A28;     /* verde ACF scuro per hover/active */
  --acf-color-text: #1A1A1A;
  --acf-color-text-muted: #5A5A5A;
  --acf-color-text-on-primary: #FFFFFF;
  --acf-color-bg: #FFFFFF;
  --acf-color-bg-alt: #F5F2EC;          /* beige caldo per sezioni neutre */
  --acf-color-bg-primary-soft: #E6F0FA; /* azzurro chiarissimo (tinta del primario) */
  --acf-color-bg-accent-soft: #EAF6E3;  /* verde chiarissimo (tinta dell'accento) */
  --acf-color-border: #E0DDD5;

  /* Font */
  --acf-font-title: "Futura LT", "Futura", "Trebuchet MS", Arial, sans-serif;
  --acf-font-body: "Lato", Arial, sans-serif;

  /* Spaziature */
  --acf-space-xs: 8px;
  --acf-space-sm: 16px;
  --acf-space-md: 24px;
  --acf-space-lg: 40px;
  --acf-space-xl: 64px;

  /* Border radius */
  --acf-radius-sm: 6px;
  --acf-radius-md: 12px;

  /* Container width */
  --acf-container: 1080px;
}

/* ==========================================================
   RESET MINIMALE (scoped al wrapper)
   ========================================================== */
.acf-pozzo-landing,
.acf-pozzo-landing * {
  box-sizing: border-box;
}

.acf-pozzo-landing {
  font-family: var(--acf-font-body);
  color: var(--acf-color-text);
  background: var(--acf-color-bg);
  line-height: 1.6;
  font-size: 16px;
}

.acf-pozzo-landing h1,
.acf-pozzo-landing h2,
.acf-pozzo-landing h3 {
  font-family: var(--acf-font-title);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 var(--acf-space-sm);
}

.acf-pozzo-landing p {
  margin: 0 0 var(--acf-space-sm);
}

.acf-pozzo-landing img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Container interno */
.acf-pozzo-landing .acf-container {
  width: 100%;
  max-width: var(--acf-container);
  margin: 0 auto;
  padding: 0 var(--acf-space-sm);
}

/* ==========================================================
   PULSANTI
   ========================================================== */
.acf-pozzo-landing .acf-btn {
  display: inline-block;
  font-family: var(--acf-font-title);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 15px;
  padding: 14px 28px;
  border-radius: var(--acf-radius-sm);
  text-decoration: none;
  border: 2px solid transparent;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

.acf-pozzo-landing .acf-btn-primary {
  background: var(--acf-color-primary);
  color: var(--acf-color-text-on-primary);
}

.acf-pozzo-landing .acf-btn-primary:hover {
  background: var(--acf-color-primary-dark);
}

/* ==========================================================
   1. HERO (con logo)
   Sfondo beige caldo (--acf-color-bg-alt) per un look più
   istituzionale e coerente con altre sezioni.
   ========================================================== */
.acf-pozzo-landing .acf-hero {
  position: relative;
  background: var(--acf-color-bg-alt);
  color: var(--acf-color-text);
  padding: var(--acf-space-md) 0 var(--acf-space-lg);
  border-bottom: 1px solid var(--acf-color-border);
  overflow: hidden;
}

.acf-pozzo-landing .acf-hero-logo {
  margin-bottom: var(--acf-space-md);
}

.acf-pozzo-landing .acf-hero-logo img {
  width: 140px;
  height: auto;
}

.acf-pozzo-landing .acf-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--acf-space-md);
  align-items: center;
}

.acf-pozzo-landing .acf-hero-eyebrow {
  display: inline-block;
  font-family: var(--acf-font-title);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--acf-color-primary);     /* blu brand su beige */
  margin-bottom: var(--acf-space-sm);
}

.acf-pozzo-landing .acf-hero-title {
  font-size: 36px;
  margin-bottom: var(--acf-space-sm);
  color: #2A2A2A;
}

.acf-pozzo-landing .acf-hero-subtitle {
  font-size: 18px;
  color: var(--acf-color-text-muted);
  margin-bottom: var(--acf-space-md);
}

/*
  CTA hero: verde brand su beige.
  Risalta forte e si lega visivamente ai numeri di impatto
  (anch'essi in verde) per dare continuità cromatica al
  messaggio "questo è ciò che conta".
*/
.acf-pozzo-landing .acf-hero .acf-btn-primary {
  background: var(--acf-color-accent);
  color: var(--acf-color-text-on-primary);
}

.acf-pozzo-landing .acf-hero .acf-btn-primary:hover {
  background: var(--acf-color-accent-dark);
}

.acf-pozzo-landing .acf-hero-image {
  border-radius: var(--acf-radius-md);
  overflow: hidden;
  aspect-ratio: 4/3;
  background: var(--acf-color-border);
}

.acf-pozzo-landing .acf-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ==========================================================
   2. SCHEMA PROGETTO
   ========================================================== */
.acf-pozzo-landing .acf-schema {
  padding: var(--acf-space-lg) 0;
  background: var(--acf-color-bg);
}

.acf-pozzo-landing .acf-schema-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--acf-space-sm);
}

.acf-pozzo-landing .acf-schema-card {
  background: var(--acf-color-bg-accent-soft);
  border-radius: var(--acf-radius-md);
  padding: var(--acf-space-md);
  text-align: center;
  border-top: 4px solid var(--acf-color-accent);
}

.acf-pozzo-landing .acf-schema-label {
  font-family: var(--acf-font-title);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--acf-color-text-muted);
  margin-bottom: var(--acf-space-xs);
}

.acf-pozzo-landing .acf-schema-value {
  font-family: var(--acf-font-title);
  font-size: 32px;
  font-weight: 700;
  color: var(--acf-color-accent-dark);
  line-height: 1.1;
  margin-bottom: 4px;
}

.acf-pozzo-landing .acf-schema-detail {
  font-size: 14px;
  color: var(--acf-color-text-muted);
  margin: 0;
}

/* ==========================================================
   3. VIDEO COSTRUZIONE POZZO
   ========================================================== */
.acf-pozzo-landing .acf-video {
  padding: var(--acf-space-lg) 0;
  background: var(--acf-color-bg-alt);
}

.acf-pozzo-landing .acf-video-title {
  font-size: 28px;
  text-align: center;
  margin-bottom: var(--acf-space-md);
}

.acf-pozzo-landing .acf-video-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  background: #000;
  border-radius: var(--acf-radius-md);
  overflow: hidden;
}

.acf-pozzo-landing .acf-video-wrapper iframe {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.acf-pozzo-landing .acf-video-caption {
  text-align: center;
  font-size: 14px;
  color: var(--acf-color-text-muted);
  margin-top: var(--acf-space-sm);
}

/* ==========================================================
   4. LE 4 FASI DEL PROGETTO
   ========================================================== */
.acf-pozzo-landing .acf-fasi {
  padding: var(--acf-space-lg) 0;
  background: var(--acf-color-bg);
}

.acf-pozzo-landing .acf-fasi-title {
  font-size: 28px;
  text-align: center;
  margin-bottom: var(--acf-space-md);
}

.acf-pozzo-landing .acf-fasi-intro {
  text-align: center;
  font-size: 17px;
  color: var(--acf-color-text-muted);
  max-width: 640px;
  margin: 0 auto var(--acf-space-lg);
}

.acf-pozzo-landing .acf-fasi-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--acf-space-sm);
}

.acf-pozzo-landing .acf-fase {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: var(--acf-space-sm);
  background: var(--acf-color-bg-alt);
  border-radius: var(--acf-radius-md);
  padding: var(--acf-space-md);
  align-items: start;
}

.acf-pozzo-landing .acf-fase-num {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--acf-color-primary);
  color: var(--acf-color-text-on-primary);
  font-family: var(--acf-font-title);
  font-weight: 700;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.acf-pozzo-landing .acf-fase-title {
  font-size: 20px;
  margin-bottom: 6px;
}

.acf-pozzo-landing .acf-fase-text {
  font-size: 15px;
  color: var(--acf-color-text-muted);
  margin: 0;
}

/* ==========================================================
   5. CIFRE DI CONTRIBUZIONE (informative)
   ========================================================== */
.acf-pozzo-landing .acf-cifre {
  padding: var(--acf-space-lg) 0;
  background: var(--acf-color-bg-primary-soft);
}

.acf-pozzo-landing .acf-cifre-title {
  font-size: 28px;
  text-align: center;
  margin-bottom: var(--acf-space-sm);
}

.acf-pozzo-landing .acf-cifre-intro {
  text-align: center;
  font-size: 17px;
  color: var(--acf-color-text-muted);
  max-width: 640px;
  margin: 0 auto var(--acf-space-lg);
}

.acf-pozzo-landing .acf-cifre-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--acf-space-sm);
}

.acf-pozzo-landing .acf-cifra {
  background: #FFFFFF;
  border: 1px solid var(--acf-color-border);
  border-radius: var(--acf-radius-md);
  padding: var(--acf-space-md);
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.acf-pozzo-landing .acf-cifra-amount {
  font-family: var(--acf-font-title);
  font-weight: 700;
  font-size: 32px;
  color: var(--acf-color-accent-dark);
  line-height: 1.1;
}

.acf-pozzo-landing .acf-cifra-label {
  font-family: var(--acf-font-title);
  font-weight: 700;
  font-size: 17px;
  color: var(--acf-color-text);
}

.acf-pozzo-landing .acf-cifra-desc {
  font-size: 14px;
  color: var(--acf-color-text-muted);
  margin: 0;
}

/* ==========================================================
   6. DONOR CARE — INTRO BLOCK
   (da incollare in colonna SINISTRA Elementor)
   ========================================================== */
.acf-pozzo-landing .acf-donorcare-intro {
  display: flex;
  flex-direction: column;
  gap: var(--acf-space-sm);
}

.acf-pozzo-landing .acf-donorcare-title {
  font-size: 28px;
  margin-bottom: 4px;
}

.acf-pozzo-landing .acf-donorcare-text {
  font-size: 16px;
  color: var(--acf-color-text-muted);
  margin: 0;
}

.acf-pozzo-landing .acf-donorcare-person {
  display: flex;
  align-items: center;
  gap: var(--acf-space-sm);
  background: var(--acf-color-bg-alt);
  border-radius: var(--acf-radius-md);
  padding: var(--acf-space-sm);
  margin-top: var(--acf-space-sm);
}

.acf-pozzo-landing .acf-donorcare-photo {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--acf-color-bg-primary-soft);
  flex-shrink: 0;
  overflow: hidden;
}

.acf-pozzo-landing .acf-donorcare-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.acf-pozzo-landing .acf-donorcare-name {
  font-family: var(--acf-font-title);
  font-weight: 700;
  font-size: 17px;
  color: var(--acf-color-text);
}

.acf-pozzo-landing .acf-donorcare-role {
  font-size: 14px;
  color: var(--acf-color-text-muted);
}

.acf-pozzo-landing .acf-donorcare-contacts {
  font-size: 14px;
  margin-top: 4px;
}

.acf-pozzo-landing .acf-donorcare-contacts a {
  color: var(--acf-color-primary);
  text-decoration: none;
  font-weight: 700;
}

.acf-pozzo-landing .acf-donorcare-contacts a:hover {
  text-decoration: underline;
}

/* Wrapper visivo per la sezione Donor Care
   (utile se la implementi come singola sezione Elementor) */
.acf-pozzo-landing .acf-donorcare-section {
  padding: var(--acf-space-lg) 0;
  background: var(--acf-color-bg);
}

/* ==========================================================
   BREAKPOINT — Tablet (≥640px)
   ========================================================== */
@media (min-width: 640px) {
  .acf-pozzo-landing .acf-hero-title { font-size: 44px; }
  .acf-pozzo-landing .acf-schema-grid { grid-template-columns: repeat(3, 1fr); }
  .acf-pozzo-landing .acf-cifre-grid { grid-template-columns: repeat(2, 1fr); }
  .acf-pozzo-landing .acf-fasi-list { grid-template-columns: repeat(2, 1fr); }
}

/* ==========================================================
   BREAKPOINT — Desktop (≥960px)
   ========================================================== */
@media (min-width: 960px) {
  .acf-pozzo-landing .acf-hero { padding: var(--acf-space-md) 0 var(--acf-space-xl); }
  .acf-pozzo-landing .acf-hero-grid {
    grid-template-columns: 1.1fr 1fr;
    gap: var(--acf-space-lg);
  }
  .acf-pozzo-landing .acf-hero-title { font-size: 52px; }
  .acf-pozzo-landing .acf-hero-logo img { width: 160px; }

  .acf-pozzo-landing .acf-schema,
  .acf-pozzo-landing .acf-video,
  .acf-pozzo-landing .acf-fasi,
  .acf-pozzo-landing .acf-cifre,
  .acf-pozzo-landing .acf-donorcare-section {
    padding: var(--acf-space-xl) 0;
  }

  .acf-pozzo-landing .acf-cifre-grid { grid-template-columns: repeat(4, 1fr); }
  .acf-pozzo-landing .acf-fasi-list { grid-template-columns: repeat(2, 1fr); }

  .acf-pozzo-landing .acf-fasi-title,
  .acf-pozzo-landing .acf-cifre-title,
  .acf-pozzo-landing .acf-video-title,
  .acf-pozzo-landing .acf-donorcare-title {
    font-size: 36px;
  }
}

.page-id-31407 {
    margin: 0 !important;
    padding: 0 !important;
}/* End custom CSS */