/* ===== 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 h2 {
    margin-bottom: 80px !important; /* Kényszerítjük a 80px távolságot a cím és a tartalom közé */
    display: block;
    width: 100%;
}


.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;
}



/* Szekció és háttér */
.lp-section.pricing {
    background: linear-gradient(180deg, #fdfaf5 0%, #eff4f7 100%);
}

/* Kártya elrendezése */
.price-card.featured {
    margin: 0 auto;
    max-width: 500px;
}

/* Garancia ikon színe */
.guarantee-highlight i.fa-shield-alt {
    color: #27ae60;
}

/* Ha a többi osztályhoz (pl. lp-container, price-label) 
   még nincsenek stílusaid, itt az alap formázásuk: */

.lp-container.center {
    text-align: center;
}

.price-label {
    display: block;
    margin-bottom: 5px;
}

.price-value {
    display: block;
    font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 20px;
}

.guarantee-subtext {
    font-size: 0.9rem;
    opacity: 0.8;
}

.cta-button.large {
    display: inline-block;
    padding: 15px 30px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 5px;
}

.small-note {
    font-size: 0.8rem;
    margin-top: 15px;
}






/* ===== 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: 320px;
  min-height: 520px;
position: relative;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* EZ egyforma magasság miatt */

  transition: all 0.25s ease;
}

.fa-certificate {
    color: #27ae60; /* Marketing szempontból a zöld bizalmat épít */
    filter: drop-shadow(0 2px 4px rgba(40, 167, 69, 0.2));
}

/* Tanúsítvány pecsét ikon színe */
.certificate-icon {
    color: #27ae60;
    margin-right: 10px;
}

/* Elégedettségi garancia stílusa az ár alatt */
.guarantee-text {
    font-size: 0.85rem;
    color: #777;
    margin-top: 5px;
    font-style: italic;
    margin-bottom: 0;
}

/* Árkártya belső elrendezése */
.price-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 480px; /* Itt tudod finomhangolni a magasságot */
    padding: 50px 30px 40px;
}

/* Sürgető üzenet stílusa - zöld háttér nélkül, ahogy kérted */
.urgency-note.success-note {
    background: transparent !important;
    border: none !important;
    color: #000000 !important;
    padding: 0 !important;
    margin: 25px 0;
    text-align: left; /* Közép helyett balra zárjuk az egészet */
    line-height: 1.5;
    display: block;   /* Biztosítjuk, hogy tiszta lappal indulunk */
}

.urgency-note.success-note i {
    color: #27ae60 !important;
    display: inline-block;    /* Ez teszi lehetővé, hogy mellé kerüljön a szöveg */
    vertical-align: top;      /* Az első sor tetejéhez igazítja az ikont */
    margin-right: 10px;       /* Távolság a szövegtől */
    margin-top: 5px;          /* Finomhangolás felülről */
    font-size: 1.2rem;
}



/* A zöld, kiemelt garancia */
.guarantee-highlight {
  color: #000000 !important;
    font-weight: 500;
    font-size: 0.rem;
    margin-top: 8px;
    margin-bottom: 1px;
}

/* A normál kiegészítő szöveg alatta */
.guarantee-subtext {
    color: #27ae60; /* Visszafogott szürke */
    font-size: 0.8rem;
    font-weight: normal;
    font-style: normal; /* Itt már nem kell dőltnek lennie, hogy "normál" maradjon */
    margin-top: 0;
}

/* Az árkártya belső elrendezésénél figyelj, hogy ne legyen túl nagy a rés */
.price-section {
    margin-bottom: 15px;
}

/* Kép és szöveg közötti rács (desktopon) */
@media (min-width: 769px) {
    .details-grid {
        display: grid;
        grid-template-columns: 1.2fr 0.8fr; /* A bal oldal kicsit szélesebb */
        gap: 60px;
        align-items: start;
    }
}

/* ===== 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: #e74c3c;
  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: 20px;
  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;
}













/* Alapbeállítások és színek */
:root {
  --primary-gold: #c59d2a;
  --secondary-gold: #e2b740;
  --light-bg: #f9fbfb;
  --text-dark: #333;
  --text-muted: #777;
  --promo-red: #e74c3c;
  --card-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.lp-section.bg-highlight {
  background-color: var(--light-bg);
  padding: 80px 20px;
  font-family: 'Montserrat', sans-serif; /* Vagy hasonló sans-serif font */
}

.lp-container {
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
}

.lp-eyebrow {
  color: var(--primary-gold);
  font-weight: 600;
  letter-spacing: 2px;
  font-size: 14px;
  text-transform: uppercase;
}

h2 {
  font-size: 32px;
  margin: 15px 0 50px;
  color: var(--text-dark);
}

/* Elrendezés (Grid) */
.details-grid {
  display: grid;
  grid-template-columns: 1fr 1fr; /* vagy amit korábban beállítottál */
  gap: 40px;
  
  /* --- EZT ADD HOZZÁ --- */
  align-items: center; 
}

.details-info {
  /* Itt biztosítjuk, hogy a belső elemek ne középre, hanem balra tartsanak */
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* Balra igazítja az elemeket a flexboxon belül */
}

.info-item {
  display: flex;
  align-items: flex-start; /* Az ikon és a szöveg teteje egy vonalba kerül */
  text-align: left;        /* A szöveg belső igazítása balra */
  margin-bottom: 25px;
}

.info-item i {
  color: var(--primary-gold);
  font-size: 24px;
  margin-right: 20px;
  margin-top: 5px;
}

.info-item strong {
  display: block;
  font-size: 18px;
  margin-bottom: 5px;
}

.includes-box {
    background: #ffffff;
    padding: 35px;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    max-width: 500px; /* Megakadályozza, hogy túl széles legyen */
    text-align: left; /* A cím és a tartalom balra zárt lesz */
}

.includes-box h3 {
  margin-top: 0;
  font-size: 20px;
  margin-bottom: 20px;
}

.lp-list {
  list-style: none;
  padding: 0;
}

.lp-list li {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  font-size: 15px;
}

.lp-list i {
  color: #2ecc71; /* Zöld pipa */
  margin-right: 12px;
}

/* Jobb oldali árkártya */
.price-card {
  background: white;
  padding: 60px 40px 40px;
  border-radius: 20px;
  box-shadow: var(--card-shadow);
  position: relative;
  text-align: center;
  width: 100%;           /* Hogy mobilra is jó legyen */
  max-width: 450px;      /* Ez az a szélesség, amit a képen láttál az eredetin */
  margin: 0 auto;        /* Hogy középen maradjon, ha a tárolója engedi */
}

.promo-badge {
  position: absolute;
  top: -15px;
  right: 70px;
    background: #22c55e;
  color: white;
  padding: 8px 20px;
  font-weight: bold;
  font-size: 14px;
  border-radius: 20px;
  box-shadow: 0 4px 10px rgba(34, 197, 94, 0.3);
}

.price-label {
  display: block;
  color: var(--text-muted);
  margin-bottom: 15px;
}

.price-value {
  display: block;
  font-size: 56px;
  font-weight: 800;
  color: var(--text-dark);
  margin-bottom: 10px;
}

.normal-price {
  color: #bbb;
  text-decoration: line-through;
  margin-bottom: 30px;
}

.payment-terms {
  background: #f9f9f9;
  padding: 20px;
  border-radius: 10px;
  margin-bottom: 30px;
}

.small-note {
  font-size: 12px;
  color: var(--text-muted);
  margin-top: 10px;
  line-height: 1.4;
}

.urgency-note {
  color: #d35400;
  font-weight: 500;
  font-size: 16px;
  margin-top: 50px;
  margin-bottom: 100px;
  line-height: 1.5;
}

.urgency-note i {
  margin-right: 5px;
}


/* Zöld verzió az urgency-note-hoz */
.urgency-note.success-note {
    color: #27ae60 !important; /* Szép smaragdzöld */
    background-color: #f2faf5; /* Nagyon halvány zöld háttér, hogy kiemelkedjen */
    padding: 15px;
    border-radius: 10px;
    border: 1px solid #d4efdf;
    font-weight: 500;
    margin-top: 30px;
    margin-bottom: 30px;
    line-height: 1.5;
    text-align: center;
  
}


/* Zöld verzió az urgency-note-hoz */
.urgency-note.success-note {
    /* Töröljük a hátteret és a keretet */
    background-color: transparent !important; 
    border: none !important;
    padding: 0 !important;
    
    /* Marad a zöld szöveg */
    color: #000000 !important; 
    font-weight: 600;
    margin-top: 30px;
    margin-bottom: 30px;
    line-height: 1.5;
    text-align: center;
}

.urgency-note.success-note i {
    color: #000000;
    margin-right: 8px;
}

.urgency-note.success-note i {

    margin-right: 8px;
    font-size: 1.1rem;
}

/* Gomb stílusa */
.cta-button.large {
  display: inline-block;
  background: var(--secondary-gold);
  color: white;
  padding: 18px 40px;
  border-radius: 50px;
  text-decoration: none;
  font-weight: bold;
  font-size: 18px;
  transition: transform 0.2s, background 0.2s;
  box-shadow: 0 10px 20px rgba(226, 183, 64, 0.3);
}

.cta-button.large:hover {
  background: var(--primary-gold);
  transform: translateY(-2px);
}






/* --- OKTATÓI PROFIL SZEKCIÓ TELJES CSS --- */

.instructor-profile {
  padding: 80px 4%;
  background-color: #fff;
}

.profile-grid {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  /* Két oszlopos elrendezés */
  grid-template-columns: 0.9fr 1.1fr; 
  gap: 40px;
  align-items: center;
}

/* EZ A TRÜKK: A fejléc elfoglalja mindkét oszlopot, így az oldal közepére kerül */
.profile-header-full {
  grid-column: 1 / -1; 
  text-align: center;
  margin-bottom: 40px;
}

.top-label {
  display: block;
  text-transform: uppercase;
  color: #d4a017;
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 2px;
  margin-bottom: 10px;
}

.profile-header-full h2 {
  font-size: 2.8rem;
  color: #222;
  margin: 0;
}

/* Bal oldal: Kép */
.profile-image-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.profile-img {
  width: 100%;
  max-width: 400px;
  border-radius: 15px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.official-badge-under-image {
  background: #fdfaf3;
  border: 1px solid #e9d7a7;
  padding: 10px 15px;
  border-radius: 8px;
  font-size: 0.85rem;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #666;
  margin-top: 15px;
}

/* Jobb oldal: Szöveg */
.profile-text-content {
  display: flex;
  flex-direction: column;
}

.profile-text-content .lead {
  font-style: italic;
  font-size: 1.25rem;
  color: #1a5276;
  margin-bottom: 30px;
  padding-bottom: 15px;
  position: relative;
  text-align: center; /* Az idézet maradjon középen a saját oszlopában */
}

.profile-text-content .lead::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 3px;
  background: #f39c12;
}

.profile-text-content p {
  font-size: 1rem; /* Az alapméretnél kb. 15%-kal nagyobb */
  line-height: 1.7;    /* A sorok közötti távolság, hogy ne follyon össze */
  color: #333;        /* Egy kicsit sötétebb, kontrasztosabb szín */
  margin-bottom: 25px; /* Térköz a bekezdések között */
}

/* Lista */
.instructor-check-list {
  list-style: none;
  padding: 0;
}

.instructor-check-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  font-weight: 500;
}

/* Ikon színek (a korábbiak szerint) */
.instructor-check-list li:nth-child(1) i { color: #27ae60; }
.instructor-check-list li:nth-child(2) i { color: #2ecc71; }
.instructor-check-list li:nth-child(3) i { color: #16a085; }
.instructor-check-list li:nth-child(4) i { color: #1abc9c; }
.instructor-check-list li:nth-child(5) i { color: #219150; }
.instructor-check-list li:nth-child(6) i { color: #27ae60; }

/* Alsó gomb */


/* --- SZÍNES FONT AWESOME IKONOK --- */

/* Alapértelmezett beállítás az ikonoknak a listában */
.instructor-check-list li i {
  font-size: 1.1em; /* Egy kicsit nagyobb ikonok */
  margin-right: 5px; /* Távolság az ikontól */
}

/* Egyedi színek minden egyes ikonhoz a listában */

/* 1. Ikon (Nemzetközi vizsga) */
.instructor-check-list li:nth-child(1) i {
  color: #27ae60; /* Zöld */
}

/* 2. Ikon (14 év tapasztalat) */
.instructor-check-list li:nth-child(2) i {
  color: #e67e22; /* Narancs */
}

/* 3. Ikon (Tanulmányok Pekingben) */
.instructor-check-list li:nth-child(3) i {
  color: #2980b9; /* Kék */
}

/* 4. Ikon (Oktatási jogosultság) */
.instructor-check-list li:nth-child(4) i {
  color: #8e44ad; /* Lila */
}

/* 5. Ikon (Xu Mingtang tanítványa) */
.instructor-check-list li:nth-child(5) i {
  color: #c0392b; /* Piros */
}

/* 6. Ikon (Több mint 2000 tanítvány) */
.instructor-check-list li:nth-child(6) i {
  color: #16a085; /* Türkiz */
}



/* Csak a konténerre hatunk, a gomb stílusát nem bántjuk */
.profile-cta-full {
  grid-column: 1 / -1; /* HA gridet használsz, ez kiterjeszti teljes szélességre */
  width: 100%;        
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 50px;
  clear: both;         /* Biztonsági mentés, ha float-olna valami */
}
/* Mobil nézetnél fontos, hogy a sorrend végén maradjon */
@media (max-width: 850px) {
  .profile-cta-full {
    order: 4;           /* A név (1), a kép (2) és a szöveg (3) után következik */
  }
}








/* Mobil nézet */
@media (max-width: 900px) {
  .profile-grid {
    grid-template-columns: 1fr;
  }
  .profile-header-full h2 {
    font-size: 2rem;
  }
}

/* Mobil nézet */
@media (max-width: 900px) {
  .profile-grid {
    grid-template-columns: 1fr;
  }
  .profile-header-full h2 {
    font-size: 2rem;
  }
}
/* --- Mobil nézet (Reszponzivitás) --- */
@media (max-width: 992px) {
  .profile-grid {
    grid-template-columns: 1fr; /* Egymás alá kerülnek */
    gap: 40px;
    text-align: center;
  }

  .profile-text-content p, 
  .instructor-check-list {
    align-self: center; /* Mobilon minden mehet középre */
    max-width: 600px;
  }
  
  .profile-img {
    max-width: 320px;
  }
}


/* Mobil nézet: egymás alá rakja őket és mindent középre zár */
@media (max-width: 900px) {
  .profile-grid {
    grid-template-columns: 1fr;
    text-align: center;
  }
  
  .profile-text-content p, 
  .instructor-check-list {
    align-self: center;
    text-align: left; /* A lista olvashatóság miatt maradjon balra zárt */
    max-width: 500px; /* Hogy ne nyúljon túl szélesre mobilon */
  }
}











/* Mobil nézet */
@media (max-width: 768px) {
  .details-grid {
    grid-template-columns: 1fr;
  }
  
  .price-card {
    margin-top: 40px;
  }
}







/* 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;
    }


.cta-button.large {
    width: 100% !important; /* Teljes szélesség mobilon */
    max-width: 320px; /* Ne legyen túl széles nagy telefonon */
    height: auto !important; /* Engedjük a magasságnak, hogy kövesse a szöveget */
    padding: 15px 10px !important; /* Kisebb oldalsó padding, több hely a szövegnek */
    
    /* Szöveg kezelése */
    white-space: normal !important; /* Engedélyezzük a több sorba törést */
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1.3 !important;
    font-size: 1.1rem !important; /* Kicsit vegyük lejjebb a betűméretet */
  }













}


/* ===== 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);
  }
}
@media (max-width: 900px) {
  /* Maga a szekció kapjon egy alap oldalsó távolságot */
  .instructor-profile {
    padding: 60px 20px !important; /* A 20px biztosítja, hogy ne érjen a széléhez */
  }

  /* A szöveges tartalom tárolója */
  .profile-text-content {
    padding: 0 10px; /* Extra biztonsági tartalék */
  }

  /* A bekezdés szövege mobilon legyen kényelmesen olvasható */
  .profile-text-content p {
    padding: 0 5px;
    text-align: left; /* Mobilon a hosszú szöveg balra zártan olvashatóbb, mint középen */
    margin-bottom: 25px;
  }

  /* A lista is kapjon egy kis helyet, hogy az ikonok ne tapadjanak a szélre */
  .instructor-check-list {
    padding-left: 10px;
    display: inline-block; /* Így középre zárt szekcióban is jól mutat */
    text-align: left;
  }
}


/* Mobil nézet javítása (kb. 992px vagy 768px alatt) */
@media screen and (max-width: 992px) {
    
    /* 1. Az almenü ne "lebegjen", hanem tolja le a menüpontokat */
    .dropdown-content {
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        display: none; /* Alaphelyzetben rejtve */
        box-shadow: none !important;
        background-color: #f9f9f9 !important; /* Kicsit elütő háttér az almenünek */
        padding-left: 20px !important; /* Beljebb kezdődjön mobilon */
    }

    /* 2. Amikor a JavaScript ráteszi az .active osztályt, jelenjen meg */
    .dropdown.active .dropdown-content {
        display: block !important;
    }

    /* 3. A fő menüpont (Programok) ne vigyen el másik oldalra kattintáskor, 
       ha almenüt akarunk nyitni */
    .dropdown > a {
        pointer-events: auto;
    }
}