/* =========================================================
   CASSIOPEIA – EGYSZERŰ HÍR/MAGAZIN ELRENDEZÉS
   Tisztított változat
   ========================================================= */

:root {
    --site-red: #b22027;
    --site-darkred: #98191f;
    --site-black: #050505;
    --site-bg: #f5f5f5;
    --site-border: #dddddd;
    --site-width: 1705px;

    --header-height: 110px;
    --menu-height: 54px;
}


/* =========================================================
   ALAP
   ========================================================= */

html,
body {
    margin: 0;
    padding: 0;
}

body {
    background: var(--site-bg);
    color: #222;
    font-family: Arial, Helvetica, sans-serif;
}

a {
    color: var(--site-red);
}

a:hover {
    color: var(--site-darkred);
}


/* =========================================================
   FEJLÉC
   ========================================================= */

.container-header {
    position: relative;
    width: calc(100% - 46px);
    max-width: var(--site-width);
    margin: 30px auto 0;
    background: var(--site-red);
    background-image: none;
    box-shadow: 0 0 8px rgba(0, 0, 0, .20);
    overflow: visible;
}


/* Piros felső rész */
.container-header .grid-child:first-child {
    min-height: var(--header-height);
    display: flex;
    align-items: center;
    padding: 0 45px;
}


/* Logó */
.container-header .navbar-brand {
    margin: 0;
    padding: 0;
}

.container-header .navbar-brand img {
    width: auto;
    max-width: 300px;
    max-height: 75px;
}


/* =========================================================
   KERESŐ
   ========================================================= */

.container-header .container-topbar {
    position: absolute !important;
    top: 16px !important;
    right: 42px !important;
    width: 230px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 100;
}

.container-header .container-topbar .mod-finder,
.container-header .container-topbar .mod-search,
.container-header .container-topbar form {
    width: 230px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.container-header .container-topbar input,
.container-header .container-topbar input.form-control,
.container-header .container-topbar .js-finder-search-query {
    display: block !important;
    width: 230px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    box-sizing: border-box !important;

    background: #fff !important;
    color: #555 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    font-size: 17px !important;
    line-height: 44px !important;
}

.container-header .container-topbar input[type="search"] {
    appearance: none;
    -webkit-appearance: none;
}


/* =========================================================
   FEKETE FŐMENÜ
   ========================================================= */

.container-header .container-nav {
    width: 100%;
    max-width: none;
    height: var(--menu-height);
    min-height: var(--menu-height);
    margin: 0;
    padding: 0 55px;
    box-sizing: border-box;

    display: flex;
    align-items: stretch;

    background: var(--site-black);
    overflow: visible;
}

.container-header .mod-menu {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;

    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;

    overflow: visible !important;
}

.container-header .mod-menu > li {
    position: relative;
    flex: 0 0 auto !important;
    height: var(--menu-height);
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap;
}


/* Főmenü link */
.container-header .mod-menu > li > a,
.container-header .mod-menu > li > span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: var(--menu-height) !important;
    margin: 0 !important;
    padding: 0 17px !important;
    box-sizing: border-box;

    color: #fff !important;
    border-right: 1px solid #333;

    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: normal !important;
    text-align: center;
    text-decoration: none !important;
}

.container-header .mod-menu > li:first-child > a,
.container-header .mod-menu > li:first-child > span {
    border-left: 1px solid #333;
}

.container-header .mod-menu > li > a:hover,
.container-header .mod-menu > li > a:focus {
    background: #222 !important;
    color: #fff !important;
}

.container-header .mod-menu > li.active > a,
.container-header .mod-menu > li.current > a {
    background: #a51c23 !important;
    color: #fff !important;
}


/* =========================================================
   ALMENÜ – ASZTALI GÉPEN HOVERRE
   Nincs külön háromszög a főmenüben.
   A Joomla modul maradhat "Collapsible Dropdown" elrendezésen.
   ========================================================= */

@media (min-width: 992px) {

    /* A külön Joomla lenyitó gomb ne látszódjon asztali gépen */
    .container-header .metismenu.mod-menu > li > .mm-toggler {
        display: none !important;
    }

    .container-header .metismenu.mod-menu > li.parent,
    .container-header .metismenu.mod-menu > li.deeper {
        position: relative !important;
    }

    /* Almenü alaphelyzetben rejtve */
    .container-header .metismenu.mod-menu > li > ul.mm-collapse {
        display: none !important;
        position: absolute !important;
        top: var(--menu-height) !important;
        left: 0 !important;

        width: 240px !important;
        min-width: 240px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;

        list-style: none !important;
        background: #111 !important;
        border: 0 !important;
        box-shadow: 0 5px 12px rgba(0, 0, 0, .28) !important;

        overflow: visible !important;
        visibility: visible !important;
        z-index: 99999 !important;
    }

    /* Hoverre / billentyűs fókuszra jelenjen meg */
    .container-header .metismenu.mod-menu > li:hover > ul.mm-collapse,
    .container-header .metismenu.mod-menu > li:focus-within > ul.mm-collapse,
    .container-header .metismenu.mod-menu > li > ul.mm-collapse.mm-show {
        display: block !important;
        height: auto !important;
    }

    /* Almenüpont */
    .container-header .metismenu.mod-menu > li > ul.mm-collapse > li {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #111 !important;
    }

    .container-header .metismenu.mod-menu > li > ul.mm-collapse > li > a,
    .container-header .metismenu.mod-menu > li > ul.mm-collapse > li > span {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 11px 16px !important;
        box-sizing: border-box !important;

        background: #111 !important;
        color: #fff !important;
        border: 0 !important;
        border-bottom: 1px solid #292929 !important;

        font-size: 16px !important;
        font-weight: 600 !important;
        line-height: 1.35 !important;
        text-align: left !important;
        text-decoration: none !important;
    }

    .container-header .metismenu.mod-menu > li > ul.mm-collapse > li > a:hover,
    .container-header .metismenu.mod-menu > li > ul.mm-collapse > li > a:focus {
        background: var(--site-red) !important;
        color: #fff !important;
    }

    /* Ha második szintű almenü is lenne */
    .container-header .metismenu.mod-menu ul.mm-collapse li > ul.mm-collapse {
        top: 0 !important;
        left: 100% !important;
    }
}


/* =========================================================
   FŐ OLDALDOBOZ
   ========================================================= */

.site-grid {
    width: calc(100% - 46px);
    max-width: var(--site-width);
    margin: 0 auto;
    padding: 0 22px 50px;
    box-sizing: border-box;

    background: #fff;
    box-shadow: 0 3px 8px rgba(0, 0, 0, .12);
}

main {
    background: #fff;
}


/* =========================================================
   MORZSA
   ========================================================= */

.breadcrumb {
    width: 100%;
    margin: 0 0 20px;
    padding: 10px 18px;
    box-sizing: border-box;

    background: #e9ecef;
    border-radius: 0;

    font-size: 16px;
    line-height: 1.45;
}

.breadcrumb a {
    color: var(--site-red);
}


/* =========================================================
   CIKK
   ========================================================= */

.item-page {
    background: #fff;
}

.item-page h1,
.com-content-article h1,
.page-header h1 {
    margin-top: 0;
    margin-bottom: 14px;

    color: var(--site-red);

    font-family: Arial, Helvetica, sans-serif;
    font-size: 32px;
    font-weight: 400;
    line-height: 1.18;
}

.article-info {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 8px;

    margin: 6px 0 18px;
    padding: 0;

    color: #555;
    font-size: 14px;
    line-height: 1.4;
}

/* A külön "Részletek" felirat ne foglaljon sort */
.article-info .article-info-term,
.article-info-term {
    display: none !important;
}

.article-info dd {
    display: inline-flex;
    align-items: center;
    margin: 0 !important;
}

.article-info dd + dd::before {
    content: "/";
    margin-right: 8px;
    color: #888;
}

.article-info [class^="icon-"],
.article-info [class*=" icon-"],
.article-info .fa,
.article-info .fas,
.article-info .far {
    margin-right: 5px;
    font-size: 13px;
    opacity: .8;
}

.item-page p,
.com-content-article p {
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.7;
}

.item-page img,
.com-content-article img {
    max-width: 100%;
    height: auto;
}


/* =========================================================
   JOBB OLDALI SIDEBAR
   ========================================================= */

.sidebar-right {
    padding-left: 20px;
}

.sidebar-right .card {
    margin-bottom: 25px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 3px;
    box-shadow: none;
}

.sidebar-right .card-header {
    padding: 16px 16px 14px;
    background: #fff;
    border-bottom: 1px solid #ddd;
    color: #171717;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
}

.sidebar-right .card-body {
    padding: 12px 14px 14px;
}


/* =========================================================
   LEGFRISSEBBEK
   ========================================================= */

.mod-articleslatest,
.latestnews {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mod-articleslatest li,
.latestnews li {
    min-height: 76px;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    overflow: hidden;
}

.mod-articleslatest li img,
.latestnews li img {
    float: left;
    width: 58px !important;
    height: 72px !important;
    margin: 0 10px 2px 0 !important;
    object-fit: cover;
}

.mod-articleslatest a,
.latestnews a {
    color: var(--site-red);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: underline;
}

.mod-articleslatest p,
.latestnews p {
    margin: 4px 0 0;
    font-size: 14px;
    line-height: 1.35;
}


/* =========================================================
   REKLÁM BLOKK
   ========================================================= */

.advertisement {
    width: 100%;
    margin: 20px auto 16px;
    text-align: center;
    overflow: hidden;
}

.advertisement iframe,
.advertisement img {
    max-width: 100%;
}


/* =========================================================
   KISEBB ASZTALI / TABLET
   ========================================================= */

@media (max-width: 1400px) and (min-width: 992px) {

    .container-header .container-nav {
        padding-left: 25px;
        padding-right: 25px;
    }

    .container-header .mod-menu > li > a,
    .container-header .mod-menu > li > span {
        padding-left: 13px !important;
        padding-right: 13px !important;
        font-size: 17px !important;
    }
}


/* =========================================================
   MOBIL
   ========================================================= */

@media (max-width: 991px) {

    .container-header {
        width: 100%;
        margin-top: 0;
    }

    .container-header .grid-child:first-child {
        min-height: 88px;
        padding: 0 15px;
    }

    .container-header .navbar-brand img {
        max-width: 210px;
        max-height: 66px;
    }

    /* Kereső mobilon */
    .container-header .container-topbar {
        top: 22px !important;
        right: 15px !important;
        width: 180px !important;
        height: 42px !important;
    }

    .container-header .container-topbar .mod-finder,
    .container-header .container-topbar .mod-search,
    .container-header .container-topbar form,
    .container-header .container-topbar input,
    .container-header .container-topbar input.form-control,
    .container-header .container-topbar .js-finder-search-query {
        width: 180px !important;
        height: 42px !important;
        min-height: 42px !important;
    }

    .container-header .container-topbar input,
    .container-header .container-topbar input.form-control,
    .container-header .container-topbar .js-finder-search-query {
        font-size: 16px !important;
        line-height: 42px !important;
    }

    /* Mobil menü */
    .container-header .container-nav {
        height: auto;
        min-height: 0;
        padding: 0 15px;
    }

    .container-header .mod-menu {
        flex-direction: column !important;
        width: 100% !important;
        align-items: stretch !important;
    }

    .container-header .mod-menu > li {
        width: 100%;
        height: auto;
        min-height: 50px;
    }

    .container-header .mod-menu > li > a,
    .container-header .mod-menu > li > span {
        justify-content: flex-start !important;
        width: 100%;
        height: 50px !important;
        padding: 0 12px !important;

        border-left: 0 !important;
        border-right: 0 !important;
        border-bottom: 1px solid #333 !important;

        font-size: 17px !important;
    }

    /* Mobilon kell a Joomla lenyitó gomb */
    .container-header .metismenu.mod-menu > li > .mm-toggler {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 48px !important;
        height: 50px !important;
        margin: 0 !important;
        padding: 0 !important;

        background: transparent !important;
        color: #fff !important;
        border: 0 !important;
        box-shadow: none !important;
        cursor: pointer !important;
    }

    /* Egyszerű + jel mobilon */
    .container-header .metismenu.mod-menu > li > .mm-toggler::after {
        content: "+" !important;
        display: block !important;
        width: auto !important;
        height: auto !important;

        border: 0 !important;
        color: #fff !important;

        font-size: 24px !important;
        font-weight: 400 !important;
        line-height: 1 !important;
        transform: none !important;
    }

    .container-header .metismenu.mod-menu > li > .mm-toggler[aria-expanded="true"]::after {
        content: "−" !important;
    }

    /* Mobil almenü normál dokumentumfolyamban */
    .container-header .metismenu.mod-menu > li > ul.mm-collapse {
        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;

        background: #111 !important;
        box-shadow: none !important;
    }

    .container-header .metismenu.mod-menu > li > ul.mm-collapse > li > a,
    .container-header .metismenu.mod-menu > li > ul.mm-collapse > li > span {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        padding: 11px 25px !important;

        background: #111 !important;
        color: #fff !important;
        border-bottom: 1px solid #292929 !important;

        font-size: 16px !important;
        text-align: left !important;
        text-decoration: none !important;
    }

    .site-grid {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }

    .item-page h1,
    .com-content-article h1,
    .page-header h1 {
        font-size: 28px;
    }

    .sidebar-right {
        padding-left: 0;
        margin-top: 30px;
    }
}


/* Nagyon keskeny mobil: ne ütközzön a logó és a kereső */
@media (max-width: 620px) {

    .container-header .grid-child:first-child {
        min-height: 132px;
        align-items: flex-start;
        padding-top: 14px;
    }

    .container-header .container-topbar {
        top: 78px !important;
        left: 15px !important;
        right: auto !important;
        width: calc(100% - 30px) !important;
    }

    .container-header .container-topbar .mod-finder,
    .container-header .container-topbar .mod-search,
    .container-header .container-topbar form,
    .container-header .container-topbar input,
    .container-header .container-topbar input.form-control,
    .container-header .container-topbar .js-finder-search-query {
        width: 100% !important;
    }
}


/* =========================================================
   MENÜ VÉGLEGES MAGASSÁG JAVÍTÁS
   – a Cassiopeia gridhez nem nyúl
   ========================================================= */

@media (min-width: 992px) {

    .container-header .container-nav {
        height: 54px !important;
        min-height: 54px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .container-header .mod-menu {
        height: 54px !important;
        min-height: 54px !important;
        align-items: stretch !important;
    }

    .container-header .mod-menu > li {
        height: 54px !important;
        min-height: 54px !important;
        max-height: 54px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        box-sizing: border-box !important;
    }

    .container-header .mod-menu > li > a,
    .container-header .mod-menu > li > span {
        height: 54px !important;
        min-height: 54px !important;
        max-height: 54px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        box-sizing: border-box !important;
    }
}


/* =========================================================
   BIZTONSÁGI RESET – NEM ÍRJUK ÁT A CASSIOPEIA GRIDET
   ========================================================= */

/*
   Szándékosan NINCS itt:
   - grid-template-columns
   - grid-template-areas
   - grid-column-start/end
   - .container-component pozicionálás
   - .container-sidebar-right pozicionálás

   Ezeket a Cassiopeia saját template.css fájlja kezeli.
*/


/* =========================================================
   MOBIL FINOMHANGOLÁS
   ========================================================= */

@media (max-width: 991px) {

    .breadcrumb {
        margin-bottom: 18px;
        padding: 9px 12px;
        font-size: 15px;
    }

    .item-page h1,
    .com-content-article h1,
    .page-header h1 {
        font-size: 27px;
        line-height: 1.22;
    }

    .item-page p,
    .com-content-article p {
        font-size: 17px;
        line-height: 1.62;
    }

    .article-info {
        margin-bottom: 15px;
        font-size: 13px;
    }
}

@media (max-width: 480px) {

    .item-page h1,
    .com-content-article h1,
    .page-header h1 {
        font-size: 25px;
    }

    .sidebar-right .card-header {
        font-size: 22px;
    }

    .mod-articleslatest li img,
    .latestnews li img {
        width: 54px !important;
        height: 68px !important;
    }
}


/* =========================================================
   V4 – CASSIOPEIA HIVATALOS GRID VISSZAÁLLÍTÁSA
   Ezt a blokkot hagyd a user.css LEGVÉGÉN.
   ========================================================= */

@supports (display: grid) {

    .site-grid {
        display: grid !important;

        /* Joomla Cassiopeia eredeti 6 oszlopos szerkezete */
        grid-template-areas:
            ". banner banner banner banner ."
            ". top-a  top-a  top-a  top-a  ."
            ". top-b  top-b  top-b  top-b  ."
            ". comp   comp   comp   comp   ."
            ". side-r side-r side-r side-r ."
            ". side-l side-l side-l side-l ."
            ". bot-a  bot-a  bot-a  bot-a  ."
            ". bot-b  bot-b  bot-b  bot-b  ." !important;

        grid-template-columns:
            [full-start] minmax(0, 1fr)
            [main-start] repeat(4, minmax(0, 19.875rem))
            [main-end] minmax(0, 1fr)
            [full-end] !important;

        column-gap: 1rem !important;
        row-gap: 0 !important;

        /* A régi saját padding ne tolja el a gridet */
        padding: 18px 0 50px !important;
    }

    /* A Joomla saját grid-területei */
    .site-grid .container-banner {
        grid-area: banner !important;
    }

    .site-grid .container-top-a {
        grid-area: top-a !important;
    }

    .site-grid .container-top-b {
        grid-area: top-b !important;
    }

    .site-grid .container-component {
        grid-area: comp !important;
        min-width: 0 !important;
        width: 100% !important;
        max-width: none !important;

        /* semmilyen korábbi kézi pozicionálás ne maradjon */
        position: static !important;
        transform: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .site-grid .container-sidebar-left {
        grid-area: side-l !important;
    }

    .site-grid .container-sidebar-right {
        grid-area: side-r !important;
        min-width: 0 !important;
        width: 100% !important;
        max-width: none !important;

        position: static !important;
        transform: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
    }

    .site-grid .container-bottom-a {
        grid-area: bot-a !important;
    }

    .site-grid .container-bottom-b {
        grid-area: bot-b !important;
    }

    /* Desktop: bal sidebar | cikk | cikk | jobb sidebar */
    @media (min-width: 992px) {

        .site-grid {
            grid-template-areas:
                ". banner banner banner banner ."
                ". top-a  top-a  top-a  top-a  ."
                ". top-b  top-b  top-b  top-b  ."
                ". side-l comp   comp   side-r ."
                ". bot-a  bot-a  bot-a  bot-a  ."
                ". bot-b  bot-b  bot-b  bot-b  ." !important;
        }

        /* Ha nincs bal sidebar, a cikk megkapja annak az oszlopát is */
        body:not(.has-sidebar-left) .site-grid .container-component {
            grid-column-start: main-start !important;
        }

        /* Ha nincs jobb sidebar, a cikk jobbra is kitölt */
        body:not(.has-sidebar-right) .site-grid .container-component {
            grid-column-end: main-end !important;
        }
    }
}


/* =========================================================
   V4 – JOBB SIDEBAR / LEGFRISSEBBEK
   A helyes Cassiopeia osztály: container-sidebar-right
   ========================================================= */

.container-sidebar-right {
    align-self: start !important;
}

.container-sidebar-right .card {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 24px !important;

    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

.container-sidebar-right .card-header {
    padding: 16px 16px 14px !important;

    background: #fff !important;
    border-bottom: 1px solid #ddd !important;

    color: #171717 !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.container-sidebar-right .card-body {
    padding: 12px 14px 14px !important;
}


/* =========================================================
   V4 – CIKK KÉP MÉRETE
   Desktopon ne nőjön túl nagyra.
   Mobilon természetesen 100%-ig zsugorodhat.
   ========================================================= */

@media (min-width: 992px) {

    .item-page img,
    .com-content-article img {
        width: auto !important;
        max-width: min(100%, 760px) !important;
        height: auto !important;
    }

    /* A reklámok és iframe-ek méretét ez ne korlátozza */
    .item-page .advertisement img,
    .com-content-article .advertisement img {
        max-width: 100% !important;
    }
}

@media (max-width: 991px) {

    .item-page img,
    .com-content-article img {
        max-width: 100% !important;
        height: auto !important;
    }
}


/* =========================================================
   V4 – MENÜ: VÉKONYABB SÁV + NINCS LELÓGÓ ELVÁLASZTÓ
   ========================================================= */

@media (min-width: 992px) {

    .container-header .container-nav {
        height: 50px !important;
        min-height: 50px !important;
        max-height: 50px !important;

        padding-top: 0 !important;
        padding-bottom: 0 !important;

        align-items: stretch !important;
        overflow: visible !important;
    }

    .container-header .mod-menu {
        height: 50px !important;
        min-height: 50px !important;
        max-height: 50px !important;
        align-items: stretch !important;
    }

    .container-header .mod-menu > li {
        position: relative !important;

        height: 50px !important;
        min-height: 50px !important;
        max-height: 50px !important;

        border: 0 !important;
    }

    .container-header .mod-menu > li > a,
    .container-header .mod-menu > li > span {
        height: 50px !important;
        min-height: 50px !important;
        max-height: 50px !important;

        padding: 0 16px !important;

        border-left: 0 !important;
        border-right: 0 !important;

        font-size: 18px !important;
        line-height: 50px !important;
    }

    /*
       Nem border-right-ot használunk, mert az lelógott.
       Az elválasztó csak a menüsáv belsejében fut.
    */
    .container-header .mod-menu > li::after {
        content: "" !important;

        position: absolute !important;
        top: 8px !important;
        right: 0 !important;
        bottom: 8px !important;

        width: 1px !important;

        background: #333 !important;

        pointer-events: none !important;
    }

    .container-header .mod-menu > li:first-child::before {
        content: "" !important;

        position: absolute !important;
        top: 8px !important;
        left: 0 !important;
        bottom: 8px !important;

        width: 1px !important;

        background: #333 !important;

        pointer-events: none !important;
    }

    /* Az almenü a vékonyabb, 50px-es sáv alatt induljon */
    .container-header .metismenu.mod-menu > li > ul.mm-collapse {
        top: 50px !important;
    }
}


/* =========================================================
   V4 – KISEBB ASZTALI KÉPERNYŐ
   ========================================================= */

@media (max-width: 1400px) and (min-width: 992px) {

    .container-header .container-nav {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .container-header .mod-menu > li > a,
    .container-header .mod-menu > li > span {
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 17px !important;
    }

    .item-page img,
    .com-content-article img {
        max-width: min(100%, 720px) !important;
    }
}

/* Főmenü szöveg 3 pixellel feljebb */
@media (min-width: 992px) {

    .container-header .metismenu.mod-menu > li > a,
    .container-header .metismenu.mod-menu > li > span {
        transform: translateY(-7px) !important;
    }

}

/* =========================================================
   V8 – CSS-ONLY HÍRKÁRTYÁS RÁCS
   Nincs JavaScript.
   ========================================================= */

/* 3 oszlopos háló */
.blog-featured .blog-items,
.com-content-category-blog .blog-items {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 32px 28px !important;
    align-items: start !important;
}

.blog-featured .blog-item,
.com-content-category-blog .blog-item {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* KÉP – egységes 16:9 crop */
.blog-featured .blog-item .item-image,
.com-content-category-blog .blog-item .item-image,
.blog-featured .blog-item figure:has(img),
.com-content-category-blog .blog-item figure:has(img),
.blog-featured .blog-item p:has(> img),
.com-content-category-blog .blog-item p:has(> img),
.blog-featured .blog-item p:has(> a > img),
.com-content-category-blog .blog-item p:has(> a > img) {
    display: block !important;
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    overflow: hidden !important;
    float: none !important;
}

.blog-featured .blog-item .item-image img,
.com-content-category-blog .blog-item .item-image img,
.blog-featured .blog-item figure img,
.com-content-category-blog .blog-item figure img,
.blog-featured .blog-item .item-content img,
.com-content-category-blog .blog-item .item-content img {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* CÍM – kisebb, piros */
.blog-featured .blog-item .page-header,
.com-content-category-blog .blog-item .page-header {
    margin: 0 !important;
    padding: 0 !important;
}

.blog-featured .blog-item .page-header h2,
.com-content-category-blog .blog-item .page-header h2 {
    margin: 0 0 7px !important;
    padding: 0 !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.blog-featured .blog-item .page-header h2 a,
.com-content-category-blog .blog-item .page-header h2 a {
    color: var(--site-red) !important;
    text-decoration: none !important;
}

.blog-featured .blog-item .page-header h2 a:hover,
.com-content-category-blog .blog-item .page-header h2 a:hover {
    color: var(--site-darkred) !important;
    text-decoration: underline !important;
}

/* META – kisebb */
.blog-featured .blog-item .article-info,
.com-content-category-blog .blog-item .article-info {
    margin: 0 0 7px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
}

/* Minden normál szöveges bekezdés elrejtve */
.blog-featured .blog-item .item-content > p:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:not(:has(img)) {
    display: none !important;
}

/* Ha a legelső bekezdés szöveg, csak ez maradjon */
.blog-featured .blog-item .item-content > p:first-of-type:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:first-of-type:not(:has(img)) {
    display: block !important;
}

/* Ha az első bekezdés a kép, az utána következő szöveges bekezdés maradjon */
.blog-featured .blog-item .item-content > p:first-of-type:has(img) + p:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:first-of-type:has(img) + p:not(:has(img)) {
    display: block !important;
}

/* Az engedélyezett előnézet pontosan 1 sor */
.blog-featured .blog-item .item-content > p:first-of-type:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:first-of-type:not(:has(img)),
.blog-featured .blog-item .item-content > p:first-of-type:has(img) + p:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:first-of-type:has(img) + p:not(:has(img)) {
    margin: 0 !important;
    padding: 0 !important;
    color: #666 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* A beágyazott strong/b/em se lehessen félkövér */
.blog-featured .blog-item .item-content > p:not(:has(img)) *,
.com-content-category-blog .blog-item .item-content > p:not(:has(img)) * {
    font-size: inherit !important;
    line-height: inherit !important;
    font-style: normal !important;
    font-weight: 400 !important;
}

/* Read more ne jelenjen meg */
.blog-featured .blog-item .readmore,
.com-content-category-blog .blog-item .readmore {
    display: none !important;
}

/* Tablet */
@media (max-width: 991px) {
    .blog-featured .blog-items,
    .com-content-category-blog .blog-items {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 28px 22px !important;
    }
}

/* Mobil */
@media (max-width: 600px) {
    .blog-featured .blog-items,
    .com-content-category-blog .blog-items {
        grid-template-columns: 1fr !important;
        gap: 26px !important;
    }

    .blog-featured .blog-item .page-header h2,
    .com-content-category-blog .blog-item .page-header h2 {
        font-size: 19px !important;
    }
}


/* =========================================================
   V10 – KÉPMÉRET KÉNYSZERÍTÉS
   Minden cikk-kártya fő képe pontosan ugyanakkora.
   ========================================================= */

@media (min-width: 992px) {
    .blog-featured .blog-item img,
    .com-content-category-blog .blog-item img {
        display: block !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        height: 205px !important;
        min-height: 205px !important;
        max-height: 205px !important;

        object-fit: cover !important;
        object-position: center center !important;

        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
    }

    .blog-featured .blog-item .item-image,
    .com-content-category-blog .blog-item .item-image,
    .blog-featured .blog-item figure,
    .com-content-category-blog .blog-item figure,
    .blog-featured .blog-item p:has(img),
    .com-content-category-blog .blog-item p:has(img) {
        display: block !important;
        width: 100% !important;
        height: 205px !important;
        min-height: 205px !important;
        max-height: 205px !important;
        overflow: hidden !important;
        margin: 0 0 8px !important;
        padding: 0 !important;
        float: none !important;
    }
}


/* =========================================================
   V11 – CIKK ELŐNÉZETI SZÖVEG TELJES ELREJTÉSE
   A kép alatt csak a cím/meta maradjon, bevezető szöveg ne.
   ========================================================= */

.blog-featured .blog-item .item-content > p:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:not(:has(img)),
.blog-featured .blog-item .item-content > div:not(.article-info):not(.page-header),
.com-content-category-blog .blog-item .item-content > div:not(.article-info):not(.page-header) {
    display: none !important;
}

/* Biztonsági szabály a régi, közvetlen bekezdésekre is */
.blog-featured .blog-item > p:not(:has(img)),
.com-content-category-blog .blog-item > p:not(:has(img)) {
    display: none !important;
}


/* =========================================================
   V12 – A KÉP ALATT SEMMI NE JELENJEN MEG
   ========================================================= */

/* Ha a kép .item-image blokkban van */
.blog-featured .blog-item .item-image ~ *,
.com-content-category-blog .blog-item .item-image ~ *,

/* Ha figure-ben van */
.blog-featured .blog-item figure:has(img) ~ *,
.com-content-category-blog .blog-item figure:has(img) ~ *,

/* Ha egy bekezdésben van */
.blog-featured .blog-item p:has(img) ~ *,
.com-content-category-blog .blog-item p:has(img) ~ * {
    display: none !important;
}

/* Ha a kép az item-content belsejében van */
.blog-featured .blog-item .item-content .item-image ~ *,
.com-content-category-blog .blog-item .item-content .item-image ~ *,
.blog-featured .blog-item .item-content figure:has(img) ~ *,
.com-content-category-blog .blog-item .item-content figure:has(img) ~ *,
.blog-featured .blog-item .item-content p:has(img) ~ *,
.com-content-category-blog .blog-item .item-content p:has(img) ~ * {
    display: none !important;
}

/* Minden cikkkártya szöveges tartalma a kép után tűnjön el */
.blog-featured .blog-item .item-content > p:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:not(:has(img)),
.blog-featured .blog-item .item-content > div:not(.item-image):not(.page-header):not(.article-info),
.com-content-category-blog .blog-item .item-content > div:not(.item-image):not(.page-header):not(.article-info) {
    display: none !important;
}


/* =========================================================
   V13 – KÉPEK EGY VONALBAN
   A cím legfeljebb 2 sor, így egyik kép sem csúszik le.
   ========================================================= */

.blog-featured .blog-item .page-header h2,
.com-content-category-blog .blog-item .page-header h2 {
    display: -webkit-box !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 0 6px !important;
    overflow: hidden !important;

    font-size: 20px !important;
    line-height: 24px !important;

    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

.blog-featured .blog-item .article-info,
.com-content-category-blog .blog-item .article-info {
    min-height: 20px !important;
    max-height: 20px !important;
    margin: 0 0 8px !important;
    overflow: hidden !important;
}


/* =========================================================
   V14 – CÍMEK 3 SORBAN
   Minden címmező azonos magasságú, így a képek egy vonalban maradnak.
   ========================================================= */

.blog-featured .blog-item .page-header h2,
.com-content-category-blog .blog-item .page-header h2 {
    min-height: 72px !important;
    max-height: 72px !important;
    line-height: 24px !important;

    -webkit-line-clamp: 3 !important;
}


/* =========================================================
   V15 – JOBB OLDALI LISTA LINKEK ALÁHÚZÁS NÉLKÜL
   ========================================================= */

.container-sidebar-right a,
.sidebar-right a,
.container-sidebar-right .latestnews a,
.container-sidebar-right .mod-articleslatest a {
    text-decoration: none !important;
}

.container-sidebar-right a:hover,
.sidebar-right a:hover,
.container-sidebar-right .latestnews a:hover,
.container-sidebar-right .mod-articleslatest a:hover {
    text-decoration: none !important;
}


/* =========================================================
   V18 – MOBIL JAVÍTÁS
   Hamburger vissza + reklám utáni nagy üres hely levágása
   ========================================================= */

@media (max-width: 991px) {

    /* ---------- HAMBURGER ---------- */

    .container-header .container-nav {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #050505 !important;
        overflow: visible !important;
    }

    .container-header .container-nav nav.navbar {
        position: relative !important;
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .container-header .navbar-toggler {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 52px !important;
        height: 48px !important;
        margin: 0 8px 0 auto !important;
        padding: 0 !important;
        background: #050505 !important;
        color: #fff !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        font-size: 0 !important;
        z-index: 1000 !important;
    }

    /* Biztos, egyszerű hamburger ikon */
    .container-header .navbar-toggler > *,
    .container-header .navbar-toggler svg {
        display: none !important;
    }

    .container-header .navbar-toggler::before {
        content: "☰" !important;
        display: block !important;
        color: #fff !important;
        font-family: Arial, Helvetica, sans-serif !important;
        font-size: 30px !important;
        font-weight: 400 !important;
        line-height: 1 !important;
    }

    /* Zárt állapot */
    .container-header .navbar-collapse.collapse:not(.show) {
        display: none !important;
    }

    /* Nyitott állapot */
    .container-header .navbar-collapse.show,
    .container-header .navbar-collapse.collapsing {
        display: block !important;
        width: 100% !important;
        flex-basis: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #050505 !important;
    }

    .container-header .navbar-collapse .mod-menu {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #050505 !important;
    }

    .container-header .navbar-collapse .mod-menu > li {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .container-header .navbar-collapse .mod-menu > li > a,
    .container-header .navbar-collapse .mod-menu > li > span {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: 100% !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0 !important;
        padding: 0 15px !important;
        box-sizing: border-box !important;
        background: #050505 !important;
        color: #fff !important;
        border: 0 !important;
        border-bottom: 1px solid #292929 !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 44px !important;
        text-align: left !important;
        text-decoration: none !important;
        transform: none !important;
    }

    .container-header .navbar-collapse .mod-menu > li.active > a,
    .container-header .navbar-collapse .mod-menu > li.current > a {
        background: var(--site-red) !important;
    }


    /* ---------- MOBIL OLDAL: NE MARADJON GRID-MAGASSÁG ---------- */

    .site-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "banner"
            "top-a"
            "top-b"
            "comp"
            "bot-a"
            "bot-b" !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    .site-grid .container-component,
    .container-component,
    main,
    .item-page,
    .com-content-article {
        min-height: 0 !important;
        height: auto !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    .site-grid .container-sidebar-right,
    .site-grid .container-sidebar-left {
        display: none !important;
    }


    /* ---------- ADSENSE / REKLÁM ÜRES HELY LEVÁGÁSA ---------- */

    .advertisement {
        height: auto !important;
        min-height: 0 !important;
        max-height: 320px !important;
        margin-top: 10px !important;
        margin-bottom: 10px !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .advertisement > div,
    .advertisement ins.adsbygoogle,
    .advertisement iframe {
        min-height: 0 !important;
        max-height: 300px !important;
        margin-bottom: 0 !important;
    }

    /* Az AdSense közvetlen szülője se tarthasson fenn 600+ px üres helyet */
    .item-page div:has(> ins.adsbygoogle),
    .com-content-article div:has(> ins.adsbygoogle) {
        min-height: 0 !important;
        height: auto !important;
        max-height: 320px !important;
        margin-bottom: 10px !important;
        overflow: hidden !important;
    }

    ins.adsbygoogle[data-ad-status="unfilled"] {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}


/* Keskeny telefonon a kereső maradjon a piros fejlécben,
   a hamburger pedig az alatta lévő fekete sor jobb szélén. */
@media (max-width: 620px) {

    .container-header .grid-child:first-child {
        min-height: 132px !important;
    }

    .container-header .container-topbar {
        top: 78px !important;
        left: 15px !important;
        right: auto !important;
        width: calc(100% - 30px) !important;
    }

    .container-header .container-nav {
        min-height: 48px !important;
    }
}

/* =========================================================
   LAPOZÓ – A SABLON KÉK ALAPSZÍNE HELYETT PIROS
   ========================================================= */

.pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 24px 0 10px;
}

.pagination .page-item {
    margin: 0 !important;
}

.pagination .page-link {
    display: block;
    min-width: 38px;
    padding: 8px 12px;
    box-sizing: border-box;
    background: #fff !important;
    border: 1px solid var(--site-red) !important;
    border-radius: 2px !important;
    color: var(--site-red) !important;
    text-align: center;
    text-decoration: none !important;
}

.pagination .page-link:hover,
.pagination .page-link:focus,
.pagination .page-item.active .page-link {
    background: var(--site-red) !important;
    border-color: var(--site-red) !important;
    color: #fff !important;
    box-shadow: none !important;
}

.pagination .page-item.disabled .page-link {
    background: #f2f2f2 !important;
    border-color: #d3d3d3 !important;
    color: #999 !important;
    cursor: not-allowed;
}


/* =========================================================
   MOBILOS ADSENSE – ÜRES AUTO ADS SLOTOK
   A megjelent reklám magasságát nem korlátozzuk.
   ========================================================= */

@media (max-width: 991px) {
    ins.adsbygoogle[data-ad-status="unfilled"] {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .advertisement:has(ins.adsbygoogle[data-ad-status="unfilled"]),
    div:has(> ins.adsbygoogle[data-ad-status="unfilled"]) {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .advertisement:has(ins.adsbygoogle:not([data-ad-status="unfilled"])),
    div:has(> ins.adsbygoogle:not([data-ad-status="unfilled"])) {
        max-height: none !important;
        overflow: visible !important;
    }
}

/* =========================================================
   V19 – KÖNNYŰ MOBIL CASSIOPEIA / ADSENSE VÉGLEGES FELÜLÍRÁS
   A főoldali egyszerűsített modulstruktúra megmarad.
   ========================================================= */

@media (max-width: 991px) {

    /* A mobilnavigáció alapból zárt, csak a hamburger nyitja ki. */
    .container-header .navbar-collapse.collapse:not(.show),
    .container-header .navbar-collapse.collapsing {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
    }

    .container-header .navbar-collapse.show {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    /* A fő tartalom és a cikkmodulok maradjanak láthatók. */
    .site-grid .container-component,
    .site-grid .container-component main,
    .site-grid .container-component .item-page,
    .site-grid .container-component .com-content-article,
    .blog-featured,
    .com-content-category-blog {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        min-height: 0 !important;
    }

    /* Reklámkonténer: nincs kényszerített maximális magasság. */
    .advertisement,
    .item-page .advertisement,
    .com-content-article .advertisement {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin-top: 10px !important;
        margin-bottom: 10px !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    /* Kitöltött reklámot nem korlátozunk és nem vágunk le. */
    .advertisement:has(ins.adsbygoogle:not([data-ad-status="unfilled"])),
    .item-page div:has(> ins.adsbygoogle:not([data-ad-status="unfilled"])),
    .com-content-article div:has(> ins.adsbygoogle:not([data-ad-status="unfilled"])) {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    /* Csak a ténylegesen üres slot és közvetlen szülője tűnjön el. */
    ins.adsbygoogle[data-ad-status="unfilled"],
    .advertisement:has(ins.adsbygoogle[data-ad-status="unfilled"]),
    .item-page div:has(> ins.adsbygoogle[data-ad-status="unfilled"]),
    .com-content-article div:has(> ins.adsbygoogle[data-ad-status="unfilled"]) {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }
}

/* =========================================================
   V20 – BLOGRÁCS: HIBÁS KÉP ÉS FELNYÍLÓ ELŐNÉZET JAVÍTÁSA
   A kártyák akkor is azonos szerkezetűek maradnak,
   ha egy cikk képe nem töltődik be.
   ========================================================= */

.blog-featured .blog-items,
.com-content-category-blog .blog-items {
    align-items: start !important;
}

.blog-featured .blog-item,
.com-content-category-blog .blog-item {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

/* Minden lehetséges kép-tartó egységes magasságú. */
.blog-featured .blog-item .item-image,
.com-content-category-blog .blog-item .item-image,
.blog-featured .blog-item figure:has(img),
.com-content-category-blog .blog-item figure:has(img),
.blog-featured .blog-item p:has(> img),
.com-content-category-blog .blog-item p:has(> img),
.blog-featured .blog-item p:has(> a > img),
.com-content-category-blog .blog-item p:has(> a > img) {
    display: block !important;
    width: 100% !important;
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    overflow: hidden !important;
    float: none !important;
    background: #f1f1f1 !important;
}

.blog-featured .blog-item .item-image img,
.com-content-category-blog .blog-item .item-image img,
.blog-featured .blog-item figure img,
.com-content-category-blog .blog-item figure img,
.blog-featured .blog-item p:has(> img) > img,
.com-content-category-blog .blog-item p:has(> img) > img,
.blog-featured .blog-item p:has(> a > img) img,
.com-content-category-blog .blog-item p:has(> a > img) img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    float: none !important;
}

/* A bevezető és a teljes cikk-szöveg ne nyissa fel a kártyát. */
.blog-featured .blog-item .item-content > p:not(:has(img)),
.com-content-category-blog .blog-item .item-content > p:not(:has(img)),
.blog-featured .blog-item .item-content > div:not(.item-image):not(.page-header):not(.article-info),
.com-content-category-blog .blog-item .item-content > div:not(.item-image):not(.page-header):not(.article-info),
.blog-featured .blog-item > p:not(:has(img)),
.com-content-category-blog .blog-item > p:not(:has(img)) {
    display: none !important;
}

/* Másik Joomla-kimenetnél a szöveg közvetlenül a kártyában jelenik meg. */
.blog-featured .blog-item > div:not(.item-content):not(.item-image):not(.page-header):not(.article-info),
.com-content-category-blog .blog-item > div:not(.item-content):not(.item-image):not(.page-header):not(.article-info) {
    display: none !important;
}

/* A cím és meta maradjon látható, de ne okozzon vízszintes túlcsordulást. */
.blog-featured .blog-item .page-header,
.com-content-category-blog .blog-item .page-header,
.blog-featured .blog-item .article-info,
.com-content-category-blog .blog-item .article-info {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

@media (max-width: 991px) {
    .blog-featured .blog-item .item-image,
    .com-content-category-blog .blog-item .item-image,
    .blog-featured .blog-item figure:has(img),
    .com-content-category-blog .blog-item figure:has(img),
    .blog-featured .blog-item p:has(> img),
    .com-content-category-blog .blog-item p:has(> img),
    .blog-featured .blog-item p:has(> a > img),
    .com-content-category-blog .blog-item p:has(> a > img) {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 16 / 9 !important;
    }
}

/* =========================================================
   V21 – BLOGKÁRTYA: FELNYÍLÓ „LÓBETŰS” CIKKELŐNÉZET TILTÁSA
   A kártyán csak kép, kártyacím és meta maradjon.
   ========================================================= */

.blog-featured .blog-item .item-content > h1,
.blog-featured .blog-item .item-content > h3,
.com-content-category-blog .blog-item .item-content > h1,
.com-content-category-blog .blog-item .item-content > h3,
.blog-featured .blog-item .item-content h1:not(.page-header h1),
.blog-featured .blog-item .item-content h3:not(.page-header h3),
.com-content-category-blog .blog-item .item-content h1:not(.page-header h1),
.com-content-category-blog .blog-item .item-content h3:not(.page-header h3),
.blog-featured .blog-item .item-content .introtext,
.com-content-category-blog .blog-item .item-content .introtext,
.blog-featured .blog-item .item-content .readmore,
.com-content-category-blog .blog-item .item-content .readmore {
    display: none !important;
}

/* A teljes cikkből bekerülő másodlagos h2/h4 címek se jelenjenek meg. */
.blog-featured .blog-item .item-content > h2:not(.page-header h2),
.blog-featured .blog-item .item-content > h4,
.com-content-category-blog .blog-item .item-content > h2:not(.page-header h2),
.com-content-category-blog .blog-item .item-content > h4 {
    display: none !important;
}

/* A kártya előnézetében a nem engedélyezett szöveges elemek maradjanak rejtve,
   de a képet tartalmazó elem és a Joomla kártyacíme maradjon látható. */
.blog-featured .blog-item .item-content > *:not(.page-header):not(.article-info):not(.item-image):not(figure):not(p:has(img)),
.com-content-category-blog .blog-item .item-content > *:not(.page-header):not(.article-info):not(.item-image):not(figure):not(p:has(img)) {
    display: none !important;
}

.blog-featured .blog-item .item-content > .page-header,
.blog-featured .blog-item .item-content > .article-info,
.blog-featured .blog-item .item-content > .item-image,
.blog-featured .blog-item .item-content > figure:has(img),
.blog-featured .blog-item .item-content > p:has(img),
.com-content-category-blog .blog-item .item-content > .page-header,
.com-content-category-blog .blog-item .item-content > .article-info,
.com-content-category-blog .blog-item .item-content > .item-image,
.com-content-category-blog .blog-item .item-content > figure:has(img),
.com-content-category-blog .blog-item .item-content > p:has(img) {
    display: block !important;
}

/* =========================================================
   V23 – H1-BEN LÉVŐ KÉP MEGTARTÁSA A BLOGKÁRTYÁBAN
   Egyes cikkeknél a Joomla a képet h1 elembe teszi.
   A címszöveget elrejtjük, de a képet megtartjuk.
   ========================================================= */

.blog-featured .blog-item .item-content > h1:has(img),
.com-content-category-blog .blog-item .item-content > h1:has(img),
.blog-featured .blog-item > h1:has(img),
.com-content-category-blog .blog-item > h1:has(img) {
    display: block !important;
    width: 100% !important;
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.blog-featured .blog-item .item-content > h1:has(img) img,
.com-content-category-blog .blog-item .item-content > h1:has(img) img,
.blog-featured .blog-item > h1:has(img) img,
.com-content-category-blog .blog-item > h1:has(img) img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 991px) {
    .blog-featured .blog-item .item-content > h1:has(img),
    .com-content-category-blog .blog-item .item-content > h1:has(img),
    .blog-featured .blog-item > h1:has(img),
    .com-content-category-blog .blog-item > h1:has(img) {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 16 / 9 !important;
    }
}
/* =========================================================
   V24 – BÁRMELY H1-BEN LÉVŐ KÉP MEGTARTÁSA
   A Joomla-rács többféle HTML-szerkezetet használ.
   ========================================================= */

.blog-featured .blog-item h1:has(img),
.com-content-category-blog .blog-item h1:has(img) {
    display: block !important;
    width: 100% !important;
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.blog-featured .blog-item h1:has(img) img,
.com-content-category-blog .blog-item h1:has(img) img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 991px) {
    .blog-featured .blog-item h1:has(img),
    .com-content-category-blog .blog-item h1:has(img) {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 16 / 9 !important;
    }
}
/* =========================================================
   V25 – CÉLZOTT KÉPFALLBACK
   Ennél az egy cikknél a kép csak a teljes cikk h1 elemében
   van, ezért a Joomla kategóriarácsába nem kerül bele.
   Más kártyát nem érint.
   ========================================================= */

.com-content-category-blog .blog-item:has(a[href*="oriasi-fordulat-a-miniszterium-cafolta-megsem-buntetnek-a-kukak-miatt-csak-ezek-valtoznak"]):not(:has(img)) .item-content::before,
.blog-featured .blog-item:has(a[href*="oriasi-fordulat-a-miniszterium-cafolta-megsem-buntetnek-a-kukak-miatt-csak-ezek-valtoznak"]):not(:has(img)) .item-content::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 205px !important;
    margin: 0 0 14px !important;
    background: url("/images/friss/szemet-860x573.webp") center center / cover no-repeat !important;
}

@media (max-width: 991px) {
    .com-content-category-blog .blog-item:has(a[href*="oriasi-fordulat-a-miniszterium-cafolta-megsem-buntetnek-a-kukak-miatt-csak-ezek-valtoznak"]):not(:has(img)) .item-content::before,
    .blog-featured .blog-item:has(a[href*="oriasi-fordulat-a-miniszterium-cafolta-megsem-buntetnek-a-kukak-miatt-csak-ezek-valtoznak"]):not(:has(img)) .item-content::before {
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }
}
/* =========================================================
   V26 – KÉPET TARTALMAZÓ CÍMSOROK MEGTARTÁSA
   Egyes Joomla-cikkekben a vezető kép h1/h2/h3 elembe került.
   Csak a képet ténylegesen tartalmazó címsort érinti.
   ========================================================= */

.blog-featured .blog-item .item-content h1:has(img),
.blog-featured .blog-item .item-content h2:has(img),
.blog-featured .blog-item .item-content h3:has(img),
.blog-featured .blog-item .item-content h4:has(img),
.com-content-category-blog .blog-item .item-content h1:has(img),
.com-content-category-blog .blog-item .item-content h2:has(img),
.com-content-category-blog .blog-item .item-content h3:has(img),
.com-content-category-blog .blog-item .item-content h4:has(img) {
    display: block !important;
    width: 100% !important;
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.blog-featured .blog-item .item-content h1:has(img) img,
.blog-featured .blog-item .item-content h2:has(img) img,
.blog-featured .blog-item .item-content h3:has(img) img,
.blog-featured .blog-item .item-content h4:has(img) img,
.com-content-category-blog .blog-item .item-content h1:has(img) img,
.com-content-category-blog .blog-item .item-content h2:has(img) img,
.com-content-category-blog .blog-item .item-content h3:has(img) img,
.com-content-category-blog .blog-item .item-content h4:has(img) img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 991px) {
    .blog-featured .blog-item .item-content h1:has(img),
    .blog-featured .blog-item .item-content h2:has(img),
    .blog-featured .blog-item .item-content h3:has(img),
    .blog-featured .blog-item .item-content h4:has(img),
    .com-content-category-blog .blog-item .item-content h1:has(img),
    .com-content-category-blog .blog-item .item-content h2:has(img),
    .com-content-category-blog .blog-item .item-content h3:has(img),
    .com-content-category-blog .blog-item .item-content h4:has(img) {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 16 / 9 !important;
    }
}
/* =========================================================
   V27 – MOBIL ADSENSE SLOT ÁLLAPOTKEZELÉS
   Csak a közvetlen reklámszülő tűnik el valóban üres slotnál.
   A kitöltött slot nem kap fix magasságkorlátozást.
   ========================================================= */

@media (max-width: 991px) {
    .mod-banners__item .banneritem:has(> ins.adsbygoogle[data-ad-status="unfilled"]),
    .mod-banners__item .banneritem:has(> ins.adsbygoogle[data-adsbygoogle-status="unfilled"]),
    .com-content-article__body:has(> ins.adsbygoogle[data-ad-status="unfilled"]),
    .com-content-article__body:has(> ins.adsbygoogle[data-adsbygoogle-status="unfilled"]) {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .mod-banners__item .banneritem:has(> ins.adsbygoogle:not([data-ad-status="unfilled"])),
    .mod-banners__item .banneritem:has(> ins.adsbygoogle:not([data-adsbygoogle-status="unfilled"])),
    .com-content-article__body:has(> ins.adsbygoogle:not([data-ad-status="unfilled"])),
    .com-content-article__body:has(> ins.adsbygoogle:not([data-adsbygoogle-status="unfilled"])) {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .mod-banners__item .banneritem > ins.adsbygoogle,
    .com-content-article__body > ins.adsbygoogle {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 10px auto !important;
    }
}
/* =========================================================
   V28 – BLOG ITEM TARTALOM VISSZAÁLLÍTÁSA
   A fallback .item-image ne rejtse el a kártya tartalmát.
   ========================================================= */

.blog-featured .blog-item .item-image ~ .item-content,
.com-content-category-blog .blog-item .item-image ~ .item-content {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

.blog-featured .blog-item .item-image ~ .item-content > .page-header,
.blog-featured .blog-item .item-image ~ .item-content > .article-info,
.com-content-category-blog .blog-item .item-image ~ .item-content > .page-header,
.com-content-category-blog .blog-item .item-image ~ .item-content > .article-info {
    display: block !important;
    visibility: visible !important;
}
/* V29 – mobilon a rejtett jobb oldali Legfrissebbek ne foglaljon helyet */
@media (max-width: 991px) {
    .site-grid .container-sidebar-right,
    .site-grid .container-sidebar-right > .sidebar-right,
    .site-grid .container-sidebar-right .sidebar-right {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }
}

/* V30 – fekete footer, fehér tájékoztató szöveg */
.container-footer.footer {
    background: #000 !important;
    background-image: none !important;
    color: #fff !important;
}

.container-footer.footer .grid-child,
.container-footer.footer .mod-custom,
.container-footer.footer .mod-custom p,
.container-footer.footer .mod-custom span {
    color: #fff !important;
}

@media (max-width: 991px) {
    .site-grid {
        padding-bottom: 0 !important;
    }

    .container-footer.footer .grid-child {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
}
