/* --- MERIDIÁNOK OLDAL EGYEDI STÍLUSAI --- */

:root {
    --primary-color: #2c3e50; /* Mély, bizalmat árasztó kék */
    --secondary-color: #d4a017; /* Energikus narancs a CTA-khoz */
    --text-color: #333;
    --light-bg: #f9f9f9;
    --white: #ffffff;
    --accent-gray: #ecf0f1;
    --border-radius: 8px;
    --transition: all 0.3s ease;
}

/* Hero Section Kiegészítés */

/* Tipográfia és SEO Olvashatóság */
.section-intro {
    font-size: 1.2rem;
    line-height: 1.8;
    color: var(--primary-color);
    margin-bottom: 30px;
    max-width: 800px;
}

.text-content p {
    margin-bottom: 1.5rem;
    line-height: 1.7;
}

/* Táblázat Formázás (SEO-barát adatszerkezet) */
.meridian-table {
    width: 100%;
    border-collapse: collapse;
    margin: 40px 0;
    background: var(--white);
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    border-radius: var(--border-radius);
    overflow: hidden;
}

.meridian-table th {
    background-color: var(--primary-color);
    color: var(--white);
    text-align: left;
    padding: 18px;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 1px;
}

.meridian-table td {
    padding: 15px 18px;
    border-bottom: 1px solid var(--accent-gray);
    vertical-align: top;
    line-height: 1.5;
}

.meridian-table tr:last-child td {
    border-bottom: none;
}

.meridian-table tr:nth-child(even) {
    background-color: #fcfcfc;
}



.image-row {
  display: flex;
  gap: 20px;          /* Távolság a két kép között */
  justify-content: center;
}

.image-row .image-container {
  flex: 1;            /* Egyforma szélességet kapnak */
  max-width: 50%;     /* Hogy ne nőjenek túl nagyra */
}

.image-container img {
    width: 100%;    /* Kitölti a konténer teljes szélességét */
    height: auto;   /* Megtartja az eredeti arányokat, nem torzul */
    display: block;
}



/* Info Boxok (Grid elrendezés az 5 pontnak) */
.grid-layout-3 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
    margin-top: 40px;
}



.pillars-section {
    background-color: #f2f5f8; /* Halvány, meleg krémszín */
    padding: 100px 0;
    }


/* A kép tárolója maradjon fehér és kerek/négyzetes a kontraszt miatt */
.pillars-section .point-image-container {
    background-color: #ffffff;
    width: 100%;
    max-width: 250px; /* Itt állítsd be mekkora legyen a kör/négyzet */
    aspect-ratio: 1 / 1;
    margin: 0 auto 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 25px; /* A kép mérete ebben a keretben */
    border-radius: 50%; /* Ez csinál belőle kört */
    overflow: hidden;
}


.info-box.no-shadow {
    box-shadow: none !important;
    border: none !important;
    background: transparent; /* Vagy maradhat fehér, ha a szekció háttérszíne más */
    padding: 0; /* Hogy a kép kitöltse a széleket, ha szükséges */
    text-align: center; /* A szöveg és cím középre igazítása */
}

/* Kép konténer kialakítása a kártya tetején */
.point-image-container {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;          /* Középre igazításhoz */
    align-items: center;    /* Függőlegesen középre */
    justify-content: center;/* Vízszintesen középre */
    padding: 50px;          /* Itt állítod be, mennyivel legyen kisebb a kép */
    background-color: #ffffff; /* Halvány háttér a kép körül */
    border-radius: 10px;
}

.point-img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;    /* Nem vágja le a széleit, az egész kép látszódni fog */
}












.info-box {
    background: var(--white);
    padding: 30px;
    border-radius: var(--border-radius);
    border-left: 5px solid var(--secondary-color);
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    transition: var(--transition);
}

.info-box:hover {
    transform: translateY(-5px);
}

.info-box h4 {
    color: var(--primary-color);
    font-size: 1.3rem;
    margin-bottom: 15px;
    border-bottom: 1px solid var(--accent-gray);
    padding-bottom: 10px;
}

/* Egyedi Listák */
.styled-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.styled-list li {
    position: relative;
    padding-left: 30px;
    margin-bottom: 12px;
}

.meridian-details ul {
    list-style-type: disc;
    list-style-position: inside; /* A pötty közelebb kerül a szöveghez */
    padding-left: 0 !important;   /* Alapértelmezett behúzás törlése */
    margin-left: 0 !important;
    text-align: left !important;  /* Kényszerített balra igazítás */
}

/* Idézet (Blockquote) */
blockquote {
    border-left: 4px solid var(--secondary-color);
    padding: 20px 30px;
    margin: 30px 0;
    background: var(--light-bg);
    font-style: italic;
    font-size: 1.1rem;
    color: #555;
}

/* Jogi Nyilatkozat (Disclaimer) - Kuruzsló törvény megfelelőség miatt kiemelve */
.disclaimer-section {
    padding: 40px 0;
    background-color: #fff;
}

.disclaimer-box {
    background-color: #fef9e7; /* Halvány figyelmeztető sárga */
    border: 1px solid #f39c12;
    padding: 25px;
    border-radius: var(--border-radius);
    font-size: 0.95rem;
    line-height: 1.6;
    color: #7f8c8d;
}

.disclaimer-box strong {
    color: #d35400;
}

/* Képek formázása */
.rounded-img {
    border-radius: var(--border-radius);
    max-width: 600px; /* Megadhatsz egy maximum szélességet pixelben */
    height: auto;
    display: block;
}

.shadow-effect {
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* --- ALAP BEÁLLÍTÁSOK --- */
:root {
    --container-width: 1100px; /* Az oldal fix szélessége */
}

/* Konténer: Ez tartja középen a tartalmat */
.container {
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 20px;
}

/* Általános szekció távolságok */
section {
    padding: 80px 0;
    width: 100%;
    display: block;
}

/* --- EGYEDI SZEKCIÓ SZÍNEK (Itt állítsd be őket) --- */

.bg-feher {
    background-color: #ffffff;
}

.bg-szurke {
    background-color: #f4f7f6; /* Halvány szürke */
}

.bg-sarga {
    background-color: #fef9e7; /* Halvány homokszín/sárga */
}

.bg-sotet {
    background-color: #2c3e50; /* Sötétkék szekció */
    color: #ffffff; /* Fehér szöveggel */
}

/* --- TARTALMI ELEMEK (A könyv alapján) --- */

.text-content {
    line-height: 1.8;
    color: #333;
}

/* Táblázat a Tantieneknek */
.meridian-table {
    width: 100%;
    border-collapse: collapse;
    margin: 30px 0;
    background: white;
}

.meridian-table th {
    background: #2c3e50;
    color: white;
    padding: 15px;
    text-align: left;
}

.meridian-table td {
    padding: 15px;
    border: 1px solid #ddd;
}

/* Jogi disclaimer a kuruzsló törvény miatt */
.disclaimer-box {
    background-color: #fff9e6;
    border: 1px solid #f1c40f;
    padding: 20px;
    font-size: 0.9rem;
    color: #666;
    border-radius: 5px;
}

.centered {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.cta-wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: 30px;
}






.grid-layout-2-wide {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr; /* A szöveg kicsit szélesebb, mint a kép */
    gap: 50px;
    align-items: start;
}

.hero-image-wrapper {
    position: sticky;
    top: 100px;
}

.image-caption {
    font-size: 0.85rem;
    color: #7f8c8d;
    text-align: center;
    margin-top: 10px;
    font-style: italic;
}


/* Fejléc elrendezése */
.meridian-header {
    text-align: center;
    margin-bottom: 50px;
}

.meridian-header .section-intro {
    max-width: 850px;
    margin: 20px auto 0;
    font-size: 1.15rem;
    line-height: 1.7;
    color: #444;
}

/* Kétoszlopos rács */
.meridian-grid {
  display: flex;
  align-items: center;
    text-align: left; /* A lista olvashatóságáért ez marad balra zárt */
    margin-top: 0;
    gap: 40px;
max-width: 1000px;

}


.meridian-text {
    flex: 1;                /* A szöveg kitölti a maradék helyet */
    text-align: left;
}




/* Szöveges tartalom */
.meridian-text p {
    margin-bottom: 20px;
    line-height: 1.6;
}

.meridian-quote {
    margin-top: 30px;
    padding: 20px;
    border-left: 4px solid #cc9966; /* Egy elegáns arany/bronz szín a csikunghoz */
    background-color: #f9f9f9;
    font-style: italic;
    color: #555;
}

/* Kép és Jogi szöveg */
.meridian-visual .image-container {
    background: #fff;
    padding: 10px;
    border-radius: 8px;
}

.image-caption {
    text-align: center;
    font-size: 0.85rem;
    color: #777;
    margin-top: 12px;
}

.legal-disclaimer {
    margin-top: 25px;
    font-size: 0.75rem;
    color: #95a5a6;
    line-height: 1.4;
    border-top: 1px solid #eee;
    padding-top: 15px;
}


/* A kép tárolójának beállítása */
.meridian-visual .image-container {
    background: #fff;
    padding: 10px;
    border-radius: 8px;
    
    /* --- ITT ÁLLÍTSD A MÉRETET --- */
    width: 100%;       /* Alapesetben töltse ki a rendelkezésre álló helyet */
    max-width: 200px;  /* Itt add meg pixelben, mekkora legyen maximum (pl. 400px, 500px) */
    margin: 0 auto;    /* Középre igazítja a képet az oszlopon belül */
}

/* Maga a kép fájl beállítása */
.meridian-visual .rounded-img {
    width: 100%;       /* Felveszi a tároló szélességét */
    height: auto;      /* Megtartja az arányokat */
    display: block;
    border-radius: 6px;
}


/* Részletes meridián rács */
.meridian-grid-detail {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
    margin-bottom: 100px;
}

/* Megfordított elrendezés (kép balra, szöveg jobbra) */
.meridian-grid-detail.reverse {
    direction: rtl;
}
.meridian-grid-detail.reverse .meridian-text {
    direction: ltr;
}

/* Szöveges formázás */
.meridian-text h2 {
    color: var(--primary-color);
    margin-bottom: 20px;
}

.meridian-text .lead {
    font-weight: 600;
    font-size: 1.1rem;
    color: #333;
}

/* --- KÉPMÉRET ÁLLÍTÁSA ITT --- */
.meridian-visual-detail .image-wrapper {
    width: 100%;
    max-width: 500px; /* <--- Ezt a számot írd át (pl. 300px vagy 500px), ha méretet váltanál */
    margin: 0 auto;
    background: #fff;
    padding: 15px;
    border-radius: 10px;
}

.meridian-img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 5px;
}


/* Általános szekció beállítások */
.meridian-detail-section {
    padding: 80px 0;
}

.bg-vilagos { background-color: #fcfcfc; }

/* Flexbox elrendezés */
.meridian-flex-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
}

/* Megfordított sorrend a Tumajhoz (Kép balra, szöveg jobbra) */
.meridian-flex-row.reverse {
    flex-direction: row-reverse;
}

.meridian-content {
    flex: 1;
}

.meridian-visual {
    
    flex: 0 0 300px;
    display: flex;
    justify-content: center;
}

/* --- KÉPMÉRET ÁLLÍTÁSA ITT --- */
.img-frame {
    background: #fff;
    padding: 15px;
    border-radius: 12px;
    width: 100%;
    max-width: 380px; /* <--- Ezt a számot növeld vagy csökkentsd a mérethez! */
}

.controllable-img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

/* Feliratok és dekoráció */
.meridian-label {
    font-size: 0.85rem;
    letter-spacing: 2px;
    color: #cc9966;
    font-weight: bold;
}

.meridian-content h2 {
    margin: 10px 0 20px;
    font-size: 2rem;
}

.img-tag {
    text-align: center;
    font-size: 0.8rem;
    color: #888;
    margin-top: 15px;
    font-style: italic;
}

/* A fejléc középre igazítása */
.meridian-section-header {
    text-align: center;
    margin-bottom: 50px; /* Távolság a címsor és a tartalom között */
}

.meridian-section-header .meridian-label {
    display: block;
    margin-bottom: 10px;
    letter-spacing: 3px;
    color: #cc9966;
    font-weight: bold;
    font-size: 0.9rem;
}

.meridian-section-header h2 {
    font-size: 2.5rem;
    margin-bottom: 15px;
    color: var(--primary-color);
}

.meridian-section-header .lead {
    font-size: 1.2rem;
    max-width: 700px;
    margin: 0 auto; /* Ez húzza középre a szövegdobozt */
    color: #555;
    font-style: italic;
}

/* Képméret finomhangolása (itt állítsd, ha túl nagy) */
.img-frame {
    max-width: 350px; 
    margin: 0 auto;
}












/* Átfogó Meridián Szekció */
.meridian-comprehensive {
    padding: 100px 0;
    line-height: 1.7;
    background-color: #f9f9f9;
}

.meridian-main-header {
    text-align: center;
    margin-bottom: 60px;
}

.meridian-main-header h1 {
    font-size: 2.8rem;
    margin: 15px 0;
    color: #2c3e50;
}

.meridian-comprehensive-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    align-items: center;
}

/* Szöveges blokkok */
.detail-block {
    margin-bottom: 40px;
}

.detail-block h3 {
    font-size: 1.5rem;
    color: #0c0c0c;
    margin-bottom: 15px;
    border-bottom: 2px solid #f0f0f0;
    display: inline-block;
}



.detail-block.danger {
    border-left: 5px solid #e74c3c;
    padding-left: 20px;
}

.quote {
    font-style: italic;
    color: #7f8c8d;
    margin-top: 15px;
    font-size: 0.95rem;
}

/* Vizuális rész állítható mérettel */
.image-sticky-wrapper {
    position: sticky;
    top: 50px;
}

.combined-image-container {
    background: #fff;
    padding: 20px;
    border-radius: 15px;
    text-align: center;
    /* --- ITT ÁLLÍTSD A KÉP MÉRETÉT --- */
    max-width: 350px; 
    width: 100%;
    margin: 0 auto;
}

.meridian-img {
    width: 100%;
    height: auto;
    border-radius: 5px;
}

.image-labels {
    display: flex;
    justify-content: space-around;
    margin-top: 15px;
    font-size: 0.8rem;
    font-weight: bold;
    color: #666;
}

.disclaimer-box {
    margin-top: 30px;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 10px;
    font-size: 0.9rem;
    border: 1px dashed #ddd;
}

/* Középre zárás */
.text-center {
  
    text-align: center;
}




/* Betűmagasság és térköz állítása a címnek */
.meridian-scientific-approach h2 {
    font-size: 1.8rem; /* Ezt csökkentsd (pl. 1.2rem vagy 20px), ha még kisebb kell */
    font-weight: 600;  /* Kicsit vékonyabb betűkkel is kisebbnek tűnik */
    margin-top: 50px;
    line-height: 1.4;      /* Betűmagasság (sorok közötti távolság) */
    margin-bottom: 30px;  /* Távolság a cím és az alatta lévő lista között */
 
}

/* Ha a lista betűmagasságát is állítanád */
.scientific-item .styled-list li {
    line-height: 1.6;      /* Kicsit szellősebb sorok a könnyebb olvashatóságért */
    margin-bottom: 15px;   /* Listaelemek közötti távolság */
}

.section-intro-two {
    max-width: 850px;
    margin: 0 auto 50px auto;
    text-align: center;
    line-height: 1.7;
}
.scientific-content-wrapper {
    display: flex;
    align-items: center; /* A tetejéhez igazítja a tartalmakat */
    justify-content: center;
    gap: 40px;              /* Kényelmes távolság a szöveg és a kép között */
    max-width: 1000px;
    margin: 0 auto;
}




.scientific-item {
    flex: 1;
    text-align: left; /* A lista olvashatóságáért ez marad balra zárt */
    margin-top: 0;
}
.scientific-image {
   flex: 0 0 300px;
    max-width: 300px; /* Ezt az értéket írd át (pl. 300px-re), ha túl nagynak találod */
    width: 100%;
}
.scientific-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px; /* Opcionális kerekítés */
}




.meridian-image-box {
     flex: 0 0 300px;
    max-width: 300px;
}

/* Ez biztosítja, hogy a kép kövesse a doboz méretét */
.meridian-image-box img {
    width: 100%;
    height: auto;
    border-radius: 10px;   /* Maga a kép is legyen picit kerekített */
    display: block;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* Felirat stílusa */
.image-caption {
    margin-top: 10px;
    font-size: 0.9rem;
    color: #666;
    font-style: italic;
}


.meridian-footer-text {
  margin-top: 40px;
  text-align: center; /* Középre igazítás */
  max-width: 900px;   /* Ne legyen túl széles a szöveg a könnyebb olvashatóságért */
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  line-height: 1.6;
  border-top: 1px solid #eee; /* Opcionális elválasztó vonal */
}

.meridian-footer-text p {
 
  color: #555;
}
.meridian-text-box {
    padding-left: 30px; /* Ezt az értéket növelheted, ha még beljebb akarod tolni */
}


/* --- RESPONSIVE DESIGN (MEDIA QUERIES) --- */

/* 1. TABLET NÉZET (992px alatt) */
@media (max-width: 992px) {
    .container {
        padding: 0 25px;
    }

    /* Rácsok (Grid) átalakítása 1 oszlopossá */
    .meridian-comprehensive-grid,
    .meridian-grid-detail,
    .grid-layout-2-wide,
    .scientific-content-wrapper,
    .meridian-grid {
        grid-template-columns: 1fr !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 40px;
        text-align: center;
    }

    /* A megfordított elrendezések alaphelyzetbe állítása mobilon */
    .meridian-grid-detail.reverse,
    .meridian-flex-row.reverse,
    .meridian-grid-detail.reverse {
        direction: ltr !important;
        flex-direction: column !important;
    }

    /* Képek fix szélességének feloldása */
    .meridian-visual, 
    .scientific-image, 
    .meridian-image-box,
    .meridian-visual-detail .image-wrapper,
    .combined-image-container,
    .img-frame {
        max-width: 100% !important;
        flex: none !important;
        width: 100% !important;
        margin: 0 auto;
    }

    /* Képek méretének korlátozása mobilon, hogy ne legyenek óriásiak */
    .meridian-img, .rounded-img, .controllable-img {
        max-width: 400px;
        margin: 0 auto;
    }

    /* Sticky elemek kikapcsolása mobilon */
    .image-sticky-wrapper,
    .hero-image-wrapper {
        position: static !important;
        margin-top: 20px;
    }

    /* Szöveg igazítása */
    .meridian-text, .scientific-item, .meridian-content {
        text-align: left; /* A lista olvashatósága miatt a szöveg maradjon balos */
    }

    .meridian-section-header h2,
    .meridian-main-header h1 {
        font-size: 2rem;
    }
}

/* 2. MOBIL NÉZET (768px alatt) */
@media (max-width: 768px) {
    section {
        padding: 50px 0;
    }

    /* Kép párosok (image-row) egymás alá */
    .image-row {
        flex-direction: column;
        gap: 15px;
    }

    .image-row .image-container {
        max-width: 100%;
    }

    /* Táblázatok kezelése (vízszintes görgetés, ha túl széles) */
    .meridian-table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .meridian-table th, .meridian-table td {
        min-width: 120px; /* Megakadályozza a cellák olvashatatlanul keskennyé válását */
        padding: 12px;
        font-size: 0.85rem;
    }

    /* Pillar boxok (5 pont) */
    .grid-layout-3 {
        grid-template-columns: 1fr;
    }

    .pillars-section .point-image-container {
        max-width: 180px; /* Kisebb körök mobilon */
    }

    blockquote {
        font-size: 1rem;
        padding: 15px 20px;
    }

    .btn-primary {
        width: 100%;
        text-align: center;
    }

.meridian-details ul {
        padding-left: 20px !important;
    }



}