/* =========================================================
   EnFavori Homepage V4
   Clean source of truth for the active homepage only.
   Isolated namespace; no legacy homepage style dependency.
   ========================================================= */

.ef4 {
    --ef4-navy:#102a43;
    --ef4-navy-deep:#091d31;
    --ef4-text:#243b53;
    --ef4-muted:#68788d;
    --ef4-faint:#93a3b7;
    --ef4-line:#e2e8f0;
    --ef4-soft:#f5f8fb;
    --ef4-white:#fff;
    --ef4-teal:#0f9e91;
    --ef4-teal-bright:#18c2b1;
    --ef4-teal-soft:#e7f8f5;
    --ef4-gold:#f2b705;
    --ef4-red:#e94b68;
    /* Canonical card surface: every homepage card consumes these same tokens.
       Change one value here instead of adding overrides to individual sections. */
    --ef4-card-border:#a9bbcb;
    --ef4-card-border-hover:#659da0;
    --ef4-card-radius:17px;
    --ef4-card-shadow:0 1px 0 rgba(10,30,51,.045),0 15px 32px -24px rgba(10,30,51,.42);
    --ef4-card-shadow-hover:0 1px 0 rgba(10,30,51,.05),0 21px 38px -25px rgba(10,30,51,.48);
    background:var(--ef4-soft);
    color:var(--ef4-text);
}

.ef4 *,
.ef4 *::before,
.ef4 *::after { box-sizing:border-box; }

.ef4 a { text-underline-offset:2px; }

/* White/dark themes get the same visible separation between adjacent cards. */
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef4 {
    --ef4-card-border:#5b7288;
    --ef4-card-border-hover:#82babb;
    --ef4-card-shadow:0 1px 0 rgba(0,0,0,.12),0 14px 32px -24px rgba(0,0,0,.5);
    --ef4-card-shadow-hover:0 2px 0 rgba(0,0,0,.15),0 18px 38px -24px rgba(0,0,0,.6);
    background:#111f30;
    color:#dae9f3;
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef4 .ef4-section__head h2 {
    color:#f0f8ff;
}

/* HERO */
.ef4-hero {
    position:relative;
    overflow:hidden;
    padding:52px 0;
    background:
        radial-gradient(circle at 80% 0%,rgba(24,194,177,.15),transparent 30%),
        radial-gradient(circle at 15% 100%,rgba(242,183,5,.08),transparent 24%),
        linear-gradient(135deg,var(--ef4-navy) 0%,var(--ef4-navy-deep) 100%);
    background-color:var(--ef4-navy-deep);
    color:#fff;
}

.ef4-hero.has-background {
    background:
        radial-gradient(circle at 80% 0%,rgba(24,194,177,.12),transparent 30%),
        radial-gradient(circle at 15% 100%,rgba(242,183,5,.07),transparent 24%),
        linear-gradient(90deg,rgba(5,22,40,.94) 0%,rgba(7,29,50,.82) 46%,rgba(6,23,40,.64) 100%),
        var(--ef4-hero-image) center 48% / cover no-repeat;
}

.ef4-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
    gap:44px;
    align-items:center;
}

.ef4-hero__grid.no-board {
    display:block;
}

.ef4-hero.no-board {
    padding:38px 0 34px;
}

.ef4-hero__grid.no-board .ef4-hero__copy {
    width:100%;
}

.ef4-hero__grid.no-board h1 {
    max-width:1040px;
}

.ef4-hero__grid.no-board .ef4-hero__lead {
    max-width:900px;
}

.ef4-hero__copy { min-width:0; }

.ef4-hero__eyebrow {
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:18px;
    padding:7px 12px;
    border:1px solid rgba(24,194,177,.25);
    border-radius:999px;
    background:rgba(24,194,177,.08);
    color:#5de4d7;
    font-size:12px;
    font-weight:800;
    letter-spacing:.02em;
}

.ef4-hero__eyebrow i {
    width:8px;
    height:8px;
    border-radius:50%;
    background:#20d7c4;
    box-shadow:0 0 0 4px rgba(32,215,196,.13);
}

.ef4-hero h1 {
    max-width:720px;
    margin:0;
    color:#fff;
    font-size:clamp(38px,5vw,62px);
    font-weight:900;
    line-height:1.02;
    letter-spacing:-.035em;
}

.ef4-hero h1 span {
    background:linear-gradient(100deg,#22d3c1 0%,#8bcf64 48%,#f2b705 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

.ef4-hero__lead {
    max-width:650px;
    margin:20px 0 0;
    color:#cad8e6;
    font-size:16px;
    line-height:1.65;
}

.ef4-hero__actions {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:24px;
}

.ef4-button {
    display:inline-flex;
    min-height:48px;
    align-items:center;
    justify-content:center;
    padding:0 19px;
    border-radius:12px;
    font-size:14px;
    font-weight:850;
    text-decoration:none;
    transition:transform .15s ease,background .15s ease,border-color .15s ease;
}

.ef4-button:hover { transform:translateY(-1px); }
.ef4-button--primary { background:var(--ef4-gold);color:#3a2b00; }
.ef4-button--primary:hover { background:#ffc515; }
.ef4-button--secondary {
    gap:9px;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.07);
    color:#fff;
}
.ef4-button--secondary:hover {
    border-color:rgba(255,255,255,.3);
    background:rgba(255,255,255,.11);
}

/* ENFAVORI SELECTION — separate premium block below hero */
.ef4-selection {
    position:relative;
    padding:24px 0 26px;
    border-bottom:1px solid #dce7ec;
    background:
        radial-gradient(circle at 90% 0%,rgba(24,194,177,.10),transparent 28%),
        linear-gradient(180deg,#f5fafb 0%,#eef6f7 100%);
}

.ef4-selection::before {
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:4px;
    background:linear-gradient(90deg,var(--ef4-navy) 0%,var(--ef4-teal) 58%,var(--ef4-teal-bright) 100%);
}

/* The premium selection uses the same heading system as every other homepage section. */

.ef4-selection__grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:0;
    padding:0;
    list-style:none;
}

.ef4-selection-card {
    min-width:0;
}

.ef4-selection-card > a {
    position:relative;
    display:grid;
    min-height:112px;
    grid-template-columns:30px 54px minmax(0,1fr);
    grid-template-areas:
        "rank visual copy"
        "rank visual meta";
    column-gap:11px;
    row-gap:7px;
    align-items:center;
    padding:13px 14px;
    overflow:hidden;
    border:1px solid var(--ef4-card-border);
    border-radius:var(--ef4-card-radius);
    background:#fff;
    color:var(--ef4-text);
    box-shadow:var(--ef4-card-shadow);
    text-decoration:none;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.ef4-selection-card__rank {
    grid-area:rank;
    display:grid;
    width:30px;
    height:30px;
    place-items:center;
    border-radius:50%;
    background:#edf3f6;
    color:#63798c;
    font-size:12px;
    font-weight:950;
}

.ef4-selection-card:first-child .ef4-selection-card__rank {
    background:#fff5cc;
    color:#9a7300;
}

.ef4-selection-card__visual {
    grid-area:visual;
    display:block;
    width:54px;
    height:54px;
}

/* The shared site-theme.css loads after this file. Keep this compact
   icon-only identity more specific than the shared themed cover, so no
   second square/backplate appears around the colored icon. */
.ef4-selection-card .ef4-selection-card__identity {
    width:54px;
    height:54px;
    min-height:54px;
    padding:0;
    border:0;
    border-radius:16px;
    background:transparent;
}

.ef4-selection-card__identity .ef-list-identity__pattern,
.ef4-selection-card__identity .ef-list-identity__badge {
    display:none;
}

.ef4-selection-card__identity .ef-list-identity__head {
    width:100%;
    height:100%;
    align-items:center;
    justify-content:center;
}

.ef4-selection-card__identity .ef-list-identity__icon {
    width:48px;
    height:48px;
    flex:0 0 48px;
    border-radius:14px;
    background:var(--ef-list-id-accent);
    color:#fff;
    box-shadow:0 8px 18px color-mix(in srgb,var(--ef-list-id-accent) 18%,transparent);
}

.ef4-selection-card__identity .ef-list-identity__icon svg {
    width:23px;
    height:23px;
}

.ef4-selection-card__copy {
    grid-area:copy;
    min-width:0;
    align-self:end;
}

.ef4-selection-card__copy strong {
    display:-webkit-box;
    overflow:hidden;
    color:var(--ef4-navy);
    font-size:13px;
    line-height:1.28;
    font-weight:900;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

.ef4-selection-card__copy small {
    display:block;
    margin-top:4px;
    overflow:hidden;
    color:#789;
    font-size:9px;
    font-weight:750;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ef4-selection-card__meta {
    grid-area:meta;
    display:flex;
    align-items:baseline;
    gap:5px;
    align-self:start;
    min-width:0;
    color:#65788a;
}

.ef4-selection-card__meta b {
    color:var(--ef4-teal);
    font-size:12px;
    font-weight:950;
}

.ef4-selection-card__meta small {
    overflow:hidden;
    font-size:8.5px;
    font-weight:800;
    text-overflow:ellipsis;
    white-space:nowrap;
}

@media(hover:hover) {
    .ef4-selection-card > a:hover {
        transform:translateY(-2px);
        border-color:var(--ef4-card-border-hover);
        box-shadow:var(--ef4-card-shadow-hover);
    }

    .ef4-selection__head > a:hover {
        color:var(--ef4-navy);
    }
}

/* SHARED SECTIONS */
.ef4-section { padding:24px 0 8px; }
.ef4-section--articles { padding-bottom:24px; }

/* Canonical homepage heading: premium selection, lists, discoveries, list picks,
   articles and travel share one typography/layout contract. */
.ef4-section__head,
.ef4-selection__head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
}

.ef4-section__head > div,
.ef4-selection__head > div {
    min-width:0;
}

.ef4-kicker {
    display:block;
    margin:0 0 6px;
    color:#0b756e;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.055em;
    text-transform:uppercase;
}

.ef4-section__head h2,
.ef4-selection__head h2 {
    margin:0;
    color:var(--ef4-navy);
    font-size:32px;
    line-height:1.14;
    font-weight:900;
    letter-spacing:-.025em;
    overflow-wrap:break-word;
}

.ef4-more {
    display:inline-flex;
    min-height:18px;
    max-width:100%;
    flex:0 0 auto;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    color:#0b756e;
    font-size:13px;
    line-height:1.2;
    font-weight:800;
    text-align:right;
    text-decoration:none;
    white-space:nowrap;
}

.ef4-more span {
    font-size:15px;
    line-height:1;
}

.ef4-empty {
    padding:28px;
    border:1px dashed #cbd5e1;
    border-radius:14px;
    background:#fff;
    color:var(--ef4-muted);
    font-size:12px;
    text-align:center;
}

/* CONTENT GRIDS */
.ef4-grid {
    display:grid;
    min-width:0;
    gap:18px;
}

.ef4-grid--articles {
    grid-template-columns:repeat(4,minmax(0,1fr));
}

/* Homepage list showcase has its own single source: home-v4-lists.css. */

/* CAROUSELS */
.ef4-carousel { min-width:0; }
.ef4-carousel__controls { display:none; }

/* DISCOVER */
.ef4-discover {
    margin-top:0;
    padding:20px 0 18px;
    background:#edf3f7;
    color:var(--ef4-navy);
}

.ef4-section__head--dark h2 { color:var(--ef4-navy); }
.ef4-section__head--dark .ef4-kicker { color:var(--ef4-teal); }
/* On dark-mode page surfaces the same microcopy stays readable. */
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef4 .ef4-section__head :is(.ef4-kicker,.ef4-more){color:#79e4d8}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef4 .ef4-section__head--dark .ef4-kicker{color:#79e4d8}

.ef4-more--light {
    color:var(--ef4-teal);
}

.ef4-discovery-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}

/* Discovery card visuals live only in discovery-cards.css. */

/* ARTICLES */
.ef4-article-card {
    display:flex;
    min-width:0;
    overflow:hidden;
    flex-direction:column;
}

.ef4-article-card__media {
    display:block;
    aspect-ratio:16 / 9;
    overflow:hidden;
    background:#eef2f6;
}

.ef4-article-card__media img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.ef4-article-card__body {
    min-height:162px;
    padding:13px;
}

.ef4-article-card__meta {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:0 0 6px;
    color:var(--ef4-muted);
    font-size:9px;
}

.ef4-article-card__meta b { color:var(--ef4-teal); }

.ef4-article-card h3 {
    margin:0 0 7px;
    color:var(--ef4-navy);
    font-size:14px;
    font-weight:900;
    line-height:1.28;
}

.ef4-article-card h3 a { color:inherit;text-decoration:none; }
.ef4-article-card h3 a:hover { color:var(--ef4-teal); }

.ef4-article-card__body > p:last-child {
    display:-webkit-box;
    overflow:hidden;
    margin:0;
    color:var(--ef4-muted);
    font-size:11px;
    line-height:1.45;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}

/* SLOGAN */
.ef4-slogan {
    padding:48px 0;
    background:#fff;
    text-align:center;
}

.ef4-slogan__mark {
    display:flex;
    width:42px;
    height:34px;
    align-items:flex-end;
    justify-content:center;
    margin:0 auto 16px;
    color:#173d73;
}

.ef4-slogan__mark svg { width:100%;height:100%;fill:currentColor; }

.ef4-slogan h2 {
    max-width:900px;
    margin:0 auto;
    color:var(--ef4-navy);
    font-size:clamp(32px,4.7vw,58px);
    font-weight:900;
    line-height:1.08;
    letter-spacing:-.025em;
}

.ef4-slogan h2 span {
    background:linear-gradient(100deg,#0fa393 0%,#9bc63b 55%,#efb300 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

.ef4-slogan > .ef-container > a {
    display:inline-flex;
    min-height:48px;
    align-items:center;
    justify-content:center;
    margin-top:22px;
    padding:0 24px;
    border-radius:13px;
    background:var(--ef4-gold);
    color:#352900;
    font-size:14px;
    font-weight:900;
    text-decoration:none;
}

/* TABLET */
@media (max-width:1100px) {
    .ef4-hero__grid {
        grid-template-columns:minmax(0,1fr) 390px;
        gap:28px;
    }
    .ef4-grid--articles { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ef4-discovery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:900px) {
    .ef4-hero { padding:38px 0; }
    .ef4-hero.no-board { padding:34px 0 32px; }
    .ef4-hero__grid { grid-template-columns:1fr; }
}

@media (max-width:860px) {
    .ef4-discovery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* MOBILE */
@media (max-width:1100px) {
    .ef4-selection__grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:640px) {
    .ef4-selection {
        padding:20px 0 22px;
    }

    .ef4-selection__grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:8px;
    }

    .ef4-selection-card > a {
        min-height:104px;
        grid-template-columns:24px 42px minmax(0,1fr);
        column-gap:8px;
        row-gap:6px;
        padding:10px;
        border-radius:15px;
    }

    .ef4-selection-card__rank {
        width:24px;
        height:24px;
        font-size:10px;
    }

    .ef4-selection-card__visual,
    .ef4-selection-card .ef4-selection-card__identity {
        width:42px;
        height:42px;
        min-height:42px;
    }

    .ef4-selection-card .ef4-selection-card__identity {
        border-radius:13px;
    }

    .ef4-selection-card__identity .ef-list-identity__icon {
        width:40px;
        height:40px;
        flex-basis:40px;
        border-radius:12px;
    }

    .ef4-selection-card__identity .ef-list-identity__icon svg {
        width:19px;
        height:19px;
    }

    .ef4-selection-card__copy strong {
        font-size:10.5px;
        line-height:1.25;
    }

    .ef4-selection-card__copy small {
        margin-top:3px;
        font-size:7.5px;
    }

    .ef4-selection-card__meta b {
        font-size:10px;
    }

    .ef4-selection-card__meta small {
        font-size:7.5px;
    }

    .ef4-hero { padding:22px 0 24px; }
    .ef4-hero.no-board { padding:22px 0 23px; }

    .ef4-hero.has-background {
        background:
            linear-gradient(180deg,rgba(5,22,40,.76) 0%,rgba(5,22,40,.84) 58%,rgba(5,22,40,.91) 100%),
            var(--ef4-hero-image) 68% center / cover no-repeat;
        background-color:var(--ef4-navy-deep);
    }
    .ef4-hero__grid { gap:22px; }

    .ef4-hero__eyebrow {
        margin-bottom:13px;
        padding:6px 9px;
        font-size:10px;
    }

    .ef4-hero h1 {
        font-size:clamp(30px,9.6vw,40px);
        line-height:1.04;
    }

    .ef4-hero__lead {
        max-width:620px;
        margin-top:12px;
        font-size:12.5px;
        line-height:1.5;
    }

    .ef4-hero__actions {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:8px;
        margin-top:16px;
    }

    .ef4-button {
        min-height:43px;
        padding-inline:10px;
        border-radius:10px;
        font-size:11px;
    }

    .ef4-section { padding:20px 0 5px; }
    .ef4-section--articles { padding-bottom:20px; }

    .ef4-section__head,
    .ef4-selection__head {
        align-items:flex-start;
        gap:12px;
        margin-bottom:16px;
    }

    .ef4-kicker { margin-bottom:6px;font-size:12px; }
    .ef4-section__head h2,
    .ef4-selection__head h2 { font-size:25px; }
    .ef4-more { font-size:13px; }

    .ef4-grid--articles {
        display:grid;
        grid-template-columns:none;
        grid-auto-flow:column;
        grid-auto-columns:100%;
        gap:12px;
        overflow-x:auto;
        overscroll-behavior-inline:contain;
        scroll-behavior:smooth;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
        -webkit-overflow-scrolling:touch;
    }

    .ef4-grid--articles::-webkit-scrollbar { display:none; }

    .ef4-article-card {
        width:100%;
        min-width:100%;
        scroll-snap-align:start;
        scroll-snap-stop:always;
    }

    .ef4-carousel__controls {
        display:flex;
        align-items:center;
        justify-content:center;
        gap:12px;
        margin-top:10px;
    }

    .ef4-carousel__controls button {
        display:grid;
        width:34px;
        height:34px;
        place-items:center;
        padding:0;
        border:1px solid var(--ef4-line);
        border-radius:50%;
        background:#fff;
        color:var(--ef4-navy);
        font-size:14px;
        font-weight:900;
        cursor:pointer;
    }

    .ef4-carousel__controls button:disabled { opacity:.32;cursor:default; }

    .ef4-carousel__controls span {
        min-width:50px;
        color:var(--ef4-muted);
        font-size:10px;
        font-weight:800;
        text-align:center;
    }

    .ef4-discover {
        margin-top:0;
        padding:18px 0 18px;
    }

    .ef4-discovery-grid {
        grid-template-columns:1fr;
        gap:11px;
    }

    .ef4-article-card__body { min-height:0;padding:13px; }
    .ef4-article-card h3 { font-size:15px; }

    .ef4-slogan { padding:34px 0; }
    .ef4-slogan__mark { width:34px;height:28px;margin-bottom:12px; }
    .ef4-slogan h2 { font-size:30px; }
}

@media (max-width:400px) {
    .ef4-hero__actions { grid-template-columns:1fr; }
    .ef4-section__head,
    .ef4-selection__head { flex-wrap:wrap;gap:8px; }
    .ef4-more { margin-left:auto; }
}

@media (prefers-reduced-motion:reduce) {
    .ef4 *,
    .ef4 *::before,
    .ef4 *::after {
        scroll-behavior:auto !important;
        transition:none !important;
    }
}


/* =========================================================
   HOMEPAGE ARTICLE CARDS — FINAL V5
   Editorial card model with clear white-theme hierarchy.
   ========================================================= */
.ef4-grid--articles{
    align-items:stretch;
}

.ef4-article-card{
    height:100%;
    border:1px solid var(--ef4-card-border);
    border-radius:var(--ef4-card-radius);
    background:#fff;
    box-shadow:var(--ef4-card-shadow);
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

@media (hover:hover){
    .ef4-article-card:hover{
        transform:translateY(-2px);
        border-color:var(--ef4-card-border-hover);
        box-shadow:var(--ef4-card-shadow-hover);
    }
}

.ef4-article-card__media{
    flex:0 0 auto;
    aspect-ratio:16 / 9;
    border-bottom:1px solid #d6e1e9;
}

.ef4-article-card__media img{
    transition:transform .22s ease;
}

@media (hover:hover){
    .ef4-article-card:hover .ef4-article-card__media img{
        transform:scale(1.018);
    }
}

.ef4-article-card__body{
    display:flex;
    min-height:224px;
    flex:1;
    flex-direction:column;
    padding:14px 14px 0;
    background:#fff;
}

.ef4-article-card__meta{
    min-height:24px;
    display:flex;
    align-items:center;
    gap:7px;
    margin:0 0 9px;
}

.ef4-article-card__meta b{
    display:inline-flex;
    align-items:center;
    min-height:23px;
    max-width:70%;
    overflow:hidden;
    padding:4px 8px;
    border:1px solid #bfe1dc;
    border-radius:999px;
    background:#eef9f7;
    color:#0d766d;
    font-size:8.5px;
    font-weight:900;
    line-height:1;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ef4-article-card__meta time{
    color:#526477;
    font-size:8.5px;
    font-weight:750;
    white-space:nowrap;
}

.ef4-article-card h3{
    display:-webkit-box;
    min-height:54px;
    max-height:54px;
    overflow:hidden;
    margin:0 0 9px;
    color:#0a1e33;
    font-size:15px;
    font-weight:950;
    line-height:18px;
    letter-spacing:-.012em;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}

.ef4-article-card__excerpt{
    min-height:51px;
    max-height:51px;
    overflow:hidden;
    margin-bottom:12px;
}

.ef4-article-card__excerpt p{
    display:-webkit-box;
    overflow:hidden;
    margin:0;
    color:#62758a;
    font-size:10.5px;
    line-height:17px;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}

.ef4-article-card__excerpt.is-empty{
    visibility:hidden;
}

/* Publisher identity follows the same linked avatar/name model as article directory cards. */
.ef4-article-card__author{
    min-width:0;
    margin:0 0 11px;
}
.ef4-article-card__author-link{
    display:flex;
    width:100%;
    min-width:0;
    min-height:44px;
    align-items:center;
    gap:8px;
    padding:5px 7px;
    border:1px solid #dce8ed;
    border-radius:10px;
    background:#f5f9fb;
    color:#193b50;
    text-decoration:none;
}
a.ef4-article-card__author-link:hover{
    border-color:#a5d9d1;
    background:#eaf8f5;
}
a.ef4-article-card__author-link:focus-visible{
    outline:3px solid #0f9e91;
    outline-offset:2px;
}
.ef4-article-card__author-avatar{
    display:block;
    width:32px;
    height:32px;
    flex:0 0 32px;
    overflow:hidden;
    border:1px solid #c3dedb;
    border-radius:50%;
    background:#fff;
}
.ef4-article-card__author-avatar img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}
.ef4-article-card__author-info{
    display:grid;
    min-width:0;
    gap:1px;
    line-height:1.2;
}
.ef4-article-card__author-info small{
    color:#526477;
    font-size:9px;
    font-weight:750;
}
.ef4-article-card__author-info strong{
    display:block;
    min-width:0;
    overflow:hidden;
    color:#142f47;
    font-size:10.5px;
    font-weight:850;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.ef4-article-card__author-arrow{
    flex:none;
    width:14px;
    height:14px;
    margin-left:auto;
    fill:none;
    stroke:#0b948a;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.ef4-article-card__foot{
    display:flex;
    min-height:50px;
    align-items:center;
    justify-content:flex-end;
    margin:auto -14px 0;
    padding:8px 14px;
    border-top:1px solid #cee0df;
    background:linear-gradient(180deg,#f1faf8 0%,#eaf6f4 100%);
}

.ef4-article-card__action{
    display:inline-flex;
    min-height:34px;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:0 12px;
    border:1px solid #0a1e33;
    border-radius:10px;
    background:#0a1e33;
    color:#fff;
    font-size:9.5px;
    font-weight:900;
    line-height:1;
    text-decoration:none;
    white-space:nowrap;
    box-shadow:0 8px 18px -14px rgba(10,30,51,.55);
}

.ef4-article-card__action:hover{
    border-color:#0f9f93;
    background:#0f9f93;
    color:#fff;
}

@media(max-width:640px){
    .ef4-article-card{
        border-radius:15px;
    }

    .ef4-article-card__body{
        min-height:218px;
        padding:13px 13px 0;
    }

    .ef4-article-card h3{
        min-height:48px;
        max-height:48px;
        font-size:15px;
        line-height:16px;
    }

    .ef4-article-card__excerpt{
        min-height:48px;
        max-height:48px;
    }

    .ef4-article-card__excerpt p{
        font-size:10.5px;
        line-height:16px;
    }

    .ef4-article-card__foot{
        min-height:48px;
        margin:auto -13px 0;
        padding:8px 13px;
    }

    .ef4-article-card__action{
        min-height:34px;
        font-size:9.5px;
    }
}


/* =========================================================
   HOMEPAGE CLOSING — FINAL COMPACT BRAND BLOCK
   Footer öncesinde güçlü ama gereksiz boşluk üretmeyen kapanış.
   ========================================================= */
.ef4-slogan{
    padding:22px 0 24px;
}

.ef4-slogan__mark{
    width:32px;
    height:25px;
    margin-bottom:8px;
}

.ef4-slogan h2{
    max-width:820px;
    font-size:clamp(30px,3.85vw,48px);
    line-height:1.03;
}

.ef4-slogan > .ef-container > p{
    margin:8px auto 0;
    color:#0b756e;
    font-size:clamp(17px,1.85vw,22px);
    font-weight:900;
    line-height:1.18;
}

.ef4-slogan > .ef-container > a{
    min-height:42px;
    margin-top:14px;
    padding:0 21px;
}

@media(max-width:640px){
    .ef4-slogan{
        padding:20px 0 22px;
    }

    .ef4-slogan__mark{
        width:30px;
        height:24px;
        margin-bottom:8px;
    }

    .ef4-slogan h2{
        font-size:28px;
    }

    .ef4-slogan > .ef-container > p{
        margin-top:7px;
        font-size:16px;
    }

    .ef4-slogan > .ef-container > a{
        min-height:40px;
        margin-top:13px;
    }
}

/* =========================================================
   HOMEPAGE V4 — SINGLE COMMERCIAL SLOT
   Kampanya öncelikli; yoksa Reklam #5 fallback.
   İçerik kırpılmadan ana akıştan daha kompakt tutulur.
   ========================================================= */
.ef4-commercial{
    padding:18px 0 8px;
    background:var(--ef4-soft);
}

.ef4-commercial__container{
    width:min(1180px,calc(100% - 32px));
    margin-inline:auto;
}

.ef4-commercial__container .ef-campaign-slot--home_between_sections{
    width:100%;
    margin:0;
}

.ef4-commercial__label{
    margin:0 0 7px 2px;
    color:#8a98a8;
    font-size:9px;
    line-height:1;
    font-weight:900;
    letter-spacing:.13em;
}

.ef4-commercial__ad{
    display:grid;
    place-items:center;
    width:100%;
    min-height:min(var(--ef4-commercial-height,160px),160px);
    overflow:hidden;
    border:1px solid #e0e8ed;
    border-radius:18px;
    background:#f8fafb;
}

.ef4-commercial__ad > *{
    width:100%;
    max-width:100%;
}

.ef4-commercial__ad img,
.ef4-commercial__ad iframe,
.ef4-commercial__ad ins{
    max-width:100% !important;
}

.ef4-commercial__ad iframe{
    width:100% !important;
}

/* =========================================================
   HOMEPAGE V4 — TRAVEL / AFFILIATE
   Reklam/kampanyadan bağımsız, yalnız kendi anahtarıyla görünür.
   ========================================================= */
.ef4-travel{
    padding:34px 0 10px;
    background:#f8fafb;
    border-top:1px solid #edf1f3;
    border-bottom:1px solid #edf1f3;
}

.ef4-section__sub{
    max-width:720px;
    margin:5px 0 0;
    color:#728095;
    font-size:12.5px;
    line-height:1.5;
}

.ef4-travel__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

.ef4-travel__grid--single{
    grid-template-columns:1fr;
}

.ef4-travel-card{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,42%);
    align-items:stretch;
    min-width:0;
    min-height:190px;
    overflow:hidden;
    border:1px solid var(--ef4-card-border);
    border-radius:var(--ef4-card-radius);
    background:
        radial-gradient(circle at 15% 20%,rgba(30,203,188,.10),transparent 34%),
        linear-gradient(135deg,#ffffff 0%,#f7fbfc 100%);
    color:#14264b;
    text-decoration:none;
    box-shadow:var(--ef4-card-shadow);
    transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.ef4-travel-card--flight{
    background:
        radial-gradient(circle at 16% 18%,rgba(38,126,235,.12),transparent 34%),
        linear-gradient(135deg,#ffffff 0%,#f4f8ff 100%);
}

.ef4-travel-card__content{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
    padding:26px 28px;
}

.ef4-travel-card__topline{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
}

.ef4-travel-card__topline small{
    color:#078f86;
    font-size:10px;
    line-height:1;
    font-weight:950;
    letter-spacing:.13em;
}

.ef4-travel-card__topline b{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 8px;
    border:1px solid #d8e5ea;
    border-radius:999px;
    background:#fff;
    color:#607086;
    font-size:10px;
    font-weight:900;
}

.ef4-travel-card__content > strong{
    margin-top:10px;
    color:#14264b;
    font-size:clamp(24px,2.3vw,32px);
    line-height:1.05;
    font-weight:950;
    letter-spacing:-.035em;
}

.ef4-travel-card__description{
    max-width:520px;
    margin-top:8px;
    color:#66768a;
    font-size:13px;
    line-height:1.55;
}

.ef4-travel-card__cta{
    display:inline-flex;
    align-items:center;
    gap:7px;
    align-self:flex-start;
    min-height:40px;
    margin-top:18px;
    padding:0 14px;
    border-radius:12px;
    background:#14264b;
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.ef4-travel-card--hotel .ef4-travel-card__cta{
    background:#078f86;
}

.ef4-travel-card__visual{
    position:relative;
    display:grid;
    place-items:center;
    min-height:190px;
    overflow:hidden;
    background:linear-gradient(135deg,rgba(20,38,75,.04),rgba(7,143,134,.10));
}

.ef4-travel-card--flight .ef4-travel-card__visual{
    background:
        radial-gradient(circle at 70% 35%,rgba(255,255,255,.95) 0 12%,transparent 13%),
        linear-gradient(145deg,#dcecff 0%,#eef6ff 46%,#d9f5f0 100%);
}

.ef4-travel-card--hotel .ef4-travel-card__visual{
    background:
        radial-gradient(circle at 28% 22%,rgba(255,255,255,.9) 0 10%,transparent 11%),
        linear-gradient(145deg,#e8fbf8 0%,#f4fbfb 50%,#e5f2ff 100%);
}

.ef4-travel-card__visual::after{
    content:"";
    position:absolute;
    inset:auto -8% -42% 12%;
    height:72%;
    border-radius:50% 50% 0 0;
    background:rgba(255,255,255,.55);
    transform:rotate(-6deg);
}

.ef4-travel-card__visual svg{
    position:relative;
    z-index:2;
    width:min(92%,360px);
    height:auto;
}

.ef4-travel-art__route{
    fill:none;
    stroke:#6d8fbf;
    stroke-width:4;
    stroke-linecap:round;
    stroke-dasharray:9 10;
}

.ef4-travel-art__dot{
    fill:#078f86;
}

.ef4-travel-art__plane{
    fill:#14264b;
    stroke:#14264b;
    stroke-width:2;
    stroke-linejoin:round;
}

.ef4-travel-art__hotel{
    fill:none;
    stroke:#14264b;
    stroke-width:5;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.ef4-travel-art__sun{
    fill:#ffbe2e;
    opacity:.95;
}

.ef4-travel__note{
    margin:8px 0 0;
    color:#8b98a8;
    font-size:9.5px;
    line-height:1.4;
    text-align:right;
}

@media(hover:hover){
    .ef4-travel-card:hover{
        transform:translateY(-2px);
        border-color:var(--ef4-card-border-hover);
        box-shadow:var(--ef4-card-shadow-hover);
    }

    .ef4-travel-card:hover .ef4-travel-card__cta{
        transform:translateX(2px);
    }
}

@media(max-width:760px){
    .ef4-commercial{
        padding:14px 0 6px;
    }

    .ef4-commercial__container{
        width:calc(100% - 20px);
    }

    .ef4-commercial__ad{
        min-height:180px;
        border-radius:15px;
    }

    .ef4-travel{
        padding:27px 0 8px;
    }

    .ef4-travel__grid,
    .ef4-travel__grid--single{
        grid-template-columns:1fr;
        gap:10px;
    }

    .ef4-travel-card{
        grid-template-columns:1fr;
        min-height:0;
        border-radius:18px;
    }

    .ef4-travel-card__content{
        padding:20px 18px;
    }

    .ef4-travel-card__content > strong{
        font-size:24px;
    }

    .ef4-travel-card__description{
        font-size:12px;
    }

    .ef4-travel-card__visual{
        min-height:150px;
        order:-1;
    }

    .ef4-travel-card__visual svg{
        width:min(88%,300px);
    }

    .ef4-travel__note{
        text-align:left;
    }
}



/* LISTELERIN ICINDEN — active V4's one item-first editorial shelf */
.ef4-inside{
    padding:22px 0 24px;
    /* No outer panel: cards sit directly on the same page surface. */
    background:transparent;
}
.ef4-inside__grid{
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;
}
.ef4-inside-card{
    display:flex;flex-direction:column;min-width:0;overflow:hidden;
    border:1px solid var(--ef4-card-border);border-radius:var(--ef4-card-radius);background:#fff;
    box-shadow:var(--ef4-card-shadow);
    transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.ef4-inside-card__image{
    position:relative;display:grid;place-items:center;overflow:hidden;
    width:100%;aspect-ratio:1/1;background:#f4f7fa;
}
.ef4-inside-card__image img{
    display:block;width:100%;height:100%;object-fit:contain;object-position:center;
}
.ef4-inside-card__body{
    display:flex;flex:1;flex-direction:column;align-items:flex-start;
    gap:9px;padding:15px 16px 16px;
}
.ef4-inside-card__type{
    max-width:100%;padding:5px 9px;border:1px solid #b5dcd5;
    border-radius:99px;background:#edf9f6;color:#08766c;
    font-size:11px;line-height:1.25;font-weight:850;
}
.ef4-inside-card h3{
    width:100%;margin:0;color:#0d2745;font-size:18px;
    line-height:1.3;font-weight:900;overflow-wrap:anywhere;
}
.ef4-inside-card h3 a{color:inherit;text-decoration:none}
.ef4-inside-card__source{display:flex;flex-direction:column;gap:4px;min-width:0;width:100%}
.ef4-inside-card__source span{color:#526477;font-size:12px}
.ef4-inside-card__source a{
    color:#315873;font-size:13px;font-weight:700;line-height:1.35;
    text-decoration:none;overflow-wrap:anywhere;
}
.ef4-inside-card__source a:hover,.ef4-inside-card h3 a:hover{color:#078a7e}
.ef4-inside-card__action{
    display:inline-flex;align-items:center;justify-content:center;gap:10px;
    align-self:flex-end;margin-top:auto;min-height:40px;padding:9px 13px;border-radius:9px;
    background:#0b756e;color:#fff!important;text-decoration:none;
    font-size:13px;font-weight:850;
}
.ef4-inside-card__action:hover{background:#087a71}
.ef4-inside-card :is(a,button):focus-visible{outline:3px solid #0f9e91;outline-offset:3px}
@media(hover:hover){
    .ef4-inside-card:hover{
        border-color:var(--ef4-card-border-hover);transform:translateY(-2px);
        box-shadow:var(--ef4-card-shadow-hover);
    }
}
@media(max-width:1050px){
    .ef4-inside__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
    .ef4-inside{padding:29px 0 33px}
    .ef4-inside__grid{grid-template-columns:1fr;gap:12px}
    /* Give the 1:1 image its own inset column. Center it beside varying text
       lengths instead of leaving a large bare gap under a top-anchored photo. */
    .ef4-inside-card{display:grid;grid-template-columns:136px minmax(0,1fr);align-items:stretch}
    .ef4-inside-card__image{
        width:120px;height:120px;min-height:0;aspect-ratio:1/1;
        justify-self:center;align-self:center;border-radius:10px;
    }
    .ef4-inside-card__body{min-width:0;padding:13px 13px 13px 3px;gap:7px}
    .ef4-inside-card h3{font-size:16px}
    .ef4-inside-card__source span{font-size:11px}
    .ef4-inside-card__source a{font-size:12px}
    .ef4-inside-card__action{min-height:34px;padding:7px 11px;font-size:12px}
}
@media(max-width:360px){
    .ef4-inside-card{grid-template-columns:112px minmax(0,1fr)}
    .ef4-inside-card__image{width:100px;height:100px}
}
html[data-theme="dark"] .ef4-inside,
body.theme-dark .ef4-inside,body.dark-mode .ef4-inside{
    background:transparent;
}
html[data-theme="dark"] .ef4-inside__head h2,
body.theme-dark .ef4-inside__head h2,
body.dark-mode .ef4-inside__head h2{color:#f0f8ff}
html[data-theme="dark"] .ef4-inside-card,
body.theme-dark .ef4-inside-card,
body.dark-mode .ef4-inside-card{background:#1b2e42}
html[data-theme="dark"] .ef4-inside-card h3,
body.theme-dark .ef4-inside-card h3,
body.dark-mode .ef4-inside-card h3{color:#fff}
html[data-theme="dark"] .ef4-inside-card__source a,
body.theme-dark .ef4-inside-card__source a,
body.dark-mode .ef4-inside-card__source a{color:#b4e5df}
html[data-theme="dark"] .ef4-inside-card__source span,
body.theme-dark .ef4-inside-card__source span,
body.dark-mode .ef4-inside-card__source span{color:#cedeea}
html[data-theme="dark"] .ef4-inside-card__image,
body.theme-dark .ef4-inside-card__image,
body.dark-mode .ef4-inside-card__image{background:#edf3f7}

/* HOME IMAGE PARITY V1: list-content cards keep their own square frame.
   Display the whole picture without cropping on desktop or mobile. */
.ef4-inside .ef4-inside-card__image{
  display:block;
  position:relative;
  flex:0 0 auto;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:1 / 1;
  border-radius:0;
  align-self:stretch;
  justify-self:stretch;
  overflow:hidden;
  background:#eef2f6;
  border-bottom:1px solid #d6e1e9;
}
.ef4-inside .ef4-inside-card__image img{
  display:block;
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
@media(max-width:640px){
  .ef4-inside .ef4-inside-card{
    display:flex;
    flex-direction:column;
  }
  .ef4-inside .ef4-inside-card__body{
    min-width:0;
    padding:14px 14px 16px;
  }
}

/* ENFAVORI HOME FEATURED CONTENT TYPE HEADINGS V1
   Applied after the existing V4 rules to the two live home-v4.css copies.
   Read-only content and group counts; visual treatment only. */
.ef4 .ef4-inside__group + .ef4-inside__group {
    margin-top: 36px;
}
.ef4 .ef4-inside__group-heading {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px 12px;
    min-width: 0;
    min-height: 58px;
    margin: 0 0 20px;
    padding: 9px 0 18px 13px;
    border: 0;
    color: #142844;
    font-size: clamp(21px, 1.65vw, 25px);
    font-weight: 900;
    letter-spacing: -.025em;
    line-height: 1.15;
}
.ef4 .ef4-inside__group-heading::before {
    content: "";
    position: absolute;
    top: 11px;
    left: 0;
    width: 4px;
    height: 29px;
    border-radius: 4px;
    background: #0a9d94;
}
.ef4 .ef4-inside__group-heading::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg,
        #0a9d94 0, #0a9d94 88px,
        #24507a 88px, #24507a 50%,
        rgba(36,80,122,.16) 100%);
    pointer-events: none;
}
.ef4 .ef4-inside__group-heading > span {
    display: inline-block;
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    color: inherit;
    font: inherit;
}
.ef4 .ef4-inside__group-heading > small {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    margin: 0;
    padding: 5px 11px;
    border: 1px solid #b6ddd8;
    border-radius: 999px;
    background: #e7f6f3;
    color: #08746f;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0;
    line-height: 1.2;
    white-space: nowrap;
}
@media (max-width: 640px) {
    .ef4 .ef4-inside__group + .ef4-inside__group {
        margin-top: 27px;
    }
    .ef4 .ef4-inside__group-heading {
        min-height: 52px;
        margin-bottom: 14px;
        padding: 7px 0 15px 12px;
        gap: 7px 9px;
        font-size: 20px;
    }
    .ef4 .ef4-inside__group-heading::before {
        top: 9px;
        height: 24px;
        width: 3px;
    }
    .ef4 .ef4-inside__group-heading::after {
        background: linear-gradient(90deg,
            #0a9d94 0, #0a9d94 64px,
            #24507a 64px, #24507a 60%,
            rgba(36,80,122,.16) 100%);
    }
    .ef4 .ef4-inside__group-heading > small {
        min-height: 25px;
        padding: 4px 9px;
        font-size: 11px;
    }
}
:is(html[data-theme="dark"],body.theme-dark,body.dark-mode)
 .ef4 .ef4-inside__group-heading {
    color: #ecf6ff;
}
:is(html[data-theme="dark"],body.theme-dark,body.dark-mode)
 .ef4 .ef4-inside__group-heading > small {
    color: #b8f7ef;
    border-color: #3a7977;
    background: #183f47;
}
:is(html[data-theme="dark"],body.theme-dark,body.dark-mode)
 .ef4 .ef4-inside__group-heading::after {
    background: linear-gradient(90deg,
        #2cc7ba 0, #2cc7ba 88px,
        #6e95bd 88px, #6e95bd 50%,
        rgba(153,191,215,.22) 100%);
}
@media (prefers-reduced-motion: reduce) {
    .ef4 .ef4-inside__group-heading,
    .ef4 .ef4-inside__group-heading > small {
        transition: none;
    }
}
