/* ===== ALAP RESET (csak ha nincs már) ===== */

.lp-section * {
  box-sizing: border-box;
}

/* ===== SECTION ===== */

.lp-section {
  /* Fent marad 100px, oldalt 0, alul pedig lecsökkentjük pl. 40px-re */
  padding: 100px 0 40px 0; 
  background: #ffffff;
}

.lp-section:first-of-type {
    padding-top: 0px !important; /* Itt állítsd be, mekkora legyen (pl. 60px a 100px helyett) */
}

.lp-section.alt {
  background: #f9faff;
}

/* ===== HERO FINOMÍTÁS ===== */

.lp-section.hero {
  padding: 120px 0 80px;
  background: linear-gradient(to bottom, #ffffff, #f5f5f5);
}


/* Alap ikon stílus */
.lp-card .icon {
  font-size: 1.3rem; /* Kicsit nagyobb, hogy hangsúlyos legyen */
  margin-bottom: 1.2rem;
  display: block;
}

/* Színek definiálása */
.icon-blue i { color: #3498db; }    /* Világoskék */
.icon-orange i { color: #f39c12; }  /* Narancssárga/Napfény */
.icon-green i { color: #27ae60; }   /* Smaragdzöld */
.icon-red i { color: #e74c3c; }     /* Puha piros */
.icon-blue i { color: #2980b9; } 

/* Ha szeretnél nekik egy kis árnyékot is, mint a képen: */
.lp-card .icon i {
  filter: drop-shadow(0 4px 6px rgba(0,0,0,0.15));
  font-size: 1.4rem; /* Itt állítsd be a végleges, kisebb méretet */
  transition: transform 0.3s ease; /* Egy kis extra: mozduljon meg, ha rásuhansz */
}

/* A kép tárolója, ami biztosítja a középre igazítást */
.hero-image-wrapper {
  text-align: center; /* Vízszintes középre igazítás */
  margin-top: 40px; /* Távolság a gomb aljától */
  margin-bottom: 20px; /* Távolság a szekció aljától */
}

/* A kép konkrét stílusa */
.hero-small-img {
  width: 1000px; /* Itt állítsd be a kívánt méretet (pl. 200px vagy 300px) */
  max-width: 80%; /* Mobilon ne legyen nagyobb a kijelző 80%-ánál */
  height: auto; /* Arányok megtartása */

  border-radius: 20px; /* Lekerekített sarkok (minél nagyobb a szám, annál kerekebb) */

  /* Opcionális: egy finom szegély vagy árnyék jól mutat a fehér háttéren */
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  display: inline-block; /* Biztosítja a korrekt igazítást */
}

/* Ez az osztály csak a szöveg alatti teret növeli meg */
.cta-spacer {
  margin-bottom: 50px !important;
}
/* ===== CONTAINER ===== */

.lp-container {
  max-width: 820px;
  margin: 0 auto;
  padding: 0 20px;
}

.lp-container-zajlik {
  width: 90%;          /* A képernyő 90%-át töltse ki */
  max-width: 1000px;   /* Az eddigi (pl. 1000px-1100px) helyett legyen 1400px */
  margin: 0 auto;      /* Maradjon középen */
}



/* ===== ALIGN ===== */

.center {
  text-align: center;
}

/* ===== EYEBROW ===== */

.lp-eyebrow {
  display: block;
  text-align: center;
  color: #d4a017;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 0.8rem;
  margin-bottom: 15px;
}

.lp-eyebrow {
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}




.faq-section {
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
}

.faq-container {
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
}

.faq-item {
  background: #ffffff;
  padding: 25px;
  margin-bottom: 20px;
  border-radius: 12px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.05);
  border-left: 5px solid #eee; /* Alap keret */
  transition: transform 0.2s ease;
}

.faq-item:hover {
  transform: translateY(-3px);


  .faq-item h3 i {
  margin-right: 12px;
  width: 25px;
  text-align: center;
}

}
.faq-question {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 10px;
}

.faq-question i {
  color: #467d9c;
  font-size: 1.2rem;
}

.faq-question h3 {
  margin: 0;
  font-size: 1.15rem;
  color: #2c3e50;
}

.faq-answer p {
  margin: 0;
  color: #555;
  line-height: 1.6;
  padding-left: 35px; /* Hogy az ikon alá ne lógjon be a szöveg */
}


.lp-intro-kinek {
    /* Szöveg igazítása középre */
    text-align: center;
    
    /* Margó: 60px fent (távolság a kártyáktól), 0 oldalt, 20px alul */
    margin: 60px auto 20px auto !important;
    
    /* Szélesség korlátozása, hogy ne nyúljon el túl hosszan */
    max-width: 600px;
    
    /* Betűstílus finomítása, hogy passzoljon a többi intro szöveghez */
    font-size: 1.1rem;
    color: #555;
    line-height: 1.6;
    font-weight: 500;
    
    /* Biztosítjuk, hogy ne vegye át a grid tulajdonságait */
    display: block; 
    clear: both;
}

/* Mobil nézethez igazítás */
@media (max-width: 768px) {
    .lp-intro-kinek {
        margin-top: 40px !important;
        font-size: 1.1rem;
        padding: 0 20px;
    }
}


/* ===== HEADINGS ===== */

.lp-section h1 {
  font-size: 2.6rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.lp-section h2 {
  font-size: 2rem;
  margin-bottom: 25px;
  font-weight: 600;
}

.lp-section h3 {
  font-size: 1.1rem;
  margin-bottom: 8px;
  font-weight: 600;
}

/* ===== TEXT ===== */

.lp-intro {
  font-size: 1.15rem;
  color: #555;
  line-height: 1.7;
  margin-bottom: 30px;
}

.lp-section p {
  color: #555;
  line-height: 1.6;
}

/* ===== CONTENT BLOCK ===== */

.lp-content {
  margin-top: 25px;
}

/* ===== LISTÁK ===== */

.lp-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.lp-content li {
  margin-bottom: 14px;
  font-size: 1.05rem;
  color: #333;
}

/* ===== FINOM SPACING ===== */



.cta-final .lp-intro {
  margin-bottom: 50px;
}

.final-cta .lp-intro {
  margin-bottom: 35px;
}
/* ===== FAQ ===== */



.faq-item p {
  margin: 0;
  line-height: 1.6;
  color: #555;
  padding-left: 37px; /* Az ikon szélességéhez igazítva */
}



/* Egyedi színek hozzárendelése */
/* 1. Zoom - Kék */

.faq-item.zoom h3 i { color: #3498db; }

/* 2. Szint - Zöld */

.faq-item.level h3 i { color: #27ae60; }

/* 3. Időpont - Sárga */

.faq-item.timing h3 i { color: #f39c12; }

/* 4. Kamera - Piros */

.faq-item.camera h3 i { color: #e74c3c; }



/* Mobilos nézet */
@media (max-width: 768px) {
  .faq-item p {
    padding-left: 0;
  }
  .faq-item h3 {
    font-size: 1.1rem;
  }
}
/* ===== SZEKCIÓK KÖZTI RITMUS ===== */

.lp-section + .lp-section {
  border-top: 1px solid #eee;
}

/* ===== GRID ===== */

.lp-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px;
  margin-top: 50px;
}

.lp-grid-zajlik {
  display: grid;
  /* Asztali gépen 4 egyenlő oszlop */
  grid-template-columns: repeat(4, 1fr); 
  gap: 20px; /* Távolság a kártyák között */
  margin-top: 40px;
}



/* ===== CARD ===== */

.lp-card {
  background: linear-gradient(145deg, #ffffff, #f9f9f9);
  padding: 25px;
  border-radius: 16px;
  text-align: left;
  border: 1px solid #eee;
  transition: all 0.25s ease;
}

/* ===== HOVER ===== */

.lp-card:hover {
  transform: none; /* Kikapcsolja az esetleges korábbi mozgást */
  border-color: #d4af37; /* Elegáns arany szín */
  box-shadow: 0 6px 20px rgba(212, 175, 55, 0.2); /* Opcionális: finom aranyos ragyogás */
}
/* ===== TITLE ROW ===== */

.lp-card-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

/* ===== ICON ===== */

.lp-card-title i {
  font-size: 1.2rem;
  color: #c89b3c; /* arany */
}

/* ===== TITLE ===== */

.lp-card h3 {
  font-size: 1.1rem;
  margin: 0;
  font-weight: 600;
}

/* ===== TEXT ===== */

.lp-card p {
  font-size: 0.95rem;
  color: #555;
  line-height: 1.6;
  margin: 0;
}



.flex-row {
  display: flex;
  align-items: center;
  gap: 60px; /* Nagyobb távolság, hogy szellős legyen */
  text-align: left; /* Itt nem középre zárunk! */
}

.feature-item {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 25px;
}

.feature-item i {
  margin-top: 5px;
  font-size: 1.2rem;
}

.experience-image-placeholder {
  background: #fff;
  border-radius: 50px; /* Lekerekített, barátságos forma */
  padding: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}

.center {
  text-align: center;
 
}

/* Konténer és fejlécek */
.section-header {
    margin-bottom: 50px;
}

.main-content {
    margin-bottom: 40px;
    align-items: center;
    display: flex; /* Ha a flex-row osztályodban még nincs benne */
}

/* Kép formázása */
.promo-image {
    width: 100%;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: block;
}

/* Alsó szöveges rész */
.section-footer {
    margin-top: 40px;
}

.footer-text {
    max-width: 600px;
    margin: 0 auto 50px auto;
    font-size: 1.1rem;
    line-height: 1.6;
}

/* Ikon színek (példa, ha még nincsenek definiálva) */
.icon-green { color: #28a745; }
.icon-blue { color: #007bff; }
.icon-orange { color: #fd7e14; }


.final-cta {
  background: linear-gradient(180deg, #ffffff, #f8f8f8);
}

.final-cta .lp-container {
  max-width: 600px;
}

/* NOTE */

.cta-note {
  margin-top: 12px;
  font-size: 0.9rem;
  color: #777;
}

/* SPACING */

.final-cta .cta-button {
  margin-top: 30px;
  margin-bottom: 40px;
}

.cta-note {
  margin-top: 50px;
}



/* ===== PRICING WRAPPER ===== */

.pricing-wrapper {
   
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: stretch; /* EZ teszi egyforma magasra */
  margin: 50px 0;
  flex-wrap: nowrap;
}

/* ===== CARD ===== */

.price-card {
  background: linear-gradient(145deg, #ffffff, #f9f9f9);
  border: 1px solid #757575; /* vékony szürke */
  border-radius: 18px;
  padding: 35px 30px;
  width: 260px;
position: relative;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* EZ egyforma magasság miatt */

  transition: all 0.25s ease;
}

/* ===== HOVER ===== */

.price-card:hover {
  border-color: #d4af37; /* arany */
  box-shadow: 0 8px 25px rgba(212, 175, 55, 0.2);
  transform: translateY(-3px);
}

.price-card.featured:hover {
  border-color: #d4af37; /* arany */
  box-shadow: 0 8px 25px rgba(212, 175, 55, 0.2);
  transform: translateY(-3px);
}
/* ===== KIEMELT ===== */

.price-card.featured {
  border: 1px solid #757575;
  transform: none; /* EZ FONTOS */
}

/* ===== BADGE ===== */

.badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: #28A745;
  color: #fff;
  font-size: 0.75rem;
  padding: 5px 12px;
  border-radius: 20px;
  font-weight: 600;
}

.price-card.featured:hover .badge {
  opacity: 1;
}



.schedule-box {
    margin: 40px auto;
    max-width: 650px;
    background: transparent; /* Elhagyjuk a belső fehér hátteret */
    box-shadow: none;
    border: none;
}
.schedule-main-time {
    font-size: 1.2rem;
    color: #2c3e50;
    font-weight: 600;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee; /* Csak egy vékony elválasztó alul */
}

.schedule-main-time span {
    display: block;
    font-size: 2.8rem !important; /* Még nagyobb óra */
    letter-spacing: -1px;
    margin-top: 5px;
}

.schedule-dates-container {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.schedule-box i {
  color: #c89b3c; /* arany */
  margin-right: 8px;
}

.schedule-box p {
  margin: 5px 0;
  color: #444;
}

.semester-card {
    background: #fff;
    padding: 20px;
    border-radius: 12px;
    border: 1px solid #efefef;
    flex: 1;
    transition: all 0.3s ease;
}

.semester-card:hover {
    border-color: #d4af37;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.semester-title {
    display: block;
    font-size: 0.8rem;
    text-transform: uppercase;
    color: #d4af37;
    font-weight: 700;
    margin-bottom: 8px;
}

.semester-range {
    font-size: 1rem;
    color: #444;
    font-family: inherit; /* Ne legyen írógép stílus, ha az nem tetszik */
}

/* Mobilnézet: egymás alá ugorjanak a félévek */
@media (max-width: 600px) {
    .schedule-dates-container {
        flex-direction: column;
    }
}

.schedule-dates {
    display: inline-block;
    background: #fdfaf0;
    padding: 15px 25px;
    border-radius: 10px;
    color: #555;
    font-family: monospace; /* Ettől naptár-szerűbb érzete lesz */
    font-size: 1rem !important;
    line-height: 1.8;
}

.schedule-box::before {
    content: "IDŐPONT ÉS IDŐTARTAM";
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: #d4af37;
    color: white;
    padding: 2px 15px;
    font-size: 0.7rem;
    font-weight: 700;
    border-radius: 5px;
    letter-spacing: 1px;
}

/* ===== TITLE ===== */

.price-card h3 {
  font-size: 1.2rem;
  margin-bottom: 10px;
}

/* ===== PRICE ===== */

.price {
  font-size: 1.8rem;
  font-weight: 700;
  color: #2c3e50;
  margin: 10px 0;
}

/* ===== DESC ===== */

.price-desc {
    min-height: 50px;
  font-size: 0.95rem;
  color: #666;
}

.lp-section.pricing {
  background:  #eff4f7, 
}


/* ===== IDŐPONT SZEKCIÓ EGYEDI STÍLUSA ===== */

/* 1. A teljes szekció háttere (Meleg krémszín) */
.schedule-bg {
    background-color: #fffefd !important; /* Finom pezsgőszín */
    border-top: 1px solid #f0e6d2;
    border-bottom: 1px solid #f0e6d2;
}

/* 2. Központi időpont tartó */
.schedule-box {
    margin: 40px auto;
    max-width: 700px;
}

/* 3. A nagy óra és nap stílusa */
.schedule-main-time {
    margin-bottom: 40px;
    color: #34495e; /* Selymes sötétszürke */
    font-size: 1.1rem;
    font-weight: 600;
}

.schedule-main-time i {
    color: #d4af37; /* Arany ikon */
    display: block;
    font-size: 2rem;
    margin-bottom: 15px;
}

.schedule-main-time span {
    display: block;
    font-size: 3rem; /* Extra nagy méret a hangsúlyhoz */
    color: #2c3e50;
    font-weight: 800;
    letter-spacing: -1px;
    margin-top: 5px;
}

/* 4. A két félév kártyái */
.schedule-dates-container {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-bottom: 30px;
}

.semester-card {
    background: #ffffff; /* Hófehér kártya, hogy elváljon a bézstől */
    padding: 25px 20px;
    border-radius: 16px;
    border: 1px solid #e8e0cc;
    flex: 1;
    box-shadow: 0 10px 30px rgba(212, 175, 55, 0.08); /* Nagyon enyhe aranyos ragyogás */
    transition: transform 0.3s ease;
}

.semester-card:hover {
    transform: translateY(-5px);
    border-color: #d4af37;
}

/* 5. Szövegek a kártyán belül */
.semester-title {
    display: block;
    color: #b8922e; /* Sötétebb arany az olvashatóságért */
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
}

.semester-range {
    display: block;
    color: #4a4a4a;
    font-size: 1.05rem;
    font-weight: 500;
}





/* ===== TESTIMONIAL SECTION ===== */

.social-proof {
  margin-top: 10px;
  font-size: 0.95rem;
  opacity: 0.8;
}

/* Grid finomhangolás */
.lp-section .lp-grid {
  margin-top: 40px;
}

/* Testimonial kártya */
.lp-card {
  position: relative;
  text-align: left;
  padding: 25px 25px 20px;
  transition: all 0.25s ease;
}

/* Idézőjel dekor */
.lp-card::before {
  content: "“";
  position: absolute;
  top: 10px;
  left: 15px;
  font-size: 3rem;
  opacity: 0.08;
  font-family: serif;
}

/* Szöveg */
.lp-card p {
  font-size: 0.95rem;
  line-height: 1.6;
  margin-bottom: 15px;
}

/* Név */
.lp-card strong {
  display: block;
  font-size: 0.9rem;
  opacity: 0.7;
}

/* Hover (finom, nem agresszív) */
.lp-card:hover {
  transform: translateY(-4px);
}

/* ===== GRID RESPONSIVE ===== */

/* Desktop: 2x2 */
.lp-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px;
}


.hero-proof {
  margin-top: 55px !important;
  font-size: 0.9rem;
  opacity: 0.8;
}

.hero-testimonial {
  margin-top: 10px;
  font-size: 0.95rem;
  font-style: italic;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.hero-testimonial span {
  display: block;
  margin-top: 5px;
  font-size: 0.85rem;
  opacity: 0.7;
}



.mini-proof {
  padding-top: 40px;
  padding-bottom: 10px;
}



.mini-author {
  font-size: 0.85rem;
  opacity: 0.7;
}
















/* ===== MINI PROOF / TESTIMONIAL QUOTE FINOMÍTÁS ===== */
/* ===== TESTIMONIAL QUOTE FINOMÍTÁS ===== */

.testimonial-quote {
  /* Nagyon halvány krém háttér, mint a naptár szekciójánál */
  background-color: #fdfaf5 !important; 
  /* Mérsékelt padding, hogy ne legyen túl üres */
  padding: 10px 20px !important;
  border-top: 1px solid #f2e9d8;
  border-bottom: 1px solid #f2e9d8;
}

.quote-wrapper {
  /* Szűkebb konténer, hogy az idézet ne nyúljon el a képernyő széléig */
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
}

.quote-icon {
  font-size: 1.6rem; /* Visszafogott méretű ikon */
  color: #d4af37; 
  opacity: 0.25;
  margin-bottom: 15px;
  display: block;
}

.mini-testimonial {
  font-family: 'Montserrat', sans-serif;
  /* 1.1rem: elegáns, olvasható, de nem uralkodik el a képernyőn */
  font-size: 0.95rem !important;
  line-height: 1.6 !important;

  color: #555;
  margin-bottom: 20px !important;
  font-weight: 400;
}

.quote-author {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.dash {
  width: 25px; /* Rövid arany vonal a név előtt */
  height: 1px;
  background-color: #d4af37;
}

.author-name {
  font-weight: 700;
  color: #2c3e50;
 
  letter-spacing: 1px;
  font-size: 0.8rem;
}











/* Mobil optimalizálás */
@media (max-width: 768px) {
  .testimonial-quote {
    padding: 40px 20px !important;
  }
  .mini-testimonial {
    font-size: 1rem !important;
  }
}
/* 6. Mobil nézet optimalizálás */
@media (max-width: 600px) {
    .schedule-dates-container {
        flex-direction: column;
        padding: 0 20px;
    }
    
    .schedule-main-time span {
        font-size: 2.2rem;
    }
}


/* ===== MOBILE ===== */

@media (max-width: 768px) {
  .pricing-wrapper {
    flex-direction: column;
    align-items: center;
  }

  .price-card.featured {
    transform: none;
  }
}



@media (max-width: 768px) {
  .flex-row { flex-direction: column; text-align: center; }
  .feature-item { flex-direction: column; align-items: center; }
}





/* ===== MOBILE ===== */

@media (max-width: 768px) {
  .lp-grid {
    grid-template-columns: 1fr;
  }

  .lp-card {
    padding: 20px;
  }

.lp-grid-zajlik {
    grid-template-columns: 1fr;
  }

}

/* ===== MOBILE ===== */

@media (max-width: 768px) {
  .lp-section {
    padding: 70px 0;
  }

  .lp-section.hero {
    padding: 90px 0 60px;
  }

  .lp-section h1 {
    font-size: 2rem;
  }

  .lp-section h2 {
    font-size: 1.6rem;
  }

  .lp-intro {
    font-size: 1rem;
  }

  .lp-content li {
    font-size: 1rem;
  }
}

/* ===== EXTRA: SZÉP FINOM FADE-IN (opcionális) ===== */

.lp-section {
  animation: fadeIn 0.6s ease;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
