/*
breakpoints principali
@media (max-width: 374px)
@media (min-width: 375px)
@media (min-width: 414px)
@media (min-width: 768px)
@media (min-width: 1024px)
@media (min-width: 1280px)
*/

:root {
  --green: #38ba00;
  --green-dark: #5b9615;
  --green-soft: #eef7df;
  --green-soft-2: #f7fbef;
  --text: #1f2937;
  --text-soft: #5f6978;
  --border: #e5e7eb;
  --bg-soft: #f8fafc;
  --bg-warm: #fbfcf8;
  --white: #ffffff;
  --shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
  --shadow2: 0 10px 30px rgba(15, 23, 42, 0.48);
  --radius: 22px;
  --radius-sm: 16px;
  --max: 1170px;
}

.page .entry-title,
.woocommerce-breadcrumb {
  display: none;
}

section.hlf-hero > div > div > div:nth-child(1) > p:nth-child(1) {
  margin-bottom: 10px;
}

.hlf-landing {
  --green: #38ba00;
  --green-dark: #5b9615;
  --green-soft: #eef7df;
  --green-soft-2: #f7fbef;
  --text: #1f2937;
  --text-soft: #5f6978;
  --border: #e5e7eb;
  --bg-soft: #f8fafc;
  --bg-warm: #fbfcf8;
  --white: #ffffff;
  --shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
  --shadow2: 0 10px 30px rgba(15, 23, 42, 0.48);
  --radius: 22px;
  --radius-sm: 16px;
  --max: 1170px;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--text);
  line-height: 1.6;
  background: #fff;
}

.hlf-landing * {
  box-sizing: border-box;
}

.hlf-landing a {
  text-decoration: none;
}

.hlf-container {
  width: 100%;
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 18px;
}

.hlf-section {
  padding: 52px 0;
}

.hlf-section-tight {
  padding: 36px 0;
}

.hlf-hero {
  padding: 13px 0 36px;
  background:
    radial-gradient(circle at top left, rgba(120, 190, 32, 0.12), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #fbfdf8 100%);
}

.hlf-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  align-items: center;
  line-height: 1.3;
}

.hlf-eyebrow {
  display: inline-block;
  padding: 0px 0px 14px 0px;
  border-radius: 999px;
  background: var(--green-soft);
  color: #1B6B29;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.2px;
  font-style: italic;
}

.hlf-h1 {
font-size: clamp(28px, 2.2vw, 34px) !important;
line-height: 1.08;
  margin: 10px 0 24px;
  letter-spacing: -0.5px;
}

.hlf-lead {
  font-size: 18px;
  color: var(--text-soft);
  margin: 0 0 20px;
}

.hlf-method-box {
  background: #f6f7f8;
  border: 1px solid #d9dde3;
  border-radius: 6px;
  padding: 18px 18px;
  margin: 26px 0 30px;
  opacity: 0;
  transform: translateY(10px);
  animation: hlfFadeInBox 0.6s ease forwards;
}

.hlf-method-title {
  font-size: 16px;
  color: var(--text-soft);
  margin: 0 0 12px;
  font-weight: 300;
  text-align: center;
  font-style: italic;
}

.hlf-method {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0;
}

.hlf-method-item,
.hlf-method-result {
  position: relative;
  border-radius: 6px;
  padding: 10px 18px 10px 40px;
  text-align: center;
  font-weight: normal;
  max-width: 180px;
  min-height: 108px;
  margin: 0 auto;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: translateY(6px);
}

.hlf-method-item {
  background: #ffffff;
  border: 1px solid var(--border);
  font-size: 18px;
  color: var(--text);
  box-shadow: none;
}

.hlf-method-result {
  background: white;
  color: #1B6B29;
  border: 10px solid #d1d5db;
  box-shadow: none;
  font-weight: 800;
  font-size: 18px;
	transform: scale(1.20) !important;
    padding: 10px 25px;
    margin-bottom: 16px;
    margin-top: 8px;
}
	
.hlf-method-item br,
.hlf-method-result br {
  display: block;
  content: "";
  margin-top: 2px;
}

.hlf-method-icon {
  position: absolute;
  left: -25px;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid #d9dde3;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.10);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  overflow: hidden; /* 🔥 fondamentale */
}

.hlf-method-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* 🔥 crop */
  border-radius: 50%;
}
																			
div.hlf-method-result.hlf-method-item-result > span {
	left:-30px;
}

.hlf-method-result .hlf-method-icon {
  border-color: #c8ccd2;
}

.hlf-method-plus,
.hlf-method-eq {
  width: 46px;
  min-width: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight:300;
  color: #9ca3af;
  font-size: 36px;
  line-height: 1;
  margin: 0 4px 0 -12px;
  opacity: 0;
  transform: translateY(6px);
}

.hlf-method-item:nth-child(1) {
  animation: hlfFadeInItem 0.4s ease forwards 0.2s;
}

.hlf-method-plus:nth-child(2) {
  animation: hlfFadeInItem 0.4s ease forwards 0.3s;
}

.hlf-method-item:nth-child(3) {
  animation: hlfFadeInItem 0.4s ease forwards 0.4s;
}

.hlf-method-plus:nth-child(4) {
  animation: hlfFadeInItem 0.4s ease forwards 0.5s;
}

.hlf-method-item:nth-child(5) {
  animation: hlfFadeInItem 0.4s ease forwards 0.6s;
}

.hlf-method-eq:nth-child(6) {
  animation: hlfFadeInItem 0.4s ease forwards 0.7s;
}

.hlf-method-result:nth-child(7) {
  animation: hlfFadeInItem 0.4s ease forwards 0.8s;
}

@keyframes hlfFadeInBox {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes hlfFadeInItem {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.hlf-btn-row {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 18px;
}

.hlf-btn-row .hlf-btn-primary {
  order: 1;
}

.hlf-btn-primary, .hlf-btn-secondary {max-width:400px;}

.hlf-btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 50px;
  padding: 14px 20px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 18px;
  transition: transform 0.15s ease, background 0.15s ease, border-color 0.15s ease;
  text-align: center;
}

.hlf-btn-microcopy {
  order: 2;
  width: 100%;
  flex-basis: 100%;
  font-size: 14px;
  color: var(--text-soft);
  text-align: center;
  line-height: 1.4;
  font-style: italic;
  margin: 1px 0 6px;
}
.hlf-btn-microcopy2 {
  order: 2;
  width: 100%;
  flex-basis: 100%;
  font-size: 14px;
  color: var(--text-soft);
  text-align: center;
  line-height: 1.4;
  font-style: italic;
  margin: 6px 0 -5px;
}																				

.hlf-btn-row .hlf-btn-secondary {
  order: 3;
}
																					
.hlf-btn:hover {
  transform: translateY(-1px);
}

.hlf-btn-primary {
  background: var(--green);
  color: #fff;
}

.hlf-btn-primary:hover {
  background: var(--green-dark);
  color: #fff;
}

.hlf-btn-secondary {
  background: #fff;
  color: var(--text);
  border: 1px solid var(--border);
}

.hlf-btn-secondary:hover {
  background: #f9fafb;
  color: var(--text);
}
																															
.hlf-btn-primary {
  animation: hlfPulse 2s infinite;
}

@keyframes hlfPulse {
  0% { box-shadow: 0 0 0 0 rgba(56, 186, 0, 0.4); }
  70% { box-shadow: 0 0 0 10px rgba(56, 186, 0, 0); }
  100% { box-shadow: 0 0 0 0 rgba(56, 186, 0, 0); }
}
																																		
.hlf-proof {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 50px;
}

.hlf-proof-box {
  border: 1px solid var(--border);
  background: #f6f7f8;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 15px;
  color: var(--text-soft);
  text-align:center;	
  line-height: 1.3em;
}

.hlf-hero-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 22px;
  box-shadow: var(--shadow);
}

.hlf-card-title {
  font-size: 22px;
  line-height: 1.2;
  margin: 0 0 10px;
}

.hlf-card-sub {
  margin: 0 0 16px;
  color: var(--text-soft);
  font-size: 15px;
  line-height: 1.3;
}

.hlf-mini-list,
.hlf-list {
  margin: 0 0 20px 0;
  padding: 0;
  list-style: none;
  line-height: 1.3em;
}

.hlf-mini-list li,
.hlf-list li {
  position: relative;
  padding-left: 28px;
}

.hlf-mini-list li {
  margin-bottom: 12px;
  color: var(--text);
  font-size: 15px;
}

.hlf-mini-list li:before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--green-soft);
  color: var(--green-dark);
  font-size: 13px;
  line-height: 20px;
  text-align: center;
  font-weight: 700;
}

.hlf-title {
  font-size: 28px;
  line-height: 1.12;
  margin: 0 0 14px;
  letter-spacing: -0.3px;
}

.hlf-subcopy {
  max-width: 780px;
  color: var(--text-soft);
  font-size: 17px;
  margin: 0 0 26px;
  line-height: 1.3;
}

.hlf-grid-2,
.hlf-grid-3 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.hlf-box {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 22px;
  box-shadow: var(--shadow);
}

.hlf-box-soft {
  background: var(--bg-warm);
  border: 1px solid #ebefdf;
  line-height: 1.3;
}

.hlf-box h3 {
font-size: 16px;
    line-height: 1.3;
  margin: 0 0 10px;
}

.hlf-box p:last-child {
  margin-bottom: 0;
}

.hlf-muted {
  color: var(--text-soft);
  font-size: 1em;
  line-height: 1.3;
}

.hlf-list {
  margin-top: 14px;
}

.hlf-list li {
  margin-bottom: 10px;
  font-size: 16px;
}


.hlf-list li:before {
  content: "•";
  position: absolute;
  left: 10px;
  top: 0;
  color: var(--green-dark);
  font-weight: 700;
}

.hlf-highlight {
  background: linear-gradient(135deg, #f7fbef 0%, #ffffff 100%);
  border: 1px solid #dce8c8;
  border-radius: 6px;
  padding: 24px;
}

.hlf-compare-wrap {
  overflow-x: auto;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.hlf-compare {
  width: 100%;
  min-width: 688px;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--border);
  margin-bottom:0px;
}

.hlf-compare th,
.hlf-compare td {
  padding: 16px;
  border-bottom: 1px solid var(--border);
  border-right: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
  font-size: 15px;
}

.hlf-compare th:last-child,
.hlf-compare td:last-child {
  border-right: none;
}

.hlf-compare tr:last-child td {
  border-bottom: none;
}

.hlf-compare th {
  background: #f8faf8;
  font-size: 15px;
}

.hlf-steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top:20px;																																																																															
}

.hlf-step {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 12px;
  line-height: 1.3;
}

.hlf-step-num {
  min-width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--green);
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  line-height: 34px;
  text-align: center;
  flex-shrink: 0;
}

.hlf-step h3 {
  margin: 0 0 6px;
  font-size: 18px;
  line-height: 1.3;
}

.hlf-step p {
  margin: 0;
  color: var(--text-soft);
  font-size: 15px;
}

.hlf-contact {
  background: linear-gradient(180deg, #ffffff 0%, #f9fbf6 100%);
}

.hlf-contact-wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.hlf-form-box {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 24px;
  box-shadow: var(--shadow2);
}

.hlf-side-box {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 24px;
  box-shadow: var(--shadow);
}

.hlf-form-note {
  margin-top: 12px;
  font-size: 14px;
  color: var(--text-soft);
  text-align:center;
 font-style:italic;																																																										
}

.hlf-placeholder {
  margin-top: 18px;
  border: 1px solid #dce8c8;
  border-radius: 18px;
  padding: 20px;
    background: linear-gradient(180deg, var(--green-soft) 0%, #ffffff 100%);  color: var(--text-soft);
  font-size: 15px;
}

.hlf-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.hlf-badge {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 12px;
  border-radius: 999px;
  background: #fff;
  color: #1b6b2a;
  font-size: 14px;
  font-weight: 700;
  border: 1px solid #1b6b2a;
}

.hlf-program-tag {
  display: inline-block;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #f2f4f7;
  color: var(--text-soft);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.hlf-faq {
  display: grid;
  gap: 12px;
}

.hlf-faq details {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  padding: 16px 18px;
  box-shadow: var(--shadow);
  line-height: 1.3;
}

.hlf-faq summary {
  cursor: pointer;
  font-weight: 700;
  font-size: 17px;
  line-height: 1.35;
  list-style: none;
}

.hlf-faq summary::-webkit-details-marker {
  display: none;
}

.hlf-faq details p {
  margin: 12px 0 0;
  color: var(--text-soft);
  font-size: 15px;

}

.hlf-final {

  background:
    radial-gradient(circle at top center, rgba(120, 190, 32, 0.12), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #fbfdf8 100%);
}

.hlf-small {
  font-size: 14px;
  color: var(--text-soft);
}

.hlf-section-image-wrap {
  padding-top: 0;
}

.hlf-section-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 24px;
  box-shadow: var(--shadow);
  border: 1px solid var(--border);
  background: #fff;
}

.hlf-section-image-hero {
  margin-bottom: 18px;
}


/* ============================================
   PIANO PERSONALE - DESKTOP PREMIUM
============================================ */

.hlf-plan-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  align-items: center;
}

.hlf-plan-copy .hlf-subcopy {
  max-width: 100%;
  margin-bottom: 20px;
}

.hlf-plan-note {
  margin-top: 10px;
}

.hlf-plan-media {
  display: block;
}

.hlf-plan-image {
  width: 100%;
  height: auto;
  display: block;
}

/* CTA dopo confronto */
.hlf-compare-cta {
  text-align: center;
  margin-top: 28px;
}

.hlf-compare-cta-text {
  max-width: 760px;
  margin: 0 auto 14px;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 700;
  color: var(--text);
}

.hlf-compare-cta .hlf-btn-row {
  justify-content: center;
}




/* DESKTOP / MOBILE SWITCH PER IL CONFRONTO */
.hlf-compare-desktop {
  display: block;
}

.hlf-compare-mobile {
  display: none;
}

/* MOBILE COMPARISON CARDS */
.hlf-compare-card {
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
  padding: 18px;
  box-shadow: var(--shadow);
  margin-bottom: 16px;
}

.hlf-compare-card h3 {
  margin: 0 0 14px;
  font-size: 19px;
  line-height: 1.3;
}

.hlf-compare-side {
  border-radius: 6px;
  padding: 14px;
  line-height:1.3;
  font-size:15px;
}

.hlf-compare-side + .hlf-compare-side {
  margin-top: 12px;
}

.hlf-compare-side-a {
  background: #f8fafc;
  border: 1px solid #e5e7eb;
}

.hlf-compare-side-b {
background: #eef7df;
border: 2px solid #cfe7a3;
}

.hlf-compare-label {
  font-weight: 700;
  font-size: 15px;
  margin-bottom: 6px;
  color: var(--text);
}

.hlf-compare-side p {
  margin: 0;
  font-size: 15px;
  color: var(--text-soft);
  line-height: 1.5;
}

/* MOBILE ONLY */
@media (max-width: 767px) {
  .hlf-compare-desktop, .hlf-hero-card-desktop {
    display: none;
  }

  .hlf-compare-mobile {
    display: block;
  }

  .hlf-compare-card h3 {
    font-size: 18px;
  }

  .hlf-compare-side p {
    font-size: 15px;
  }
  
   div.hlf-box > h3 > img,
   aside > div > p > img {width:80%;max-width:400px;}
}	
																																																																																																																												

/* =========================
   FORM LANDING - FORMIDABLE
========================= */

#frm_form_3_container,
#frm_form_3_container .frm_form_fields,
#frm_form_3_container fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}

#frm_form_3_container .frm_fields_container {
  display: grid;
  gap: 18px;
}

#frm_form_3_container .frm_form_field {
  margin: 0;
}

#frm_form_3_container .frm_primary_label {
  display: block;
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  line-height: 1.35;
}

#frm_form_3_container .frm_required {
  color: #b91c1c;
  margin-left: 4px;
}

/* Nome + Cognome */
#frm_form_3_container .frm_combo_inputs_container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

/* Input base */
#frm_form_3_container input[type="text"],
#frm_form_3_container input[type="email"],
#frm_form_3_container input[type="tel"],
#frm_form_3_container textarea,
#frm_form_3_container select {
  width: 100%;
  min-height: 52px;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  color: var(--text);
  font-size: 16px;
  line-height: 1.4;
  box-shadow: none;
  outline: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
  -webkit-appearance: none;
  appearance: none;
}

#frm_form_3_container textarea {
  min-height: 120px;
  resize: vertical;
}

#frm_form_3_container input[type="text"]:focus,
#frm_form_3_container input[type="email"]:focus,
#frm_form_3_container input[type="tel"]:focus,
#frm_form_3_container textarea:focus,
#frm_form_3_container select:focus {
  border-color: #b9d98a;
  box-shadow: 0 0 0 3px rgba(56, 186, 0, 0.10);
  background: #fff;
}

/* Description sotto i campi nome/cognome */
#frm_form_3_container .frm_description {
  margin-top: 6px;
  font-size: 12px;
  color: var(--text-soft);
  line-height: 1.3;
}

/* Box opzioni checkbox */
#frm_form_3_container .frm_opt_container {
  display: grid;
  gap: 10px;
  margin-top: 8px;
}

#frm_form_3_container .frm_checkbox {
  margin: 0;
}

#frm_form_3_container .frm_checkbox label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  color: var(--text);
  font-size: 14px;
  line-height: 1.3;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

#frm_form_3_container .frm_checkbox label:hover {
  background: #fafcf7;
  border-color: #dce8c8;
}

/* Checkbox */
#frm_form_3_container .frm_checkbox input[type="checkbox"] {
  margin: 2px 0 0;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  accent-color: var(--green);
}

/* Stato checked */
#frm_form_3_container .frm_checkbox input[type="checkbox"]:checked + * {
  font-weight: 600;
}

/* Se il browser non applica + * per via del markup label, diamo comunque enfasi al label via :has */
#frm_form_3_container .frm_checkbox label:has(input[type="checkbox"]:checked) {
  border-color: #cfe3ad;
  background: #f7fbef;
  box-shadow: 0 0 0 2px rgba(56, 186, 0, 0.05);
}

/* Box HTML privacy */
#frm_form_3_container .frm_html_container {
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fbfcf8;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.2em;
}

#field_66bs83_label, #field_eyw0r_label {
	font-size:13px !important;
	letter-spacing: -0.6px;
}

#field_eyw0r_label {
  display: flex !important;
  align-items: flex-start;
  gap: 8px;
}

#field_eyw0r_label::before {
  content: "✔";
  flex-shrink: 0;
  margin-top: 2px;
  margin-right:5px;
}

#frm_form_3_container .frm_html_container p {
  margin: 0;
}

#frm_form_3_container .frm_html_container a {
  color: var(--text);
  text-decoration: underline;
}

/* Submit area */
#frm_form_3_container .frm_submit {
  margin: 8px 0 0;
}

#frm_form_3_container .frm_button_submit {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 54px;
  padding: 14px 20px;
  border: 0;
  border-radius: 999px;
  background: var(--green);
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: transform 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
  box-shadow: none;
}

#frm_form_3_container .frm_button_submit:hover {
  background: var(--green-dark);
  transform: translateY(-1px);
}

#frm_form_3_container .frm_button_submit:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(56, 186, 0, 0.15);
}

/* Togli stile hlf-btn messo sul container submit */
#frm_field_30_container.hlf-btn,
#frm_field_30_container.hlf-btn-primary {
  all: unset;
  display: block;
}

/* Errori */
#frm_form_3_container .frm_error,
#frm_form_3_container .frm_error_style {
  color: #b91c1c;
  font-size: 13px;
  line-height: 1.4;
  margin-top: 6px;
}

#frm_form_3_container .frm_blank_field input,
#frm_form_3_container .frm_blank_field textarea,
#frm_form_3_container .frm_blank_field select,
#frm_form_3_container .frm_blank_field .frm_checkbox label {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.06);
}

/* Honeypot nascosto bene */
#frm_form_3_container .frm__67cacf81432cc {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}
																																																																																																																											

.hlf-plan-premium-desktop {
  display: none;
}


	
/* =========================
   FORM BOX PREMIUM
========================= */

.hlf-form-title {
  margin: 0 0 4px;
  font-size: clamp(22px, 2.2vw, 24px);
  line-height: 1.2;
  color: var(--text);
}

.hlf-form-kicker {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 14px;
   font-size: clamp(21px, 2vw, 24px);
  line-height: 1.1;
  font-weight: 800;
  color: #1B6B29;
  letter-spacing: 0.2px;
}

.hlf-form-kicker-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #e8f5d8;
    color: #1B6B29;
    font-weight: 900;
    margin-left: -8px;
}

.hlf-form-intro {
  margin: 0 0 18px;
  font-size: 16px;
  line-height: 1.45;
  color: var(--text-soft);
}

.hlf-form-box {
  position: relative;
  overflow: hidden;
}

.hlf-form-box:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, #38ba00 0%, #9ad85d 100%);
}

.hlf-form-box {
  padding-top: 28px;
}

/* Campi un po' più premium */
#frm_form_3_container .frm_primary_label {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: 700;
}

#frm_form_3_container input[type="text"],
#frm_form_3_container input[type="email"],
#frm_form_3_container input[type="tel"],
#frm_form_3_container textarea,
#frm_form_3_container select {
  min-height: 54px;
  border-radius: 16px;
  font-size: 16px;
  background: #fff;
}

#frm_form_3_container .frm_checkbox label {
  border-radius: 16px;
  padding: 14px 16px;
  font-size: 15px;
}

/* Submit più forte */
#frm_form_3_container .frm_submit {
  margin: 14px 0 0;
  text-align: center;
}

#frm_form_3_container .frm_button_submit {
  min-width: 280px;
  min-height: 56px;
  font-size: 20px;
  font-weight: 800;
  box-shadow: 0 10px 24px rgba(56, 186, 0, 0.18);
}

#frm_form_3_container .frm_button_submit:hover {
  box-shadow: 0 12px 28px rgba(56, 186, 0, 0.22);
}

/* Microcopy sotto submit */
.hlf-form-note {
  margin-top: 14px;
  text-align: center;
  font-style: italic;
}

/* Colonna destra più card-like */
.hlf-side-box {
  border-radius: 18px;
}

.hlf-badges {
  margin-top: 18px;
}

.hlf-badge {
  font-size: 13px;
  line-height: 1.2;
}																																																																																																																							


.hlf-marathon-premium-desktop,  .cta-text-desktop {
	display: none;
}


.landing-mobile, .landing-desktop, .landing_0-374,
.landing_375-413, .landing_414-767, .landing_768-1023,
.landing_1024-1279, .hlf-h1-tablet, .hlf-card-title-tablet,
.hlf-btn-microcopy2-tablet, .programmi-tablet {display:none;}

/* =================================================================
   .landing-mobile < 768
================================================================= */

@media (max-width: 767px) {

.landing-mobile, .hlf-hero-card-mobile {
	display: block;
	}
.hlf-btn-primary, .hlf-btn-secondary {margin-left:auto;margin-right:auto;}
}

/* =================================================================
   .landing_0-374
================================================================= */

@media (max-width: 374px) {

.landing_0-374 {
	display: block;
	}
.hlf-lead, .hlf-subcopy {
    font-size: 16px;
    }
#field_66bs83_label {
    font-size: 13px !important;
	}

.hlf-muted {
    font-size: 15px;
	}
div.hlf-highlight > p.hlf-subcopy {
	font-size: 15px;
	}
.hlf-plan-note {
	padding:20px;
	}
.hlf-compare-side {
    padding: 6px;
    font-size: 14px;
	}
section.hlf-section.hlf-original-marathon-block > div > ul > li {
	font-size:16px;
	}
.hlf-step {
    font-size: 15px;
	}
#frm_form_3_container .frm_button_submit {
    font-size: 18px;
	}
.hlf-badge {
    letter-spacing: -0.1px;
	}
section.hlf-section.faq-desktop > div > h2 {
	font-size: clamp(1.175rem, 0.9939rem + 1.2195vw, 1.75rem);
	}
section.hlf-section.hlf-original-method-block > div > div {
	gap:6px;
	}
}

/* =================================================================
   .landing_375-413
================================================================= */

@media (min-width: 375px) and (max-width: 413px) {

.landing_375-413 {
	display: block;
	}
.hlf-lead, .hlf-subcopy {
    font-size: 16px;
    }
#field_66bs83_label {
    font-size: 13px !important;
	}

}

/* =================================================================
   .landing_414-600
================================================================= */

@media (min-width: 414px) and (max-width: 767px) {

.landing_414-767 {
	display: block;
	}

div.hlf-highlight > p.hlf-subcopy {
	font-size: 16px;
	}
.hlf-proof {
	max-width:400px;
	margin-left: auto;
    margin-right: auto;
	}
.hlf-mini-list, .hlf-original-method-block {
	max-width: 95%;
    margin-left: auto;
    margin-right: auto;
	}
	
}

/* =================================================================
   .landing_768-1023
================================================================= */

@media (min-width: 768px) and (max-width: 1023px) {

 .landing_768-1023, .hlf-h1-tablet, .hlf-card-title-tablet,
 .hlf-btn-microcopy2-tablet {
 	display:block;
 	}	
 .hlf-mini-list, .hlf-original-method-block {
	max-width: 95%;
    margin-left: auto;
    margin-right: auto;
	}
 	
 .hlf-grid-3 {
    grid-template-columns: repeat(2, 1fr);
  	}	
 .hlf-grid-3 > :nth-child(3) {
  	grid-column: 1 / -1;
    width: 50%;
    margin: auto;
 	}
  .essere-costanti > :nth-child(3) {
  	grid-column: 1 / -1;
    width: 100%;
 	}
  .programmi-tablet {
  	display:grid;
  	}
 .programmi-tablet > :nth-child(3) {
  	grid-column: unset;
    width: unset;
    margin: unset;
 	}
 .hlf-section-image {
 	max-width:400px;
 	margin-left: auto;
	margin-right: auto;
 	}
 .hlf-h1-mobile, .hlf-hero-card-desktop, .hlf-card-title-mobile,
 .hlf-btn-microcopy2-mobile, .hlf-programmi-premium-side,
 .griglia-programmi {
 	display:none;
 	}

/*
section.hlf-section.hlf-final > div > div > p:nth-child(3) {
 	display:none;
 	}
*/
section.hlf-section.hlf-final > div > div > p:nth-child(2),
section.hlf-section.hlf-final > div > div > p:nth-child(3) {
 	flex-basis: 100%;
 	}
 	
 .hlf-hero-card-mobile {
 	width: 94%;
    margin-left: auto;
    margin-right: auto;
    padding:50px;
    }
    
 .hlf-hero-card-mobile > img {
 	margin-bottom:30px;
 	}  
 .hlf-method-image {
        width: 90%;
    }
div.hlf-hero-card.hlf-hero-card-mobile > p:nth-child(6) {
	text-align:center;
	}
div.hlf-plan-note {
	margin-bottom:30px;
	}
.differenza {
 	padding: 0 0 52px 0;
 	}
 	
section.hlf-section.hlf-original-marathon-block > div > img {
	margin-top:50px;
	margin-bottom:50px;
	} 
#richiedi-consulenza > div > div > div.hlf-side-box > h3 {
	font-size:22px:
	}
#richiedi-consulenza > div > div > div.hlf-side-box > ul {
	font-size:14px;
	}
.hlf-badge {
	letter-spacing:-0.8px;
	padding: 8px 8px;
	}
section.hlf-section.faq-desktop > div > h2 {
	font-size:28px;
	} 
}

            @media (min-width: 993px) and (max-width: 1279px) {
                
              .content-area {
                    width: 95% !important;
                }
        
            }


/* =================================================================
   .landing_1024-1279
================================================================= */

@media (min-width: 1024px) and (max-width: 1279px) {

.landing_1024-1279 {
	display: block;
	}
	
 .hlf-h1-tablet, .hlf-card-title-tablet,
 .hlf-btn-microcopy2-tablet {
 	display:block;
 	}	
 
 
 .hlf-grid-3 {
    grid-template-columns: repeat(2, 1fr);
  	}	
 .hlf-grid-3 > :nth-child(3) {
  	grid-column: 1 / -1;
    width: 50%;
    margin: auto;
 	}
  .essere-costanti > :nth-child(3) {
  	grid-column: 1 / -1;
    width: 100%;
 	}
 .programmi-tablet > :nth-child(3) {
  	grid-column: unset;
    width: unset;
    margin: unset;
 	}
 .hlf-section-image {
 	max-width:400px;
 	margin-left: auto;
	margin-right: auto;
 	}

  .hlf-h1-mobile, .hlf-hero-card-desktop, .hlf-card-title-mobile,
 .hlf-btn-microcopy2-mobile, .hlf-programmi-premium-side,
 .griglia-programmi {
 	display:none;
 	}

/*
section.hlf-section.hlf-final > div > div > p:nth-child(3) {
 	display:none;
 	}
*/
section.hlf-section.hlf-final > div > div > p:nth-child(2),
section.hlf-section.hlf-final > div > div > p:nth-child(3) {
 	flex-basis: 100%;
 	}
 
 
 	
 .hlf-hero-card-mobile {
 	width: 94%;
    margin-left: auto;
    margin-right: auto;
    padding:50px;
    }
    
 .hlf-hero-card-mobile > img {
 	margin-bottom:30px;
 	}  
 .hlf-method-image {
        width: 90%;
    }
div.hlf-hero-card.hlf-hero-card-mobile > p:nth-child(6) {
	text-align:center;
	}
div.hlf-plan-note {
	margin-bottom:30px;
	}
.differenza {
 	padding: 0 0 52px 0;
 	}
 	
section.hlf-section.hlf-original-marathon-block > div > img {
	margin-top:50px;
	margin-bottom:50px;
	} 
.programmi-tablet {
        display: grid;
    }

section.hlf-section.faq-desktop > div > h2 {
	font-size:28px;
	} 
	
	
}

/* =================================================================
   .landing-mobile > 1280
================================================================= */

@media (max-width: 767px) {

.landing-mobile {
	display: block;
	}
}

/* =================================================================
   HERO - METHOD < 768
================================================================= */

@media (max-width: 767px) {
  .hlf-method-item,
  .hlf-method-result {
    width: 100%;
    max-width: 70%;
    min-height: 80px;
    padding-left: 30px;
  }

  .hlf-method-icon {
    left: -20px;
    width: 50px;
    height: 50px;
  }

  .hlf-method-icon img {
    width: 55px;
    height: 55px;
  }

  .hlf-method-plus,
  .hlf-method-eq {
    width: 100%;
    min-width: 0;
    margin: -6px 6px;
    font-size: 36px;
  }

  .hlf-section-image {
    border-radius: 18px;
  }

  .hlf-section-image-hero {
    margin-bottom: 30px;
  }
  
    #frm_form_3_container .frm_button_submit {
    width: auto;
    min-width: 100%;
  }
}


/* =================================================================
   HERO >= 768
================================================================= */

@media (min-width: 768px) {
  .hlf-container {
    padding: 0 24px;
  }

  .hlf-hero {
    padding: 36px 0 48px;
  }

  .hlf-h1 {
    font-size: 48px !important;
  }

  .hlf-title {
    font-size: 36px;
  }

}

/* =================================================================
   METHOD - GRID - CONTACT >= 768
================================================================= */

.hlf-method-picture {
  display: block;
  width: 100%;
  margin: 0 auto 20px;
}

.hlf-method-image {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.hlf-original-method-block {
	font-size:14px;
}
.hlf-original-method-block > div > h2 {
	font-style:italic;
	font-size:16px;
}
.hlf-original-method-block > div > div > div.hlf-box-soft > h3 {
	font-size:15px;
}
.hlf-original-method-block > div > div > div.hlf-box-soft  {
	background-color:#f6f7f8;
	padding: 16px;
}

@media (max-width: 767px) {
  .hlf-method-image, .hlf-section-image, .hlf-section-image-hero  {
    max-width: 400px;
	margin-left: auto; margin-right:auto;
  }
  
  .differenza {padding-bottom:0px;padding-top:0px;}
}

@media (min-width: 768px) {
  .hlf-method-image {
    max-width: 700px;
  }
}


@media (min-width: 768px) {

  .hlf-method {
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: center;
  }

  .hlf-method-item,
  .hlf-method-result {
    max-width: 190px;
  }

  .hlf-proof {
    grid-template-columns: repeat(3, 1fr);
  }

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

  /*
  .hlf-grid-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  */
  
  .hlf-steps {
    grid-template-columns: repeat(2, 1fr);
  }

  .hlf-contact-wrap {
    grid-template-columns: 1.2fr 0.8fr;
    align-items: start;
  }
}

/* =================================================================
   FORM >= 768
================================================================= */

@media (min-width: 768px) {
  #frm_form_3_container .frm_combo_inputs_container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #frm_form_3_container .frm_button_submit {
    width: auto;
    min-width: 260px;
  }
}																																																																																																																												
	

/* =================================================================
   BOTTONI >= 768
================================================================= */

@media (min-width: 768px) {
  .hlf-btn-row {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    column-gap: 14px;
    row-gap: 8px;
  }

  .hlf-btn-row {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .hlf-btn {
    width: auto;
    min-width: 230px;
  }

  .hlf-btn-row .hlf-btn-primary {
    order: 1;
  }

  .hlf-btn-row .hlf-btn-secondary {
    order: 2;
  }

  .hlf-btn-microcopy {
    order: 3;
    width: 100%;
    flex-basis: 100%;
    text-align: center;
    margin: 0;
  }
}


/* =================================================================
   IL TUO PIANO PERSONALE SOLO DESKTOP > 1280
================================================================= */


@media (min-width: 1280px) {

.hlf-hero-card-mobile {display:none;}


  /* Mostra la versione premium */
  .hlf-plan-premium-desktop {
    display: block;
    padding-top: 42px;
    padding-bottom: 42px;
  }

  /* Nasconde le versioni originali duplicate */
  .hlf-original-plan-block,
  .hlf-original-diff-block,
  .hlf-original-diff-cta,
  .hlf-original-method-block {
    display: none !important;
  }

  /* Grid principale premium */
  .hlf-plan-premium-grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 30px;
    align-items: start;
  }

  .hlf-plan-premium-main {
    min-width: 0;
    width: 830px;
  }

  .hlf-plan-premium-main .hlf-title {
    margin-bottom: 14px;
  }

  .hlf-plan-premium-main .hlf-subcopy {
    max-width: 100%;
    min-width: 0;
    line-height: 1.4;
    margin-bottom: 20px;
  }

  .hlf-plan-premium-diff-title {
    margin-top: 42px;
  }

  .hlf-plan-premium-main .hlf-compare-wrap {
    margin-top: 10px;
    overflow: hidden;
    border-radius: 22px;
  }

  .hlf-plan-premium-main .hlf-compare {
    min-width: 0;
    width: 100%;
    table-layout: fixed;
  }

  .hlf-plan-premium-main .hlf-compare th,
  .hlf-plan-premium-main .hlf-compare td {
    font-size: 15px;
    line-height: 1.5;
    padding: 18px 16px;
  }

  .hlf-plan-premium-main .hlf-compare th {
    font-size: 16px;
  }

  /* Colonna destra */
  .hlf-plan-premium-side {
    position: sticky;
    top: 100px;
    align-self: start;
  }

  .hlf-plan-premium-side .hlf-plan-image {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 20px;
    border-radius: 24px;
    max-width: 273px;
  }

  /* Card destra tipo hero-card */
  .hlf-side-method-card {
    padding: 22px;
    border-radius: 24px;
  }

  .hlf-side-method-card .hlf-card-title {
    font-size: 28px;
    line-height: 1.08;
    margin-bottom: 18px;
  }

  .hlf-side-method-list {
    display: grid;
    gap: 14px;
  }

  .hlf-side-method-item {
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 16px 16px 14px;
    background: #fff;
  }

  .hlf-side-method-item h4 {
    margin: 0 0 6px;
    font-size: 18px;
    line-height: 1.2;
    color: var(--text);
  }

  .hlf-side-method-item p {
    margin: 0;
    font-size: 14px;
    line-height: 1.3;
    color: var(--text-soft);
  }

  /* CTA dentro la versione premium */
  .hlf-plan-premium-main .hlf-compare-cta {
    margin-top: 30px;
    text-align: center;
  }

  .hlf-plan-premium-main .hlf-compare-cta-text {
    max-width: 760px;
    margin: 0 auto 14px;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
    color: var(--text);
  }

  .hlf-plan-premium-main .hlf-compare-cta .hlf-btn-row {
    justify-content: center;
  }

  .hlf-plan-premium-main .hlf-compare-cta .hlf-btn {
    min-width: 260px;
  }

  .hlf-plan-premium-main .hlf-compare-cta .hlf-btn-microcopy {
    width: 100%;
    flex-basis: 100%;
    text-align: center;
  }

  /* Un po' più aria tra blocco verde e sezione premium */
  .hlf-section-tight + .hlf-plan-premium-desktop {
    padding-top: 10px;
  }
    .per-te {
    margin-top: -435px;
  }
  
  .hlf-grid-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}																																																																																																																												

aside.hlf-programmi-premium-side > div {margin-top:18px;}
section.hlf-section.hlf-final > div > div > a.hlf-btn.hlf-btn-secondary {order:4;}
section.hlf-section.hlf-final > div > div > p:nth-child(2) {order:2;}

@media (min-width: 1280px) {
	.hlf-box {
	justify-content: space-between;
    display: flex;
    flex-direction: column;}
    
	.hlf-programmi-premium-side {margin-top:-4px;}
	
	aside.hlf-programmi-premium-side > div {margin-top:0px;}
	aside.hlf-programmi-premium-side > div > p {margin-bottom:0px;}
	
	/* section.hlf-section.hlf-final > div > div > a.hlf-btn.hlf-btn-secondary {order:2;}*/
	section.hlf-section.hlf-final > div > div > p:nth-child(2) {order:3;}
	/* section.hlf-section.hlf-final > div > div > p:nth-child(3) {display:none;} */

section.hlf-section.hlf-final > div > div > p:nth-child(2),
section.hlf-section.hlf-final > div > div > p:nth-child(3) {
 	flex-basis: 100%;
 	} 
	
	.hlf-hero-grid {
    	grid-template-columns: 1.15fr 0.85fr;
    	gap: 30px;
  	}
  	.hlf-hero-grid > div:nth-child(1) {
  	    min-width: 830px;
  	 }
	.hlf-container {
        padding: 0 0 0 24px;
    }
    .hlf-hero-card {
	    min-width: 315px;
	    margin-top: -150px;
	}
    .hlf-section-image-hero {
    	min-width: 273px;
	}
	div.hlf-hero-card > div.hlf-btn-row,
	div.hlf-hero-card > p.hlf-form-note {
		display:none;
	}
	ul.hlf-mini-list-lead {
		margin-left:20px;
	}
	.hlf-method-item {
    	font-size: 16px;
	}
	.hlf-method-item-result {
    	transform: scale(1) !important;
    	padding: 10px 8px 10px 18px;
    	margin-bottom: 0px;
    	margin-top: 0px;
    }
    .hlf-method-plus, .hlf-method-eq {
    	width: 35px;
    	min-width: 35px;
    }
    .hlf-method-eq {
    	margin-left: -20px;
    	margin-right: 10px;
    } 
    .hlf-method-item-products, .hlf-method-item-coach {
    	margin-right:0px;
    }
	div.hlf-method-box > div > div:nth-child(2) {
    	margin-right:-17px;
    }
    .hlf-muted {
	    font-size: 0.9em;
	}
  .hlf-plan-hero .hlf-container {
    max-width: 1170px;
  }

  .hlf-plan-grid {
		grid-template-columns: 1.15fr 0.85fr;
        gap: 30px;
        align-items: flex-start;
  }

  .hlf-plan-copy {
    padding-right: 6px;
  }

  .hlf-plan-copy .hlf-title {
    margin-bottom: 18px;
  }

  .hlf-plan-copy .hlf-subcopy {
    font-size: 17px;
    line-height: 1.55;
    margin-bottom: 22px;
          min-width: 830px;
    }

  .hlf-plan-note {
    padding: 20px 22px;
  }
   .hlf-plan-media {
    	min-width: 315px;
	} 
 /* .hlf-plan-image {
    min-height: 560px;
    object-fit: cover;
    object-position: center;
  } */
  
  .differenza {margin-top:-230px;}
  
	.hlf-compare th {
    	width: 50%;
	}
	
	    .hlf-side-method-card {
        margin-top: -20px;
    }
}


/* =================================================================
   RICHIEDI CONSULENZA SOLO DESKTOP > 1280
================================================================= */

@media (min-width: 1280px) {

  #richiedi-consulenza {width:1170px;}

}

/* =================================================================
   MARATHON PREMIUM SOLO DESKTOP > 1280
================================================================= */

@media (min-width: 1280px) {

  .hlf-marathon-premium-desktop {
    display: block;
    padding-top: 46px;
    padding-bottom: 46px;
  }

  .hlf-original-marathon-block {
    display: none !important;
  }

  .hlf-marathon-premium-grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 30px;
    align-items: start;
  }

  .hlf-marathon-premium-main {
    min-width: 0;
    min-width: 830px;
  }

  .hlf-marathon-premium-main .hlf-subcopy {
    max-width: 100%;
    margin-bottom: 18px;
    line-height: 1.42;
  }

  .hlf-marathon-premium-steps {
    margin-top: 40px;
	gap:32px;
  }

  .hlf-marathon-premium-side {
    position: sticky;
    top: 100px;
    align-self: start;
    min-width: 315px;
  }

  .hlf-marathon-premium-image {
    width: 100%;
    display: block;
    margin-bottom: 20px;
    border-radius: 24px;
    max-width: 273px;
  }

  .hlf-marathon-side-boxes {
    padding: 22px;
    border-radius: 24px;
    grid-template-columns: 1fr;
    gap: 16px;
    background: #fff;
    border: 1px solid var(--border);
    
  }

  .hlf-marathon-side-boxes .hlf-box {
    border-radius: 18px;
  }

  .hlf-marathon-side-boxes .hlf-box h3 {
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 10px;
  }

  .hlf-marathon-side-boxes .hlf-list {
    margin-bottom: 0;
  }

  .hlf-marathon-side-boxes .hlf-list li {
    font-size: 15px;
    line-height: 1.3;
    margin-bottom: 10px;
  }
}

/* =================================================================
   FORM SOLO DESKTOP > 1280
================================================================= */

@media (min-width: 1280px) {

.hlf-form-kicker-icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #e8f5d8;
  color: #1B6B29;
  font-weight: 900;
	}
  .hlf-form-kicker {
  gap: 10px;
  font-size: 40px;
	}

}

/* =================================================================
   PROGRAMMI SOLO DESKTOP > 1280
================================================================= */

@media (min-width: 1280px) {

    .hlf-programmi-premium-grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 30px;
    align-items: start;
  }

  .hlf-programmi-premium-main {
    min-width: 0;
    min-width: 830px;
  }
.hlf-programmi-premium-side {
    position: relative;
    top: 162px;
    align-self: start;
    min-width: 315px;
  }

  .hlf-programmi-premium-image {
    width: 100%;
    display: block;
    margin-bottom: 20px;
    border-radius: 24px;
    max-width: 273px;
  }
  
  .button-programma {min-width:225px;}

}

/* =================================================================
   FINALE SOLO DESKTOP > 1280
================================================================= */

@media (min-width: 1280px) {

  .hlf-final {
  	width:1170px;
  }
  section.hlf-final > div.hlf-container {
  	width:800px;
  }
  
  .faq-desktop {width:1170px;}
  .cta-text-mobile {display:none;}
  .cta-text-desktop {display:block;}
  
}			