/* =========================
   AJÁNLATKÉRÉS – modern premium
   ========================= */
.lead-hero{ padding: 14px 0 10px; }
.lead-hero__box{ padding: 16px; border-radius: 22px; }
.lead-hero__badge{
  display:inline-flex;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: rgba(245,238,220,.88);
  font-size: 12px;
  letter-spacing: .35px;
}
.lead-hero__title{
  margin: 10px 0 6px;
  color: rgba(245,238,220,.96);
  font-size: 26px;
  line-height: 1.15;
}
.lead-hero__lead{
  margin: 0 0 12px;
  color: rgba(234,240,246,.72);
  line-height: 1.6;
  font-size: 14px;
}
.lead-hero__trust{ display:flex; gap:10px; flex-wrap:wrap; }

/* Layout */
.lead{ padding: 10px 0 26px; }
.lead__grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 14px;
  align-items: start;
}

.lead-card{ padding: 16px; border-radius: 22px; }
.lead-card__head{ margin-bottom: 12px; }
.lead-card__title{
  margin: 0 0 4px;
  color: rgba(245,238,220,.96);
  font-size: 18px;
}
.lead-card__sub{
  margin: 0;
  color: rgba(234,240,246,.66);
  font-size: 13px;
  line-height: 1.55;
}

/* Form */
.lead-form__grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.field--full{ grid-column: 1 / -1; }

.field span{
  display:block;
  font-size: 12px;
  color: rgba(234,240,246,.75);
  margin-bottom: 6px;
}

.field input, .field select, .field textarea{
  width: 100%;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(11,15,20,.55);
  color: rgba(245,238,220,.92);
  outline: none;
  transition: border-color .14s ease, box-shadow .14s ease, transform .14s ease;
}

.field textarea{ resize: vertical; }

.field input:focus, .field select:focus, .field textarea:focus{
  border-color: rgba(198,90,46,.55);
  box-shadow: 0 0 0 3px rgba(198,90,46,.18);
}

.field input:hover, .field select:hover, .field textarea:hover{
  transform: translateY(-1px);
}

.field__hint{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 8px;
  color: rgba(234,240,246,.60);
  font-size: 12.5px;
}

/* Actions */
.lead-form__actions{
  margin-top: 6px;
  display:grid;
  gap: 10px;
}
.lead-form__submit{
  width: 100%;
  justify-content: center;
  padding: 14px 14px;
  border-radius: 18px;
}
.lead-form__call{
  width: 100%;
  justify-content: center;
  border-radius: 18px;
}
.lead-form__fine{
  margin: 0;
  color: rgba(234,240,246,.55);
  font-size: 12px;
  line-height: 1.5;
}

/* Side */
.lead-side{ padding: 16px; border-radius: 22px; position: sticky; top: 92px; }
.lead-side__badge{
  display:inline-flex;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: rgba(245,238,220,.88);
  font-size: 12px;
  letter-spacing: .35px;
}
.lead-steps{
  margin: 12px 0 12px;
  padding-left: 18px;
  color: rgba(234,240,246,.72);
  line-height: 1.7;
  font-size: 13.5px;
}
.lead-side__box{
  margin-top: 10px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}
.lead-side__k{
  color: rgba(245,238,220,.92);
  font-weight: 800;
  letter-spacing: .25px;
  font-size: 13px;
  margin-bottom: 6px;
}
.lead-side__p{
  margin: 0;
  color: rgba(234,240,246,.72);
  line-height: 1.6;
  font-size: 13.5px;
}
.lead-side__contact a{
  color: rgba(245,238,220,.92);
  text-decoration: none;
}
.lead-side__contact a:hover{ text-decoration: underline; }

/* Mobile */
@media (max-width: 980px){
  .lead__grid{ grid-template-columns: 1fr; }
  .lead-form__grid{ grid-template-columns: 1fr; }
  .lead-side{ position: static; }
}


/* =========================
   AJÁNLATKÉRÉS – modern premium
   ========================= */
.lead-hero{ padding: 14px 0 10px; }
.lead-hero__box{ padding: 16px; border-radius: 22px; }
.lead-hero__badge{
  display:inline-flex;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: rgba(245,238,220,.88);
  font-size: 12px;
  letter-spacing: .35px;
}
.lead-hero__title{
  margin: 10px 0 6px;
  color: rgba(245,238,220,.96);
  font-size: 26px;
  line-height: 1.15;
}
.lead-hero__lead{
  margin: 0 0 12px;
  color: rgba(234,240,246,.72);
  line-height: 1.6;
  font-size: 14px;
}
.lead-hero__trust{ display:flex; gap:10px; flex-wrap:wrap; }


/* =========================
   Kalkulátor infó – prémium kártya
   ========================= */
.calc-info{ padding: 8px 0 12px; }

.calc-info__box{
  padding: 16px;
  border-radius: 22px;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 14px;
  align-items: start;
  overflow: hidden;
  position: relative;
}

/* finom prémium perem */
.calc-info__box::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg,
    rgba(255,255,255,0),
    rgba(255,255,255,.18),
    rgba(198,90,46,.20),
    rgba(255,255,255,0)
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: .7;
  pointer-events:none;
}

.calc-info__kicker{
  display:inline-flex;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.10);
  color: rgba(245,238,220,.82);
  font-size: 12px;
  letter-spacing: .6px;
}

.calc-info__title{
  margin: 10px 0 6px;
  color: rgba(245,238,220,.96);
  font-size: 18px;
  line-height: 1.2;
}

.calc-info__text{
  margin: 0 0 8px;
  color: rgba(234,240,246,.72);
  line-height: 1.65;
  font-size: 14px;
}

.calc-info__muted{
  margin: 0;
  color: rgba(234,240,246,.60);
  font-size: 13px;
  line-height: 1.55;
}

.calc-info__actions{
  margin-top: 12px;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}

.calc-info__ghost{
  background: rgba(255,255,255,.05);
  border-color: rgba(255,255,255,.14);
}

.calc-info__list{
  margin: 0;
  padding-left: 18px;
  color: rgba(234,240,246,.72);
  line-height: 1.65;
  font-size: 13.5px;
}

.calc-info__note{
  margin-top: 10px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: rgba(245,238,220,.80);
  font-size: 13px;
  line-height: 1.55;
}

/* Hover finomság */
.calc-info__box{
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.calc-info__box:hover{
  transform: translateY(-2px);
  border-color: rgba(198,90,46,.22);
  box-shadow: 0 18px 46px rgba(0,0,0,.35);
}


/* =========================
   Layout + Form
   ========================= */
.lead{ padding: 10px 0 26px; }

.lead__grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 14px;
  align-items: start;
}

.lead-card{ padding: 16px; border-radius: 22px; }
.lead-card__head{ margin-bottom: 12px; }
.lead-card__title{
  margin: 0 0 4px;
  color: rgba(245,238,220,.96);
  font-size: 18px;
}
.lead-card__sub{
  margin: 0;
  color: rgba(234,240,246,.66);
  font-size: 13px;
  line-height: 1.55;
}

.lead-form__grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.field--full{ grid-column: 1 / -1; }

.field span{
  display:block;
  font-size: 12px;
  color: rgba(234,240,246,.75);
  margin-bottom: 6px;
}

.field input, .field select, .field textarea{
  width: 100%;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(11,15,20,.55);
  color: rgba(245,238,220,.92);
  outline: none;
  transition: border-color .14s ease, box-shadow .14s ease, transform .14s ease;
}

.field textarea{ resize: vertical; }

.field input:focus, .field select:focus, .field textarea:focus{
  border-color: rgba(198,90,46,.55);
  box-shadow: 0 0 0 3px rgba(198,90,46,.18);
}

.field input:hover, .field select:hover, .field textarea:hover{
  transform: translateY(-1px);
}

.field__hint{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 8px;
  color: rgba(234,240,246,.60);
  font-size: 12.5px;
}

.lead-form__actions{
  margin-top: 6px;
  display:grid;
  gap: 10px;
}
.lead-form__submit{
  width: 100%;
  justify-content: center;
  padding: 14px 14px;
  border-radius: 18px;
}
.lead-form__call{
  width: 100%;
  justify-content: center;
  border-radius: 18px;
}
.lead-form__fine{
  margin: 0;
  color: rgba(234,240,246,.55);
  font-size: 12px;
  line-height: 1.5;
}

/* Side */
.lead-side{ padding: 16px; border-radius: 22px; position: sticky; top: 92px; }
.lead-side__badge{
  display:inline-flex;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: rgba(245,238,220,.88);
  font-size: 12px;
  letter-spacing: .35px;
}
.lead-steps{
  margin: 12px 0 12px;
  padding-left: 18px;
  color: rgba(234,240,246,.72);
  line-height: 1.7;
  font-size: 13.5px;
}
.lead-side__box{
  margin-top: 10px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}
.lead-side__k{
  color: rgba(245,238,220,.92);
  font-weight: 800;
  letter-spacing: .25px;
  font-size: 13px;
  margin-bottom: 6px;
}
.lead-side__p{
  margin: 0;
  color: rgba(234,240,246,.72);
  line-height: 1.6;
  font-size: 13.5px;
}
.lead-side__contact a{
  color: rgba(245,238,220,.92);
  text-decoration: none;
}
.lead-side__contact a:hover{ text-decoration: underline; }

/* Mobile */
@media (max-width: 980px){
  .calc-info__box{ grid-template-columns: 1fr; }
  .lead__grid{ grid-template-columns: 1fr; }
  .lead-form__grid{ grid-template-columns: 1fr; }
  .lead-side{ position: static; }
}


/* =========================
   CONSENT (ÁSZF + GDPR) – prémium checkbox blokk
   ========================= */
.consent{
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}

.consent__row{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  margin: 0;
  cursor: pointer;
}

.consent__row input{
  margin-top: 3px;
  width: 18px;
  height: 18px;
  accent-color: rgba(198,90,46,.95);
}

.consent__text{
  color: rgba(234,240,246,.78);
  font-size: 13.5px;
  line-height: 1.55;
}

.consent__link{
  appearance: none;
  border: 0;
  background: transparent;
  color: rgba(245,238,220,.92);
  font-weight: 800;
  padding: 0 2px;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.consent__link:hover{
  color: #fff;
}

.consent__error{
  margin-top: 8px;
  color: rgba(255,120,120,.95);
  font-size: 12.5px;
}

/* disabled gomb finom */
#submitBtn[disabled]{
  opacity: .55;
  filter: saturate(.85);
  transform: none !important;
  box-shadow: none !important;
  cursor: not-allowed;
}
