/* =========================================================
   RUTIN TUNING – CONTENT SYSTEM
   Közös design a Tippek / Cikkek / részletező oldalakhoz
========================================================= */

:root{
    --rt-primary:#168F92;
    --rt-primary-dark:#11777A;
    --rt-primary-soft:#EAF8F6;
    --rt-primary-soft-2:#F3FBFA;

    --rt-navy:#17324D;
    --rt-navy-soft:#F2F6FA;

    --rt-bg:#F7FAFB;
    --rt-border:#DFE8ED;
    --rt-border-soft:#E9EFF2;

    --rt-text:#435767;
    --rt-muted:#738491;
    --rt-white:#FFFFFF;

    --rt-radius-sm:12px;
    --rt-radius:18px;
    --rt-radius-lg:24px;

    --rt-shadow-sm:0 5px 18px rgba(23,50,77,.05);
    --rt-shadow:0 12px 30px rgba(23,50,77,.08);
}

/* =========================================================
   ÁLTALÁNOS
========================================================= */

.rt-content-page{
    background:var(--rt-white);
    color:var(--rt-text);
}

.rt-content-section{
    padding:48px 0;
}

.rt-content-section-sm{
    padding:34px 0;
}

.rt-bg-white{
    background:var(--rt-white);
}

.rt-bg-light{
    background:var(--rt-bg);
}

.rt-bg-teal{
    background:var(--rt-primary-soft);
}

.rt-bg-navy-soft{
    background:var(--rt-navy-soft);
}

.rt-text-navy{
    color:var(--rt-navy) !important;
}

.rt-text-primary{
    color:var(--rt-primary) !important;
}

.rt-content-width{
    max-width:960px;
    margin-left:auto;
    margin-right:auto;
}

.rt-reading-width{
    max-width:860px;
    margin-left:auto;
    margin-right:auto;
}

/* =========================================================
   BREADCRUMB
========================================================= */

.rt-page-header{
    background:var(--rt-white);
    padding:10px 0 8px;
    border-bottom:1px solid var(--rt-border-soft);
}

.rt-breadcrumb .breadcrumb{
    margin:0;
    padding:0;
    background:transparent;
    font-size:.88rem;
    font-weight:500;
}

.rt-breadcrumb .breadcrumb-item{
    display:flex;
    align-items:center;
    color:#8A98A8;
}

.rt-breadcrumb .breadcrumb-item a{
    color:#7D8B98;
    text-decoration:none;
}

.rt-breadcrumb .breadcrumb-item a:hover{
    color:var(--rt-primary);
}

.rt-breadcrumb .breadcrumb-item.active{
    color:var(--rt-navy);
    font-weight:650;
}

.rt-breadcrumb .breadcrumb-item + .breadcrumb-item::before{
    content:"›";
    color:#C7D0D8;
    padding:0 .65rem;
}

/* =========================================================
   SECTION HEADING
========================================================= */

.rt-section-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:26px;
}

.rt-section-heading .eyebrow{
    display:flex;
    align-items:center;
    gap:.45rem;
    margin-bottom:6px;
    color:var(--rt-primary);
    font-size:.8rem;
    line-height:1;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.rt-section-heading h2{
    margin:0;
    color:var(--rt-navy);
    font-size:clamp(1.55rem,2vw,1.9rem);
    font-weight:800;
    line-height:1.18;
}

.rt-section-intro{
    max-width:720px;
    margin:10px 0 0;
    color:#647583;
    line-height:1.65;
}

/* =========================================================
   HERO – NAVY
========================================================= */

.rt-content-hero{
    position:relative;
    overflow:hidden;
    padding:50px 0;
    background:var(--rt-navy);
    color:var(--rt-white);
}

.rt-content-hero::after{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    right:-80px;
    top:-110px;
    border-radius:50%;
    background:rgba(255,255,255,.035);
}

.rt-content-hero-icon{
    position:absolute;
    right:7%;
    top:50%;
    transform:translateY(-50%);
    font-size:9rem;
    line-height:1;
    color:rgba(255,255,255,.07);
    pointer-events:none;
}

.rt-content-hero .eyebrow{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    margin-bottom:10px;
    color:#89D8D3;
    font-size:.8rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.07em;
}

.rt-content-hero h1{
    max-width:850px;
    margin:0 0 14px;
    color:var(--rt-white);
    font-weight:800;
    line-height:1.08;
}

.rt-content-hero p{
    max-width:760px;
    margin:0;
    color:rgba(255,255,255,.78);
    font-size:1.08rem;
    line-height:1.65;
}

/* =========================================================
   MAI TIPP / FEATURE
========================================================= */

.rt-feature-tip{
    border:1px solid #CCE8E4;
    border-radius:var(--rt-radius-lg);
    background:var(--rt-white);
    box-shadow:var(--rt-shadow-sm);
    overflow:hidden;
}

.rt-feature-tip-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) 170px;
    gap:24px;
    padding:28px;
}

.rt-feature-tip-kicker{
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    padding:.4rem .7rem;
    margin-bottom:13px;
    border-radius:999px;
    background:#DFF3F0;
    color:var(--rt-primary-dark);
    font-size:.76rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.rt-feature-tip h2{
    margin:0 0 10px;
    color:var(--rt-navy);
    font-size:clamp(1.5rem,2vw,1.9rem);
    font-weight:800;
    line-height:1.2;
}

.rt-feature-tip p{
    max-width:730px;
    margin:0 0 17px;
    color:#5B6D7A;
    line-height:1.65;
}

.rt-feature-tip-link{
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    color:var(--rt-primary);
    font-weight:800;
    text-decoration:none;
}

.rt-feature-stat{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:135px;
    border-radius:16px;
    background:var(--rt-primary-soft);
    text-align:center;
}

.rt-feature-stat strong{
    color:var(--rt-navy);
    font-size:2.2rem;
    line-height:1;
    font-weight:850;
}

.rt-feature-stat span{
    max-width:110px;
    margin-top:8px;
    color:#69808A;
    font-size:.8rem;
    line-height:1.3;
}

/* =========================================================
   TOPIC CHIPS
========================================================= */

.rt-topic-scroller,
.rt-tip-filter-bar{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.rt-tip-filter-bar{
    margin-bottom:26px;
}

.rt-topic-chip{
    display:inline-flex;
    align-items:center;
    gap:.42rem;
    padding:.65rem .9rem;
    border:1px solid #DCE9E8;
    border-radius:999px;
    background:#F0F8F7;
    color:var(--rt-navy);
    font-size:.9rem;
    font-weight:700;
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
    appearance:none;
    line-height:1.2;
}

.rt-topic-chip.is-active{
    border-color:var(--rt-primary);
    background:var(--rt-primary);
    color:var(--rt-white);
}

.rt-topic-chip .count{
    opacity:.65;
    font-size:.76rem;
}

/* =========================================================
   SEARCH + LIVE RESULTS
========================================================= */

.rt-search-panel{
    max-width:900px;
    margin:0 auto;
    padding:24px;
    border:1px solid #D4ECE8;
    border-radius:var(--rt-radius-lg);
    background:var(--rt-white);
    box-shadow:var(--rt-shadow-sm);
}

.rt-search-label{
    display:block;
    margin-bottom:10px;
    color:var(--rt-navy);
    font-size:1rem;
    font-weight:800;
}

.rt-search-box{
    position:relative;
}

.rt-search-box .bi-search{
    position:absolute;
    left:16px;
    top:50%;
    transform:translateY(-50%);
    color:#8B9AA4;
    z-index:2;
}

.rt-search-input{
    width:100%;
    min-height:50px;
    padding:12px 16px 12px 44px;
    border:1px solid #D9E4E8;
    border-radius:14px;
    background:#FBFDFD;
    color:var(--rt-navy);
    outline:none;
}

.rt-search-input:focus{
    border-color:#9FD4D0;
    box-shadow:0 0 0 3px rgba(22,143,146,.09);
    background:#fff;
}

.rt-live-results{
    display:none;
    margin-top:12px;
    border-top:1px solid var(--rt-border-soft);
}

.rt-live-results.is-visible{
    display:block;
}

.rt-live-results-header{
    padding:12px 2px 7px;
    color:var(--rt-muted);
    font-size:.78rem;
    font-weight:700;
}

.rt-live-result{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 4px;
    border-top:1px solid #EEF2F4;
    color:var(--rt-navy);
    text-decoration:none;
    font-size:.92rem;
    line-height:1.35;
}

.rt-live-result:first-of-type{
    border-top:0;
}

.rt-live-result i{
    color:var(--rt-primary);
}

.rt-live-empty{
    padding:12px 4px 4px;
    color:var(--rt-muted);
    font-size:.9rem;
}

/* =========================================================
   TIP CARD GRID
========================================================= */

.rt-tip-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.rt-tip-card{
    display:flex;
    flex-direction:column;
    min-height:265px;
    padding:22px;
    border:1px solid var(--rt-border);
    border-radius:var(--rt-radius);
    background:var(--rt-white);
    box-shadow:0 3px 12px rgba(23,50,77,.035);
}

.rt-tip-card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:14px;
}

.rt-tip-card-category{
    display:inline-flex;
    align-items:center;
    gap:.32rem;
    color:var(--rt-primary-dark);
    font-size:.72rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.rt-tip-card-date{
    color:#8A99A3;
    font-size:.75rem;
    white-space:nowrap;
}

.rt-tip-card h3{
    margin:0 0 11px;
    color:var(--rt-navy);
    font-size:1.15rem;
    font-weight:800;
    line-height:1.32;
}

.rt-tip-card p{
    margin:0 0 18px;
    color:#63737F;
    font-size:.92rem;
    line-height:1.55;
}

.rt-tip-card-link{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    margin-top:auto;
    color:var(--rt-primary);
    font-size:.9rem;
    font-weight:800;
    text-decoration:none;
}

/* =========================================================
   TIP SLIDER – 9 KÁRTYA / LAP
========================================================= */

.rt-tip-slider{
    width:100%;
    overflow:hidden;
}

.rt-tip-slider-track{
    display:flex;
    width:100%;
    transform:translate3d(0,0,0);
    transition:transform .5s cubic-bezier(.22,.61,.36,1);
    will-change:transform;
}

.rt-tip-slider-track.no-transition{
    transition:none !important;
}

.rt-tip-slide{
    flex:0 0 100%;
    width:100%;
    min-width:100%;
}

.rt-tip-empty{
    padding:34px 20px;
    border:1px dashed #CBDADF;
    border-radius:var(--rt-radius);
    background:#fff;
    color:var(--rt-muted);
    text-align:center;
}

.rt-tip-slider-pagination .page-link{
    cursor:pointer;
}

.rt-tip-slider-pagination button.page-link{
    font-family:inherit;
}

/* =========================================================
   PAGINATION
========================================================= */

.rt-pagination{
    margin-top:34px;
}

.rt-pagination .pagination{
    gap:5px;
}

.rt-pagination .page-link{
    min-width:38px;
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid var(--rt-border);
    border-radius:10px !important;
    color:var(--rt-navy);
    background:#fff;
    font-size:.88rem;
}

.rt-pagination .page-item.active .page-link{
    border-color:var(--rt-primary);
    background:var(--rt-primary);
    color:#fff;
}

.rt-pagination .page-item.disabled .page-link{
    opacity:.45;
}

/* =========================================================
   CTA – NAVY / KOMPAKT
========================================================= */

.rt-content-cta{
    padding:30px 32px;
    border-radius:var(--rt-radius-lg);
    background:var(--rt-navy);
    color:#fff;
}

.rt-content-cta-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
}

.rt-content-cta h2{
    margin:0 0 8px;
    color:#fff;
    font-size:1.55rem;
    font-weight:800;
}

.rt-content-cta p{
    max-width:720px;
    margin:0;
    color:rgba(255,255,255,.72);
    line-height:1.55;
}

.rt-content-cta .btn{
    flex:0 0 auto;
    padding:.7rem 1.25rem;
    border:0;
    border-radius:12px;
    background:var(--rt-primary);
    color:#fff;
    font-weight:750;
    white-space:nowrap;
}

.rt-content-cta .btn:hover{
    background:var(--rt-primary-dark);
    color:#fff;
}

/* =========================================================
   HORIZONTAL CARD RAIL
========================================================= */

.rt-rail-wrap{
    position:relative;
}

.rt-card-rail{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 32px) / 3);
    gap:16px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    scroll-behavior:smooth;
}

.rt-card-rail::-webkit-scrollbar{
    display:none;
}

.rt-rail-item{
    scroll-snap-align:start;
}

.rt-rail-controls{
    display:flex;
    gap:8px;
}

.rt-rail-btn{
    width:38px;
    height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #D7E3E6;
    border-radius:50%;
    background:#fff;
    color:var(--rt-navy);
}

.rt-rail-btn:disabled{
    opacity:.35;
}

/* Small article card */
.rt-mini-article{
    min-height:205px;
    display:flex;
    flex-direction:column;
    padding:19px;
    border:1px solid #CFE8E4;
    border-radius:16px;
    background:#fff;
}

.rt-mini-article-icon{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:13px;
    border-radius:11px;
    background:#DFF3F0;
    color:var(--rt-primary);
}

.rt-mini-article h3{
    margin:0 0 9px;
    color:var(--rt-navy);
    font-size:1.03rem;
    font-weight:800;
    line-height:1.35;
}

.rt-mini-article p{
    display:-webkit-box;
    overflow:hidden;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    margin:0 0 14px;
    color:#687985;
    font-size:.84rem;
    line-height:1.45;
}

.rt-mini-article a{
    margin-top:auto;
    color:var(--rt-primary);
    font-size:.85rem;
    font-weight:800;
    text-decoration:none;
}

/* Cluster card */
.rt-mini-cluster{
    min-height:180px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    padding:20px;
    border:1px solid #DDE7EF;
    border-radius:16px;
    background:#fff;
    color:var(--rt-navy);
    text-decoration:none;
}

.rt-mini-cluster-icon{
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:13px;
    border-radius:12px;
    background:#E7F6F5;
    color:var(--rt-primary);
}

.rt-mini-cluster strong{
    font-size:1rem;
    line-height:1.35;
}

.rt-mini-cluster small{
    margin-top:7px;
    color:#778792;
    line-height:1.45;
}

.rt-mini-cluster .link-label{
    margin-top:auto;
    padding-top:14px;
    color:var(--rt-primary);
    font-size:.85rem;
    font-weight:800;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:991.98px){
    .rt-tip-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .rt-card-rail{
        grid-auto-columns:calc((100% - 16px) / 2);
    }

    .rt-content-hero-icon{
        right:2%;
        font-size:7rem;
    }
}

@media (max-width:767.98px){
    .rt-content-section{
        padding:36px 0;
    }

    .rt-content-section-sm{
        padding:28px 0;
    }

    .rt-page-header{
        padding:8px 0 6px;
    }

    .rt-breadcrumb .breadcrumb{
        flex-wrap:nowrap;
        overflow-x:auto;
        white-space:nowrap;
        scrollbar-width:none;
        font-size:.78rem;
    }

    .rt-breadcrumb .breadcrumb::-webkit-scrollbar{
        display:none;
    }

    .rt-content-hero{
        padding:38px 0;
    }

    .rt-content-hero-icon{
        right:-12px;
        font-size:6.3rem;
    }

    .rt-feature-tip-inner{
        grid-template-columns:1fr;
        padding:22px;
    }

    .rt-feature-stat{
        min-height:auto;
        flex-direction:row;
        gap:9px;
        padding:14px;
    }

    .rt-feature-stat strong{
        font-size:1.6rem;
    }

    .rt-feature-stat span{
        max-width:none;
        margin:0;
        text-align:left;
    }

    .rt-topic-scroller,
    .rt-tip-filter-bar{
        flex-wrap:nowrap;
        overflow-x:auto;
        padding-bottom:5px;
        scrollbar-width:none;
    }

    .rt-topic-scroller::-webkit-scrollbar,
    .rt-tip-filter-bar::-webkit-scrollbar{
        display:none;
    }

    .rt-tip-filter-bar{
        margin-bottom:22px;
    }

    .rt-search-panel{
        padding:18px;
    }

    .rt-tip-grid{
        grid-template-columns:1fr;
    }

    .rt-tip-card{
        min-height:auto;
    }

    .rt-content-cta{
        padding:24px;
    }

    .rt-content-cta-inner{
        align-items:flex-start;
        flex-direction:column;
        gap:18px;
    }

    .rt-card-rail{
        grid-auto-columns:84%;
    }

    .rt-section-heading{
        align-items:flex-start;
        flex-direction:column;
        margin-bottom:20px;
    }
}


/* =========================================================
   CIKKEK – ARCHIVE / FEATURE
========================================================= */

.rt-feature-article{
    border:1px solid #D8E6EA;
    border-radius:var(--rt-radius-lg);
    background:#fff;
    box-shadow:var(--rt-shadow-sm);
    overflow:hidden;
}

.rt-feature-article-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) 175px;
    gap:26px;
    padding:30px;
}

.rt-feature-article-inner.has-image{
    grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
    align-items:stretch;
}

.rt-feature-article-copy{
    min-width:0;
}

.rt-feature-article-visual{
    position:relative;
    min-height:235px;
    overflow:hidden;
    border-radius:17px;
    background:#E7EEF2;
}

.rt-feature-article-visual img{
    width:100%;
    height:100%;
    min-height:235px;
    display:block;
    object-fit:cover;
}

.rt-feature-article-stat{
    position:absolute;
    right:12px;
    bottom:12px;
    display:flex;
    align-items:baseline;
    gap:7px;
    padding:9px 12px;
    border-radius:12px;
    background:rgba(23,50,77,.92);
    color:#fff;
    box-shadow:0 5px 16px rgba(0,0,0,.12);
}

.rt-feature-article-stat strong{
    font-size:1.35rem;
    line-height:1;
    font-weight:850;
}

.rt-feature-article-stat span{
    font-size:.72rem;
    opacity:.86;
}

.rt-feature-article-kicker{
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    padding:.4rem .7rem;
    margin-bottom:13px;
    border-radius:999px;
    background:#E6F3FA;
    color:var(--rt-navy);
    font-size:.76rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.rt-feature-article h2{
    margin:0 0 10px;
    color:var(--rt-navy);
    font-size:clamp(1.55rem,2.1vw,2rem);
    font-weight:800;
    line-height:1.2;
}

.rt-feature-article p{
    max-width:740px;
    margin:0 0 17px;
    color:#5B6D7A;
    line-height:1.65;
}

.rt-feature-article-meta{
    display:flex;
    flex-wrap:wrap;
    gap:.7rem 1.15rem;
    margin-bottom:16px;
    color:#7D8D98;
    font-size:.82rem;
}

.rt-feature-article-link{
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    color:var(--rt-primary);
    font-weight:800;
    text-decoration:none;
}

/* =========================================================
   ARTICLE CARD GRID
========================================================= */

.rt-article-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
}

.rt-article-card{
    display:flex;
    flex-direction:column;
    min-height:330px;
    border:1px solid var(--rt-border);
    border-radius:var(--rt-radius);
    background:#fff;
    overflow:hidden;
    box-shadow:0 4px 14px rgba(23,50,77,.04);
}

.rt-article-card-image{
    aspect-ratio:16/8.5;
    overflow:hidden;
    background:#EAF1F5;
}

.rt-article-card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.rt-article-card-placeholder{
    aspect-ratio:16/6.4;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        radial-gradient(circle at 80% 20%,rgba(22,143,146,.18),transparent 32%),
        var(--rt-navy);
    color:rgba(255,255,255,.13);
    font-size:4.6rem;
}

.rt-article-card-body{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
    padding:21px;
}

.rt-article-card-meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
    color:#84939D;
    font-size:.76rem;
}

.rt-article-card-category{
    color:var(--rt-primary-dark);
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.035em;
}

.rt-article-card h3{
    margin:0 0 10px;
    color:var(--rt-navy);
    font-size:1.15rem;
    font-weight:800;
    line-height:1.35;
}

.rt-article-card p{
    display:-webkit-box;
    overflow:hidden;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    margin:0 0 18px;
    color:#667783;
    font-size:.91rem;
    line-height:1.55;
}

.rt-article-card-link{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    margin-top:auto;
    color:var(--rt-primary);
    font-size:.9rem;
    font-weight:800;
    text-decoration:none;
}

/* =========================================================
   ARTICLE SLIDER – 6 CIKK / LAP
========================================================= */

.rt-article-slider{
    width:100%;
    overflow:hidden;
}

.rt-article-slider-track{
    display:flex;
    width:100%;
    transform:translate3d(0,0,0);
    transition:transform .5s cubic-bezier(.22,.61,.36,1);
    will-change:transform;
}

.rt-article-slider-track.no-transition{
    transition:none !important;
}

.rt-article-slide{
    flex:0 0 100%;
    width:100%;
    min-width:100%;
}

/* =========================================================
   EGYEDI CIKK – HERO
========================================================= */

.rt-article-hero{
    position:relative;
    overflow:hidden;
    padding:46px 0 48px;
    background:
        radial-gradient(circle at 90% 10%,rgba(22,143,146,.12),transparent 32%),
        linear-gradient(180deg,#F4FAFA 0%,#FFF 100%);
}

.rt-article-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);
    gap:42px;
    align-items:center;
}

.rt-article-hero.no-image .rt-article-hero-grid{
    grid-template-columns:minmax(0,1fr);
    max-width:960px;
}

.rt-article-kicker{
    display:inline-flex;
    align-items:center;
    gap:.42rem;
    padding:.42rem .72rem;
    margin-bottom:14px;
    border-radius:999px;
    background:#DFF3F0;
    color:var(--rt-primary-dark);
    font-size:.76rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.rt-article-hero h1{
    margin:0 0 15px;
    color:var(--rt-navy);
    font-weight:850;
    line-height:1.08;
}

.rt-article-hero-lead{
    max-width:790px;
    margin:0;
    color:#586B79;
    font-size:1.08rem;
    line-height:1.65;
}

.rt-article-meta{
    display:flex;
    flex-wrap:wrap;
    gap:.8rem 1.15rem;
    margin-top:18px;
    color:#788994;
    font-size:.84rem;
}

.rt-article-hero-image{
    border-radius:22px;
    overflow:hidden;
    background:#E7EEF2;
    box-shadow:0 18px 42px rgba(23,50,77,.10);
}

.rt-article-hero-image img{
    width:100%;
    height:auto;
    display:block;
}

/* =========================================================
   ARTICLE BODY + TOC
========================================================= */

.rt-article-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 270px;
    gap:54px;
    align-items:start;
}

.rt-article-body{
    min-width:0;
    max-width:820px;
}

.rt-article-body section{
    margin-bottom:44px;
}

.rt-article-body h2{
    margin:0 0 16px;
    color:var(--rt-navy);
    font-size:clamp(1.45rem,2vw,1.8rem);
    font-weight:820;
    line-height:1.25;
}

.rt-article-body h3{
    margin:28px 0 12px;
    color:var(--rt-navy);
    font-size:1.22rem;
    font-weight:800;
}

.rt-article-body p{
    margin:0 0 18px;
    color:#435767;
    font-size:1.02rem;
    line-height:1.78;
}

.rt-article-body .lead{
    color:#405867;
    font-size:1.12rem;
    line-height:1.75;
}

.rt-article-figure{
    margin:34px 0;
}

.rt-article-figure img{
    width:100%;
    border-radius:18px;
    display:block;
}

.rt-article-figure figcaption{
    margin-top:9px;
    color:#7C8D98;
    font-size:.82rem;
}

.rt-article-toc{
    position:sticky;
    top:92px;
    padding:20px;
    border:1px solid #DDE7EB;
    border-radius:16px;
    background:#F8FBFC;
}

.rt-article-toc-title{
    display:flex;
    align-items:center;
    gap:.45rem;
    margin:0 0 14px;
    color:var(--rt-navy);
    font-size:.95rem;
    font-weight:800;
}

.rt-article-toc ul{
    margin:0;
    padding:0;
    list-style:none;
}

.rt-article-toc li + li{
    margin-top:9px;
}

.rt-article-toc a{
    display:block;
    color:#667987;
    font-size:.86rem;
    line-height:1.4;
    text-decoration:none;
}

.rt-article-toc a:hover{
    color:var(--rt-primary);
}

.rt-article-mobile-toc{
    display:none;
}

/* =========================================================
   ARTICLE INFO / QUOTE / SUMMARY
========================================================= */

.rt-article-callout{
    margin:30px 0;
    padding:22px 24px;
    border-left:4px solid var(--rt-primary);
    border-radius:0 16px 16px 0;
    background:var(--rt-primary-soft);
}

.rt-article-callout strong{
    display:block;
    margin-bottom:7px;
    color:var(--rt-navy);
}

.rt-article-callout p:last-child{
    margin-bottom:0;
}

/* =========================================================
   ARTICLE FAQ
========================================================= */

.rt-article-faq .accordion-item{
    border:1px solid #DFE7EB;
    border-radius:14px !important;
    overflow:hidden;
    background:#fff;
}

.rt-article-faq .accordion-item + .accordion-item{
    margin-top:10px;
}

.rt-article-faq .accordion-button{
    color:var(--rt-navy);
    background:#fff;
    font-weight:750;
    box-shadow:none;
}

.rt-article-faq .accordion-button:not(.collapsed){
    color:var(--rt-navy);
    background:#F0F8F7;
}

.rt-article-faq .accordion-body{
    color:#566A77;
    line-height:1.65;
}

/* =========================================================
   COMPACT TIP LIST – CIKKHEZ
========================================================= */

.rt-compact-tip-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.rt-compact-tip{
    display:flex;
    align-items:center;
    gap:13px;
    padding:14px 15px;
    border:1px solid #D8E8E6;
    border-radius:13px;
    background:#fff;
    color:var(--rt-navy);
    text-decoration:none;
}

.rt-compact-tip-icon{
    flex:0 0 34px;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#E4F6F4;
    color:var(--rt-primary);
}

.rt-compact-tip span:last-child{
    font-size:.9rem;
    font-weight:700;
    line-height:1.35;
}

/* =========================================================
   RESPONSIVE – ARTICLES
========================================================= */

@media (max-width:991.98px){
    .rt-article-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .rt-article-hero-grid{
        grid-template-columns:1fr;
        gap:28px;
    }

    .rt-article-layout{
        grid-template-columns:1fr;
        gap:28px;
    }

    .rt-article-body{
        max-width:none;
    }

    .rt-article-toc{
        display:none;
    }

    .rt-article-mobile-toc{
        display:block;
        margin-bottom:30px;
    }

    .rt-article-mobile-toc .accordion-button{
        color:var(--rt-navy);
        background:#F7FAFB;
        font-weight:750;
        box-shadow:none;
    }
}

@media (max-width:767.98px){
    .rt-feature-article-inner,
    .rt-feature-article-inner.has-image{
        grid-template-columns:1fr;
        padding:22px;
    }

    .rt-feature-article-visual{
        min-height:210px;
    }

    .rt-feature-article-visual img{
        min-height:210px;
    }

    .rt-article-grid{
        grid-template-columns:1fr;
    }

    .rt-article-card{
        min-height:auto;
    }

    .rt-article-hero{
        padding:34px 0 36px;
    }

    .rt-article-hero h1{
        font-size:2rem;
    }

    .rt-article-hero-lead{
        font-size:1rem;
    }

    .rt-compact-tip-list{
        grid-template-columns:1fr;
    }
}
