/*
 * Erzsebetvaros.hu – rancfelvarras (2026-11)
 * Fejlec + menu, foldali hirkartyak, lablec.
 * Csak CSS: a sablonokhoz nem nyul. Kikapcsolas: a master.blade.php-bol
 * a facelift.css <link> sort kell torolni.
 */

:root {
    --ev-navy: #192c4c;
    --ev-navy-dark: #101f38;
    --ev-cyan: #19b9ed;
    --ev-cyan-dark: #0f8fc0;
    --ev-text: #1d2433;
    --ev-muted: #5d6778;
    --ev-line: #e3e8ef;
    --ev-bg-soft: #f4f6f9;
    --ev-radius: 12px;
    --ev-shadow: 0 2px 6px rgba(16, 31, 56, .06), 0 8px 24px rgba(16, 31, 56, .08);
    --ev-shadow-hover: 0 6px 14px rgba(16, 31, 56, .10), 0 18px 40px rgba(16, 31, 56, .14);
}

/* ===================================================================
 * 1. FEJLEC
 * =================================================================== */

/* felso elerhetosegi sav: kisebb, letisztultabb */
#th-header > .container:first-child .col-sm-9 {
    font-size: 14px !important;
    color: var(--ev-muted) !important;
    letter-spacing: .01em;
}

#th-header > .container:first-child .col-sm-3 a {
    transition: transform .15s ease, opacity .15s ease;
}

#th-header > .container:first-child .col-sm-3 a:hover {
    transform: translateY(-2px);
    opacity: .85;
}

/* logo sav: finom szinatmenet a lapos sotetkek helyett */
#th-header > .row[style*="192c4c"] {
    background: linear-gradient(135deg, var(--ev-navy-dark) 0%, var(--ev-navy) 55%, #1f3a63 100%) !important;
    box-shadow: inset 0 -3px 0 var(--ev-cyan);
    margin-bottom: 0 !important;
}

/* ===================================================================
 * 2. FOMENU (asztali)
 * =================================================================== */

/* csak asztali szelessegen: mobilon a sablon a .desktop-view-t elrejti */
@media (min-width: 768px) {
    #th-header .th-navigation.desktop-view {
        display: flow-root;
        float: none !important;
        width: 100% !important;
        padding: 6px 0 0;
    }

    #th-header .th-navigation.desktop-view #th-nav,
    #th-header .th-navigation.desktop-view #th-navigation {
        float: none !important;
        width: 100% !important;
    }

    #th-header .th-navigation.desktop-view #th-nav {
        border-bottom: 1px solid var(--ev-line);
    }
}

#th-navigation > ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    margin: 0;
    padding: 0;
}

#th-navigation > ul > li.th-dropdown {
    border-bottom: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    float: none !important;
}

/* a regi lenyilo nyil (fekete negyzet) eltuntetese – a menu nem lenyilo */
#th-navigation > ul > li.th-dropdown::before,
#th-navigation > ul > li.th-dropdown::after,
#th-navigation > ul > li.th-dropdown > a::before {
    display: none !important;
}

#th-navigation > ul > li > a {
    display: block;
    position: relative;
    padding: 14px 18px 16px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: .04em;
    color: var(--ev-navy) !important;
    text-decoration: none !important;
    border-radius: 8px 8px 0 0;
    transition: color .15s ease, background-color .15s ease;
}

/* animalt alahuzas (a regi tema esetleges ::after nyilat is felulirja) */
#th-navigation > ul > li.th-dropdown > a::after {
    content: "";
    display: block !important;
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 6px;
    height: 3px;
    border-radius: 3px;
    background: var(--ev-cyan);
    transform: scaleX(.35);
    transform-origin: left center;
    opacity: .55;
    transition: transform .2s ease, opacity .2s ease;
}

#th-navigation > ul > li > a:hover,
#th-navigation > ul > li > a:focus-visible {
    background: var(--ev-bg-soft);
    color: var(--ev-cyan-dark) !important;
}

#th-navigation > ul > li > a:hover::after,
#th-navigation > ul > li > a:focus-visible::after,
#th-navigation > ul > li.active > a::after {
    transform: scaleX(1);
    opacity: 1;
}

#th-navigation > ul > li.active > a {
    color: var(--ev-cyan-dark) !important;
}

#th-navigation > ul > li > a:focus-visible {
    outline: 3px solid rgba(25, 185, 237, .45);
    outline-offset: -3px;
}

/* almenu sav (kivalasztott fomenu alatt) – cimkek */
#hidden_menus .scrollmenu {
    padding: 12px 0 4px;
    margin-left: 0 !important;
    background: transparent !important; /* a regi cian sav helyett */
    border-radius: 0 !important;
    white-space: normal !important;
    text-align: center;
}

#hidden_menus .scrollmenu a {
    display: inline-block;
    margin: 0 6px 8px 0;
    padding: 7px 14px !important;
    border-radius: 999px;
    background: var(--ev-bg-soft);
    border: 1px solid var(--ev-line);
    color: var(--ev-navy) !important;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

#hidden_menus .scrollmenu a:hover,
#hidden_menus .scrollmenu a[style*="grey"] {
    background: var(--ev-navy) !important;
    border-color: var(--ev-navy);
    color: #fff !important;
}

/* a menu alatti ures helykitolto kisebb */
#th-header .th-navigation.desktop-view > div[style*="height: 39px"] {
    height: 8px !important;
}

/* mobil menusor: asztalon rejtve (inline display:flex-et kap a sablonban,
   eddig csak a lebego asztali menu takarta el), mobilon gorgetheto cimkek */
@media (min-width: 768px) {
    #th-header .scrollmenu2 {
        display: none !important;
    }
}

#th-header .scrollmenu2 {
    gap: 8px !important;
    padding: 10px 2px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

#th-header .scrollmenu2::-webkit-scrollbar {
    display: none;
}

#th-header .scrollmenu2 > div > a {
    display: inline-block;
    white-space: nowrap;
    padding: 8px 14px;
    border-radius: 999px;
    background: var(--ev-bg-soft);
    border: 1px solid var(--ev-line);
    color: var(--ev-navy) !important;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .03em;
    text-decoration: none !important;
}

#th-header .scrollmenu2 > div.active > a {
    background: var(--ev-navy);
    border-color: var(--ev-navy);
    color: #fff !important;
}

/* ===================================================================
 * 3. FOOLDALI HIRKARTYAK
 * =================================================================== */

.th-main .row > .col-md-3 > a:has(> .th-themepost-img) {
    display: flex;
    flex-direction: column;
    height: calc(100% - 30px);
    margin-bottom: 30px;
    background: #fff;
    border: 1px solid var(--ev-line);
    border-radius: var(--ev-radius);
    overflow: hidden;
    box-shadow: var(--ev-shadow);
    text-decoration: none !important;
    color: var(--ev-text) !important;
    transition: transform .2s ease, box-shadow .2s ease;
}

.th-main .row:has(> .col-md-3 > a > .th-themepost-img) {
    display: flex;
    flex-wrap: wrap;
}

.th-main .row > .col-md-3 > a:has(> .th-themepost-img):hover,
.th-main .row > .col-md-3 > a:has(> .th-themepost-img):focus-visible {
    transform: translateY(-4px);
    box-shadow: var(--ev-shadow-hover);
}

.th-main .row > .col-md-3 > a:has(> .th-themepost-img):focus-visible {
    outline: 3px solid rgba(25, 185, 237, .55);
    outline-offset: 2px;
}

.th-main .col-md-3 > a > .th-themepost-img {
    margin: 0 !important;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: var(--ev-bg-soft);
}

.th-main .col-md-3 > a > .th-themepost-img img.fourImage {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
    transition: transform .4s ease;
}

.th-main .col-md-3 > a:hover > .th-themepost-img img.fourImage {
    transform: scale(1.05);
}

/* metaadatok: kategoria cimke + datum */
.th-main .col-md-3 > a > .th-postmatadata {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    margin: 0 !important;
    padding: 14px 16px 6px !important;
    text-align: left;
    list-style: none;
}

.th-main .col-md-3 > a > .th-postmatadata li {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    line-height: 1.3;
}

.th-main .col-md-3 > a > .th-postmatadata li::before,
.th-main .col-md-3 > a > .th-postmatadata li::after {
    content: none !important;
    display: none !important;
}

.th-main .col-md-3 > a > .th-postmatadata li:first-child {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--ev-cyan-dark);
    background: rgba(25, 185, 237, .10);
    padding: 3px 8px !important;
    border-radius: 999px;
}

.th-main .col-md-3 > a > .th-postmatadata li time {
    font-size: 12px;
    color: var(--ev-muted);
}

/* cim */
.th-main .col-md-3 > a > .th-posttitle {
    padding: 4px 16px 18px;
    flex: 1 1 auto;
}

.th-main .col-md-3 > a > .th-posttitle h2 {
    margin: 0;
    font-size: 17px !important;
    line-height: 1.35 !important;
    font-weight: 700;
    text-align: left !important;
    color: var(--ev-navy) !important;
    white-space: normal !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color .15s ease;
}

.th-main .col-md-3 > a:hover > .th-posttitle h2 {
    color: var(--ev-cyan-dark) !important;
}

/* lapozo */
.th-main .pagination > li > a,
.th-main .pagination > li > span {
    border-radius: 8px !important;
    margin: 0 3px;
    border-color: var(--ev-line);
    color: var(--ev-navy) !important;
    text-decoration: none !important;
    min-width: 38px;
    text-align: center;
}

.th-main .pagination > .active > a,
.th-main .pagination > .active > span {
    background: var(--ev-navy) !important;
    border-color: var(--ev-navy) !important;
    color: #fff !important;
}

/* ===================================================================
 * 4. LABLEC
 * =================================================================== */

/* fo lablec-blokk: sotetkek hatter */
#th-footer > div[style*="border-bottom"] {
    background: linear-gradient(180deg, var(--ev-navy) 0%, var(--ev-navy-dark) 100%);
    border-bottom: 0 !important;
    color: rgba(255, 255, 255, .85);
    padding: 50px 0 20px;
}

#th-footer > div[style*="border-bottom"] .th-footertitle h3,
#th-footer > div[style*="#f4f4f4"]:not(.partner-mobile) .th-footertitle h3 {
    position: relative;
    padding-bottom: 12px;
    margin-bottom: 18px;
    font-size: 15px;
    letter-spacing: .08em;
}

#th-footer > div[style*="border-bottom"] .th-footertitle h3 {
    color: #fff !important;
}

#th-footer > div[style*="border-bottom"] .th-footertitle h3::after,
#th-footer > div[style*="#f4f4f4"]:not(.partner-mobile) .th-footertitle h3::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 36px;
    height: 3px;
    border-radius: 3px;
    background: var(--ev-cyan);
}

#th-footer > div[style*="border-bottom"] .th-description,
#th-footer > div[style*="border-bottom"] .th-description *,
#th-footer > div[style*="border-bottom"] .th-postmatadata li,
#th-footer > div[style*="border-bottom"] .th-postmatadata a {
    color: rgba(255, 255, 255, .75) !important;
}

#th-footer > div[style*="border-bottom"] .th-postmatadata li::before {
    content: none !important;
}

#th-footer > div[style*="border-bottom"] .th-posttitle h4 a,
#th-footer > div[style*="border-bottom"] .th-popularlinks a {
    color: #fff !important;
    text-decoration: none !important;
    transition: color .15s ease;
}

#th-footer > div[style*="border-bottom"] .th-posttitle h4 a:hover,
#th-footer > div[style*="border-bottom"] .th-popularlinks a:hover {
    color: var(--ev-cyan) !important;
}

#th-footer > div[style*="border-bottom"] .th-mostpopularpost figure img {
    border-radius: 8px;
}

/* terkep lekerekitve */
#th-footer #mymap-canvas,
#th-footer #mymap-canvas iframe {
    border-radius: var(--ev-radius);
}

/* hir kategoriak: sorok elvalasztoval, szam cimkeben */
#th-footer .th-popularlinks ul li a {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

#th-footer .th-popularlinks ul li a span + span {
    font-size: 12px;
    font-weight: 700;
    padding: 2px 10px;
    border-radius: 999px;
    background: rgba(25, 185, 237, .18);
    color: var(--ev-cyan) !important;
}

/* kozossegi sav */
#th-footer > div[style*="#f4f4f4"]:not(.partner-mobile) {
    background: var(--ev-bg-soft) !important;
    border-top: 1px solid var(--ev-line);
    padding: 34px 0 10px;
}

#th-footer .th-instagram li img {
    border-radius: 8px;
    transition: transform .2s ease, opacity .2s ease;
}

#th-footer .th-instagram li a:hover img {
    transform: scale(1.04);
    opacity: .9;
}

/* a hirlevel-feliratkozas atmenetileg szunetel (INCIDENS 2026-11-12) */
#th-footer .col-md-4:has(> .th-footercol > .th-widget-newsletter) {
    display: none !important;
}

/* also sav */
#th-footer .th-footerbar {
    background: var(--ev-navy-dark) !important;
    border-top: 3px solid var(--ev-cyan);
}

#th-footer .th-footerbar,
#th-footer .th-footerbar a,
#th-footer .th-footerbar span {
    color: rgba(255, 255, 255, .8) !important;
}

#th-footer .th-footerbar a:hover {
    color: var(--ev-cyan) !important;
}

/* ===================================================================
 * 5. AKADALYMENTESSEG
 * =================================================================== */

/* akadalymentes (WCAG AA) cian szovegszin: 5.09:1 feheren, 4.70:1 #f4f6f9-en */
:root {
    --ev-cyan-text: #0a76a2;
}

#th-navigation > ul > li > a:hover,
#th-navigation > ul > li > a:focus-visible,
#th-navigation > ul > li.active > a {
    color: var(--ev-cyan-text) !important;
}

.th-main .col-md-3 > a > .th-postmatadata li:first-child {
    color: var(--ev-cyan-text);
}

.th-main .col-md-3 > a:hover > .th-posttitle h2,
.th-main .col-md-3 > a:focus-visible > .th-posttitle h2 {
    color: var(--ev-cyan-text) !important;
}

#th-footer .th-popularlinks ul li a span + span {
    color: #4cc9f2 !important; /* 5.2:1 a sotetkek hatteren */
}

/* jol lathato billentyuzetes fokusz */
#th-navigation > ul > li > a:focus-visible {
    outline: 2px solid var(--ev-cyan-text);
    outline-offset: -2px;
}

.th-main .row > .col-md-3 > a:focus-visible {
    outline: 3px solid var(--ev-cyan-text);
    outline-offset: 3px;
}

#hidden_menus .scrollmenu a:focus-visible,
#th-header .scrollmenu2 > div > a:focus-visible,
.th-main .pagination > li > a:focus-visible,
#th-header > .container:first-child .col-sm-3 a:focus-visible {
    outline: 2px solid var(--ev-cyan-text);
    outline-offset: 2px;
}

#hidden_menus .scrollmenu a:focus-visible {
    background: var(--ev-navy) !important;
    border-color: var(--ev-navy);
    color: #fff !important;
}

.th-main .pagination > li > a:focus-visible {
    z-index: 3;
}

#th-footer a:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
    color: var(--ev-cyan) !important;
}

#th-footer > div[style*="#f4f4f4"] a:focus-visible {
    outline-color: var(--ev-navy);
}

/* csokkentett mozgas (:has nelkuli szelektorokkal, hogy mindenhol mukodjon) */
@media (prefers-reduced-motion: reduce) {
    #th-header a,
    #th-navigation a,
    #th-navigation a::after,
    #hidden_menus a,
    .th-main .col-md-3 > a,
    .th-main .col-md-3 > a *,
    #th-footer a,
    #th-footer img {
        transition: none !important;
    }

    #th-header > .container:first-child .col-sm-3 a:hover,
    .th-main .row > .col-md-3 > a:hover,
    .th-main .row > .col-md-3 > a:focus-visible,
    .th-main .col-md-3 > a:hover > .th-themepost-img img.fourImage,
    #th-footer .th-instagram li a:hover img {
        transform: none !important;
    }
}

/* ===================================================================
 * 6. ELLENORZES UTANI JAVITASOK
 * =================================================================== */

/* aktiv fomenupont: a regi tema cian blokkjat (style.css) semlegesiteni */
#th-navigation > ul > li.th-dropdown,
#th-navigation > ul > li.th-dropdown.active {
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
}

#th-navigation > ul > li.active > a {
    background: var(--ev-bg-soft);
}

/* tablet: a menu egy sorban maradjon, az alahuzas igazodjon */
@media (min-width: 768px) and (max-width: 991px) {
    #th-navigation > ul > li > a {
        padding: 12px 10px 14px !important;
        font-size: 13px !important;
        letter-spacing: .02em;
    }

    #th-navigation > ul > li.th-dropdown > a::after {
        left: 10px;
        right: 10px;
    }
}

@media (max-width: 991px) {
    .th-main .col-md-3 > a > .th-posttitle h2 {
        font-size: 18px !important;
    }

    /* kategoriaoldal: a kartyak teljes szelessegben (ott nincs col-xs-12) */
    .th-main .row:has(> .col-md-3 > a > .th-themepost-img) > .col-md-3 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

/* tort szelessegeknel (Windows nagyitas) se jelenjen meg mindket menu */
@media (min-width: 767.02px) and (max-width: 767.98px) {
    #th-header .th-navigation.desktop-view {
        display: none !important;
    }

    #th-header .mobile-view {
        display: flex;
    }
}

/* Bootstrap 3 clearfix ne legyen flex elem a kartyasorban */
.th-main .row:has(> .col-md-3 > a > .th-themepost-img)::before,
.th-main .row:has(> .col-md-3 > a > .th-themepost-img)::after {
    content: none;
    display: none;
}

/* letiltott lapozo-nyilak ne tunjenek kattinthatonak; tordelt sorok kozott hely */
.th-main .pagination > li > a,
.th-main .pagination > li > span {
    margin-bottom: 6px;
}

.th-main .pagination > .disabled > a,
.th-main .pagination > .disabled > span {
    color: #9aa3b2 !important;
    background: #fff !important;
    cursor: not-allowed;
}

/* a kartyacim 3 sorra vagva (szabvanyos tulajdonsag is) */
.th-main .col-md-3 > a > .th-posttitle h2 {
    line-clamp: 3;
}

/* :has() nelkuli bongeszok: a cimmagassag-feloldas csak ahol a kartyas racs is mukodik,
   kulonben a lebego Bootstrap racs "lepcsozne"; egyszerusitett kartyakinezet */
@supports selector(:has(*)) {
    .th-main .col-md-3 > a > .th-posttitle {
        height: auto !important;
    }
}

@supports not selector(:has(*)) {
    .th-main .row > .col-md-3 > a {
        display: block;
        margin-bottom: 30px;
        background: #fff;
        border: 1px solid var(--ev-line);
        border-radius: var(--ev-radius);
        overflow: hidden;
        box-shadow: var(--ev-shadow);
    }
}

/* hirlevel-blokk rejtese :has() nelkul is (a tartalom rejtve, az oszlop ures marad) */
#th-footer .th-widget-newsletter {
    display: none !important;
}

/* a hirlevel-oszlop helyen ne maradjon lyuk: a maradek ket oszlop kozepre */
@media (min-width: 992px) {
    #th-footer .th-socialwidgets > .col-md-4:has(> .th-footercol > .th-widget-instagram) {
        margin-left: 16.6667%;
    }
}
