/* ================================================================
   MRDIB — style_blog.css v6.1 | Professional Editorial Journal
   Full fix: hero, controls, pagination, charts, slider
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&display=swap');

:root {
  --night:#060c1e; --navy:#0d1b3e; --navy-l:#152447; --slate:#1e3058;
  --gold:#c8a96e;  --gold-b:#e2c87a; --gold-d:#a07840;
  --text-1:#eef2ff; --text-2:#b8c3dc; --text-3:#7888a8;
  --glass:rgba(255,255,255,.05); --glass-b:rgba(255,255,255,.09);
  --glass-bd:rgba(255,255,255,.10); --gold-glow:rgba(200,169,110,.18);
  --radius:12px; --radius-l:20px; --dur:.3s;
  --ease:cubic-bezier(.22,.68,0,1.2);
  --font-d:'DM Serif Display',Georgia,serif;
  --font-s:'DM Sans','Segoe UI',sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--font-s);font-size:16px;line-height:1.7;color:var(--text-2);background:var(--night);overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;display:block}
ul{list-style:none}
button{font-family:var(--font-s);cursor:pointer;border:none;background:none}
.container{width:min(90%,1200px);margin-inline:auto;padding-inline:1rem}
section{padding:72px 0;position:relative}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s var(--ease)}
.reveal.from-left{transform:translateX(-22px)} .reveal.from-right{transform:translateX(22px)}
.reveal.visible{opacity:1;transform:none}
.rd1{transition-delay:.1s} .rd2{transition-delay:.2s} .rd3{transition-delay:.3s}

/* ── Buttons ──────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.5rem;border-radius:var(--radius);font-weight:600;font-size:.85rem;transition:all var(--dur) ease;cursor:pointer;border:none}
.btn-gold{background:linear-gradient(135deg,var(--gold-b),var(--gold));color:var(--night);box-shadow:0 4px 18px rgba(200,169,110,.28)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(200,169,110,.42)}
.btn-ghost{background:var(--glass);border:1px solid var(--glass-bd);color:var(--text-1)}
.btn-ghost:hover{background:var(--glass-b);transform:translateY(-2px)}
.btn-accent{background:linear-gradient(135deg,var(--gold-b),var(--gold));color:var(--night);padding:.5rem 1.2rem;font-size:.8rem}
.btn-accent:hover{transform:translateY(-2px)}

/* ════════════════════════════════════════════════════════
   READING PROGRESS
════════════════════════════════════════════════════════ */
.reading-progress{position:fixed;top:0;left:0;height:3px;z-index:2001;background:linear-gradient(90deg,var(--gold-d),var(--gold-b),var(--gold));transition:width .12s linear;width:0;will-change:width}

/* ════════════════════════════════════════════════════════
   HEADER
════════════════════════════════════════════════════════ */
header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:.9rem 0;transition:all .4s ease;border-bottom:1px solid transparent}
header.scrolled{background:rgba(6,12,30,.92);backdrop-filter:blur(20px) saturate(1.4);border-bottom-color:rgba(255,255,255,.07);padding:.65rem 0;box-shadow:0 4px 40px rgba(0,0,0,.35)}
.header-container{display:flex;align-items:center;gap:1.5rem}
.logo img{height:50px;width:50px;border-radius:50%;border:2px solid rgba(200,169,110,.4);transition:border-color var(--dur)}
.logo:hover img{border-color:var(--gold)}
.nav-menu{display:flex;align-items:center;gap:.2rem;margin-left:auto}
.nav-link{font-size:.86rem;font-weight:500;color:var(--text-2);padding:.4rem .8rem;border-radius:8px;transition:all .25s;position:relative}
.nav-link:hover,.nav-link.active{color:var(--text-1);background:var(--glass)}
.nav-link.active::after{content:'';position:absolute;bottom:-2px;left:50%;transform:translateX(-50%);width:20px;height:2px;background:var(--gold);border-radius:2px}
.hamburger{display:none;color:var(--text-1);font-size:1.2rem;padding:.4rem;margin-left:auto;cursor:pointer}
.availability-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .65rem;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.25);border-radius:20px;font-size:.72rem;font-weight:600;color:#4ade80;white-space:nowrap}
.availability-badge .dot{width:7px;height:7px;background:#4ade80;border-radius:50%;animation:pulse-dot 1.5s ease infinite}
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}
.language-selector{position:relative;margin-left:.4rem}
.language-btn{display:flex;align-items:center;gap:.35rem;padding:.38rem .7rem;background:var(--glass);border:1px solid var(--glass-bd);border-radius:8px;color:var(--text-2);font-size:.8rem;cursor:pointer;transition:all .25s}
.language-btn:hover{background:var(--glass-b);color:var(--text-1)}
.language-btn .fa-chevron-down{font-size:.58rem;opacity:.6;transition:transform .25s}
.language-selector.open .fa-chevron-down{transform:rotate(180deg)}
.language-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:var(--navy-l);border:1px solid var(--glass-bd);border-radius:10px;min-width:145px;box-shadow:0 16px 48px rgba(0,0,0,.5);overflow:hidden;z-index:200}
.language-dropdown.active{display:block}
.language-option{display:flex;align-items:center;gap:.55rem;padding:.55rem 1rem;font-size:.82rem;color:var(--text-2);cursor:pointer;transition:all .2s}
.language-option:hover{background:var(--glass);color:var(--text-1)}
.language-option.disabled{opacity:.35;pointer-events:none}

/* ════════════════════════════════════════════════════════
   HERO — Editorial Masthead
════════════════════════════════════════════════════════ */
.blog-hero{min-height:62vh;display:flex;align-items:center;position:relative;overflow:hidden;padding-top:80px}
.blog-hero-bg{position:absolute;inset:0;background-image:url('/assets/images/background.jpg');background-size:cover;background-position:center;background-attachment:fixed;filter:brightness(.2) saturate(.7);z-index:0}
.blog-hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(6,12,30,.97) 40%,rgba(13,27,62,.72) 70%,rgba(6,12,30,.88) 100%),linear-gradient(to bottom,transparent 55%,rgba(6,12,30,.95) 100%);z-index:1}
.blog-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(200,169,110,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(200,169,110,.04) 1px,transparent 1px);background-size:60px 60px;z-index:2}
.blog-hero-content{position:relative;z-index:3;display:grid;grid-template-columns:1.05fr .95fr;gap:3.5rem;align-items:center;padding:3rem 0;width:100%}
.blog-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}
.blog-eyebrow::before{content:'';display:inline-block;width:22px;height:1px;background:var(--gold)}
.blog-hero h1{font-family:var(--font-d);font-size:clamp(2.2rem,5vw,3.5rem);color:var(--text-1);line-height:1.14;margin-bottom:1.1rem}
.blog-hero h1 em{font-style:italic;color:var(--gold-b)}
.blog-hero-desc{font-size:.98rem;color:var(--text-2);line-height:1.75;max-width:500px;margin-bottom:1.8rem}
.blog-stats{display:flex;gap:2rem;flex-wrap:wrap}
.bstat-num{font-family:var(--font-d);font-size:1.9rem;color:var(--gold-b);line-height:1}
.bstat-lbl{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-top:.2rem}

/* Featured card in hero */
.hero-featured{background:var(--glass);border:1px solid rgba(200,169,110,.22);border-radius:var(--radius-l);overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.45);transition:transform .35s var(--ease),box-shadow .35s}
.hero-featured:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(0,0,0,.55)}
.hf-img{height:190px;overflow:hidden;position:relative;flex-shrink:0}
.hf-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.hero-featured:hover .hf-img img{transform:scale(1.05)}
.hf-badge{position:absolute;top:.8rem;left:.8rem;display:inline-flex;align-items:center;gap:.35rem;background:linear-gradient(135deg,var(--gold-b),var(--gold));color:var(--night);padding:.22rem .7rem;border-radius:20px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.hf-body{padding:1.2rem 1.3rem 1.4rem}
.hf-meta{display:flex;align-items:center;gap:.6rem;margin-bottom:.6rem;font-size:.73rem;flex-wrap:wrap}
.hf-cat{background:rgba(200,169,110,.12);border:1px solid rgba(200,169,110,.25);color:var(--gold);padding:.18rem .6rem;border-radius:20px;font-weight:600;font-size:.7rem}
.hf-date{color:var(--text-3)}
.hf-title{font-size:1.02rem;font-weight:700;color:var(--text-1);line-height:1.4;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hf-excerpt{font-size:.83rem;color:var(--text-2);line-height:1.6;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hf-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:700;color:var(--gold);transition:gap .2s}
.hf-link:hover{gap:.6rem}

/* ════════════════════════════════════════════════════════
   RECENT ARTICLES — Swiper slider
════════════════════════════════════════════════════════ */
.recent-section{background:linear-gradient(180deg,var(--night) 0%,var(--navy-l) 100%);padding:56px 0 64px;overflow:hidden}
.section-label{font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.45rem}
.section-title{font-family:var(--font-d);font-size:clamp(1.7rem,3.5vw,2.4rem);color:var(--text-1);line-height:1.2;margin-bottom:.5rem}
.section-subtitle{font-size:.92rem;color:var(--text-2);max-width:640px;line-height:1.65}
.recent-swiper{overflow:visible;padding-bottom:40px !important;margin-top:2rem}
.recent-swiper .swiper-slide{height:auto}
.recent-swiper .swiper-pagination{bottom:-4px}
.recent-swiper .swiper-pagination-bullet{background:var(--glass-bd) !important;opacity:.7;width:8px;height:8px;transition:all .25s}
.recent-swiper .swiper-pagination-bullet-active{background:var(--gold) !important;opacity:1;width:22px;border-radius:4px}

/* Slide card */
.slide-card{background:var(--glass);border:1px solid var(--glass-bd);border-radius:var(--radius-l);overflow:hidden;height:100%;display:flex;flex-direction:column;transition:border-color .3s,box-shadow .3s,transform .3s var(--ease)}
.slide-card:hover{border-color:rgba(200,169,110,.35);box-shadow:0 18px 44px rgba(0,0,0,.45);transform:translateY(-5px)}
.sc-img{height:175px;overflow:hidden;position:relative;flex-shrink:0}
.sc-img img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.slide-card:hover .sc-img img{transform:scale(1.06)}
.sc-img-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(6,12,30,.6) 0%,transparent 55%)}
.sc-num{position:absolute;top:.65rem;right:.65rem;background:rgba(6,12,30,.85);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);color:var(--text-3);font-size:.64rem;font-weight:700;padding:.14rem .44rem;border-radius:6px}
.sc-body{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;flex:1}
.sc-meta{display:flex;align-items:center;gap:.45rem;margin-bottom:.55rem;flex-wrap:wrap}
.sc-cat{background:rgba(200,169,110,.1);border:1px solid rgba(200,169,110,.25);color:var(--gold);padding:.14rem .5rem;border-radius:20px;font-size:.67rem;font-weight:700}
.sc-date{font-size:.7rem;color:var(--text-3)}
.sc-rt{font-size:.68rem;color:var(--text-3);display:flex;align-items:center;gap:.2rem}
.sc-rt::before{content:'·'}
.sc-title{font-size:.94rem;font-weight:700;color:var(--text-1);line-height:1.38;margin-bottom:.45rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sc-excerpt{font-size:.8rem;color:var(--text-2);line-height:1.6;margin-bottom:.85rem;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sc-link{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:700;color:var(--gold);transition:gap .2s;margin-top:auto}
.sc-link:hover{gap:.55rem}

/* ════════════════════════════════════════════════════════
   STICKY CONTROLS BAR
════════════════════════════════════════════════════════ */
.blog-controls{position:sticky;top:68px;z-index:100;background:rgba(6,12,30,.96);backdrop-filter:blur(20px) saturate(1.5);border-bottom:1px solid rgba(200,169,110,.1);transition:box-shadow .3s}
.blog-controls.shadowed{box-shadow:0 4px 32px rgba(0,0,0,.45)}

/* Row 1: search + sort + count */
.controls-row1{display:flex;align-items:center;gap:1rem;padding:.75rem 0 .5rem;flex-wrap:wrap}
.search-wrap{position:relative;flex:1;min-width:200px;max-width:420px}
.search-input{width:100%;padding:.62rem 2.2rem .62rem 2.4rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);color:var(--text-1);font-family:var(--font-s);font-size:.86rem;transition:border-color .25s,background .25s;outline:none}
.search-input::placeholder{color:var(--text-3)}
.search-input:focus{border-color:rgba(200,169,110,.5);background:rgba(255,255,255,.1)}
.s-icon{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);color:var(--text-3);font-size:.8rem;pointer-events:none;transition:color .25s}
.search-wrap:focus-within .s-icon{color:var(--gold)}
.s-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:var(--text-3);font-size:.75rem;cursor:pointer;opacity:0;transition:opacity .2s;padding:.15rem;background:none;border:none}
.s-clear.show{opacity:1}
.s-clear:hover{color:var(--text-1)}
.sort-wrap{display:flex;align-items:center;gap:.35rem;white-space:nowrap}
.sort-lbl{font-size:.74rem;color:var(--text-3)}
.sort-sel{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-2);font-family:var(--font-s);font-size:.77rem;padding:.32rem .65rem;outline:none;cursor:pointer;transition:border-color .25s}
.sort-sel:hover{border-color:rgba(200,169,110,.35);color:var(--gold)}
.sort-sel option{background:var(--navy)}
.results-count{display:none;font-size:.78rem;color:var(--text-3);white-space:nowrap;padding:.3rem .6rem;background:rgba(200,169,110,.08);border:1px solid rgba(200,169,110,.2);border-radius:20px}
.results-count.show{display:inline-flex;align-items:center;gap:.3rem}
.results-count strong{color:var(--gold)}

/* Row 2: filter pills — ALWAYS VISIBLE, horizontal scroll */
.controls-row2{padding:.3rem 0 .65rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.controls-row2::-webkit-scrollbar{display:none}
.filter-pills{display:flex;gap:.4rem;flex-wrap:nowrap;width:max-content;min-width:100%}
.fpill{display:inline-flex;align-items:center;gap:.28rem;padding:.32rem .85rem;border-radius:20px;font-size:.74rem;font-weight:600;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.05);color:var(--text-3);cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}
.fpill i{font-size:.65rem;flex-shrink:0}
.fpill .pc{background:rgba(200,169,110,.12);border-radius:10px;padding:.03rem .35rem;font-size:.63rem}
.fpill:hover{background:rgba(200,169,110,.1);border-color:rgba(200,169,110,.3);color:var(--text-2)}
.fpill.active{background:rgba(200,169,110,.15);border-color:rgba(200,169,110,.55);color:var(--gold)}
.fpill.active .pc{background:rgba(200,169,110,.2)}

/* Autocomplete dropdown */
.search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--navy-l);border:1px solid rgba(200,169,110,.22);border-radius:var(--radius);box-shadow:0 16px 48px rgba(0,0,0,.6);z-index:400;display:none;max-height:300px;overflow-y:auto}
.search-dropdown.open{display:block}
.sd-group{padding:.2rem 0}
.sd-lbl{padding:.28rem .9rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.05)}
.sd-item{display:flex;align-items:center;gap:.6rem;padding:.48rem .9rem;font-size:.82rem;color:var(--text-2);cursor:pointer;transition:background .12s}
.sd-item:hover,.sd-item.hi{background:rgba(200,169,110,.09);color:var(--text-1)}
.sd-item i{font-size:.7rem;color:var(--gold);width:14px;text-align:center;flex-shrink:0}
.sd-item mark{background:transparent;color:var(--gold-b);font-weight:600}
.sd-empty{padding:.7rem .9rem;font-size:.82rem;color:var(--text-3);font-style:italic}

/* ════════════════════════════════════════════════════════
   TAG CLOUD
════════════════════════════════════════════════════════ */
.tag-cloud-bar{background:var(--night);padding:28px 0 36px}
.tc-title{font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}
.tc-title::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.06)}
.tag-cloud{display:flex;flex-wrap:wrap;gap:.35rem}
.tc-chip{display:inline-flex;align-items:center;gap:.2rem;padding:.24rem .65rem;border-radius:20px;font-size:.73rem;font-weight:500;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:var(--text-3);cursor:pointer;transition:all .2s;user-select:none}
.tc-chip:hover{background:rgba(200,169,110,.1);border-color:rgba(200,169,110,.3);color:var(--gold)}
.tc-chip.active{background:rgba(200,169,110,.15);border-color:rgba(200,169,110,.5);color:var(--gold-b)}
.tc-n{font-size:.62rem;opacity:.65}

/* ════════════════════════════════════════════════════════
   ARTICLES GRID
════════════════════════════════════════════════════════ */
.all-articles{background:var(--night);padding:48px 0 80px}
.articles-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}
.arts-meta{font-size:.78rem;color:var(--text-3)}
.arts-meta strong{color:var(--text-2)}
.articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}

/* Article card */
.article-card{background:var(--glass);border:1px solid var(--glass-bd);border-radius:var(--radius-l);overflow:hidden;display:flex;flex-direction:column;transition:transform .32s var(--ease),border-color .3s,box-shadow .32s;cursor:default}
.article-card:hover{transform:translateY(-6px);border-color:rgba(200,169,110,.35);box-shadow:0 20px 50px rgba(0,0,0,.4)}
.article-card.hidden{display:none !important}
.art-img-wrap{height:192px;overflow:hidden;position:relative;flex-shrink:0}
.article-img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.article-card:hover .article-img{transform:scale(1.06)}
.art-img-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(6,12,30,.65) 0%,transparent 50%)}
.art-num{position:absolute;top:.7rem;right:.7rem;background:rgba(6,12,30,.85);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);color:var(--text-3);font-size:.65rem;font-weight:700;padding:.16rem .48rem;border-radius:6px}
.art-body{padding:1.2rem 1.25rem 1.3rem;display:flex;flex-direction:column;flex:1}
.article-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-bottom:.6rem}
.article-category{background:rgba(200,169,110,.1);border:1px solid rgba(200,169,110,.25);color:var(--gold);padding:.15rem .52rem;border-radius:20px;font-size:.67rem;font-weight:700;letter-spacing:.04em}
.article-date{font-size:.7rem;color:var(--text-3)}
.art-rt{font-size:.68rem;color:var(--text-3);display:flex;align-items:center;gap:.22rem}
.art-rt::before{content:'·'}
.article-title{font-size:.96rem;font-weight:700;color:var(--text-1);line-height:1.4;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.article-excerpt{font-size:.81rem;color:var(--text-2);line-height:1.65;margin-bottom:.85rem;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.art-tags{display:flex;flex-wrap:wrap;gap:.28rem;margin-bottom:.85rem}
.art-tag{font-size:.66rem;font-weight:500;padding:.12rem .48rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:4px;color:var(--text-3);cursor:pointer;transition:all .2s}
.art-tag:hover{background:rgba(200,169,110,.1);border-color:rgba(200,169,110,.3);color:var(--gold)}
.art-tag.hl{background:rgba(200,169,110,.12);border-color:rgba(200,169,110,.35);color:var(--gold)}
.art-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}
.art-link{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:700;color:var(--gold);transition:gap .2s}
.art-link:hover{gap:.55rem}
.art-link i{font-size:.68rem}
.art-bk{width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:var(--text-3);font-size:.75rem;cursor:pointer;transition:all .2s}
.art-bk:hover{background:rgba(200,169,110,.12);border-color:rgba(200,169,110,.3);color:var(--gold)}
.art-bk.saved{background:rgba(200,169,110,.15);border-color:rgba(200,169,110,.4);color:var(--gold-b)}
.no-results{grid-column:1/-1;text-align:center;padding:4rem 2rem;display:none}
.no-results-icon{font-size:2.8rem;color:rgba(200,169,110,.2);margin-bottom:.9rem}
.no-results h3{font-family:var(--font-d);font-size:1.5rem;color:var(--text-1);margin-bottom:.4rem}
.no-results p{color:var(--text-2);font-size:.9rem;margin-bottom:1.3rem}

/* ════════════════════════════════════════════════════════
   PAGINATION — fully numbered
════════════════════════════════════════════════════════ */
.pag-wrap{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:2.5rem;flex-wrap:wrap}
.pag-btn{min-width:38px;height:38px;padding:0 .75rem;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:.83rem;font-weight:600;cursor:pointer;transition:all .22s;background:var(--glass);border:1px solid var(--glass-bd);color:var(--text-2);gap:.3rem}
.pag-btn:hover:not(:disabled){background:rgba(200,169,110,.12);border-color:rgba(200,169,110,.38);color:var(--gold);transform:translateY(-1px)}
.pag-btn.active{background:linear-gradient(135deg,var(--gold-b),var(--gold));color:var(--night);border-color:transparent;box-shadow:0 4px 14px rgba(200,169,110,.35)}
.pag-btn:disabled{opacity:.3;cursor:not-allowed}
.pag-btn.pag-arrow{font-size:.78rem}
.pag-sep{color:var(--text-3);font-size:.9rem;padding:0 .2rem;line-height:38px}

/* ════════════════════════════════════════════════════════
   CATEGORIES
════════════════════════════════════════════════════════ */
.categories-section{background:linear-gradient(180deg,var(--night),var(--navy) 50%,var(--night));padding:56px 0 52px}
.cats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:.9rem;margin-top:1.5rem}
.cat-card{background:var(--glass);border:1px solid var(--glass-bd);border-radius:var(--radius);padding:1.1rem;text-align:center;cursor:pointer;transition:all .28s var(--ease)}
.cat-card:hover{transform:translateY(-4px);border-color:rgba(200,169,110,.35);box-shadow:0 12px 30px rgba(0,0,0,.3)}
.cat-card.active{border-color:rgba(200,169,110,.55);background:rgba(200,169,110,.08)}
.cat-icon{font-size:1.35rem;color:var(--gold);margin-bottom:.45rem}
.cat-title{font-size:.8rem;font-weight:700;color:var(--text-1);margin-bottom:.15rem;line-height:1.3}
.cat-count{font-family:var(--font-d);font-size:1.15rem;color:var(--gold-b);line-height:1;margin-bottom:.2rem}
.cat-card p{font-size:.7rem;color:var(--text-3);line-height:1.4}

/* ════════════════════════════════════════════════════════
   NEWSLETTER INLINE
════════════════════════════════════════════════════════ */
.nl-inline{background:linear-gradient(135deg,var(--navy-l),var(--slate));border:1px solid rgba(200,169,110,.15);border-radius:var(--radius-l);padding:2rem;text-align:center;margin:2rem 0}
.nl-inline h3{font-family:var(--font-d);font-size:1.25rem;color:var(--text-1);margin-bottom:.35rem}
.nl-inline p{font-size:.85rem;color:var(--text-2);margin-bottom:1rem}
.nl-form{display:flex;gap:.5rem;justify-content:center;max-width:420px;margin:0 auto;flex-wrap:wrap}
.nl-form input{flex:1;min-width:180px;padding:.62rem .9rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);color:var(--text-1);font-family:var(--font-s);font-size:.86rem;outline:none;transition:border-color .25s}
.nl-form input::placeholder{color:var(--text-3)}
.nl-form input:focus{border-color:rgba(200,169,110,.5)}
.nl-msg{font-size:.78rem;margin-top:.5rem;text-align:center;display:none}
.nl-msg.ok{color:#4ade80;display:block}
.nl-msg.err{color:#f87171;display:block}

/* ════════════════════════════════════════════════════════
   METHODOLOGIES (fixed chart containers)
════════════════════════════════════════════════════════ */
.methodologies-section{background:var(--night);padding:50px 0}

.methodology-cards{
  grid-template-columns:repeat(4,1fr);
}

@media(max-width:900px){
  .methodology-cards{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:500px){
  .methodology-cards{grid-template-columns:1fr}
}

.methodology-card{
  background:var(--glass);
  border:1px solid var(--glass-bd);
  border-radius:var(--radius);
  padding:.9rem 1rem;
  overflow:hidden;
  transition:border-color .3s,box-shadow .3s;
}
.methodology-card:hover{border-color:rgba(200,169,110,.3);box-shadow:0 8px 20px rgba(0,0,0,.2)}

.methodology-card h3{font-size:.82rem;font-weight:700;color:var(--gold);margin-bottom:.35rem;display:flex;align-items:center;gap:.4rem}
.methodology-card h3 i{font-size:.75rem}
.methodology-card>p{font-size:.78rem;color:var(--text-2);line-height:1.55;margin-bottom:.5rem}
.methodology-card ul{padding-left:.9rem;margin-bottom:0}
.methodology-card li{font-size:.74rem;color:var(--text-2);margin-bottom:.15rem;line-height:1.4}
.methodology-card li::marker{color:var(--gold)}

/* FIX: chart containers must have explicit height and relative position */
.gantt-container,.chart-container,.skills-chart{
  position:relative !important;
  height:220px !important;
  width:100% !important;
  overflow:hidden;
  background:rgba(255,255,255,.03);
  border-radius:8px;
  margin-top:.5rem;
}
.gantt-container canvas,.chart-container canvas,.skills-chart canvas{
  max-width:100% !important;
  max-height:220px !important;
}

/* ════════════════════════════════════════════════════════
   DIGITAL TOOLKIT (preserved)
════════════════════════════════════════════════════════ */
#digital-toolkit{background:linear-gradient(180deg,var(--night),var(--navy));padding:70px 0}
.role-selector{display:flex;gap:.8rem;flex-wrap:wrap;margin:1.5rem 0}
.role-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.3rem;border-radius:var(--radius);font-size:.85rem;font-weight:600;cursor:pointer;background:var(--glass);border:1px solid var(--glass-bd);color:var(--text-2);transition:all .25s}
.role-btn:hover{background:var(--glass-b);color:var(--text-1)}
.role-btn.active{background:rgba(200,169,110,.12);border-color:rgba(200,169,110,.4);color:var(--gold)}
.role-btn.po.active{background:rgba(99,179,237,.1);border-color:rgba(99,179,237,.4);color:#63b3ed}
.role-btn.pm.active{background:rgba(154,230,180,.1);border-color:rgba(154,230,180,.4);color:#9ae6b4}
.role-btn.ba.active{background:rgba(252,179,212,.1);border-color:rgba(252,179,212,.4);color:#fcb3d4}
.role-content{display:none}
.role-content.active{display:block}
.role-header{margin-bottom:1.2rem}
.role-title{font-family:var(--font-d);font-size:1.3rem;color:var(--text-1);margin-bottom:.3rem}
.role-description{font-size:.88rem;color:var(--text-2)}
.phase-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
.phase-tab{padding:.4rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600;cursor:pointer;background:var(--glass);border:1px solid var(--glass-bd);color:var(--text-2);transition:all .2s}
.phase-tab.active{background:rgba(200,169,110,.12);border-color:rgba(200,169,110,.4);color:var(--gold)}
.phase-content{display:none}
.phase-content.active{display:block}
.phase-content h3{font-size:1rem;font-weight:700;color:var(--text-1);margin-bottom:.4rem}
.phase-content>p{font-size:.85rem;color:var(--text-2);margin-bottom:1.2rem}
.deliverables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}
.deliverable-card{background:var(--glass);border:1px solid var(--glass-bd);border-radius:var(--radius);overflow:hidden}
.deliverable-header{padding:.9rem 1rem;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06)}
.deliverable-title{font-size:.88rem;font-weight:700;color:var(--text-1);margin-bottom:.2rem}
.deliverable-description{font-size:.76rem;color:var(--text-3)}
.deliverable-body{padding:.9rem 1rem}
.file-formats{display:flex;gap:.35rem;margin-bottom:.7rem;flex-wrap:wrap}
.format-badge{font-size:.68rem;font-weight:700;padding:.18rem .5rem;border-radius:4px;display:flex;align-items:center;gap:.25rem}
.format-badge.word{background:rgba(99,179,237,.12);color:#63b3ed;border:1px solid rgba(99,179,237,.25)}
.format-badge.pdf{background:rgba(252,129,74,.12);color:#fc814a;border:1px solid rgba(252,129,74,.25)}
.format-badge.excel{background:rgba(154,230,180,.12);color:#9ae6b4;border:1px solid rgba(154,230,180,.25)}
.format-badge.miro{background:rgba(252,179,212,.12);color:#fcb3d4;border:1px solid rgba(252,179,212,.25)}
.deliverable-body p{font-size:.8rem;color:var(--text-2);margin-bottom:.7rem;line-height:1.55}

/* ════════════════════════════════════════════════════════
   CONTACT
════════════════════════════════════════════════════════ */
.contact{background:var(--night);padding:80px 0}
.contact-container{display:grid;grid-template-columns:1fr 1.6fr;gap:3.5rem;align-items:start}
.contact-info{display:flex;flex-direction:column;gap:1.2rem}
.contact-item{display:flex;align-items:flex-start;gap:.9rem;padding:.9rem;background:var(--glass);border:1px solid var(--glass-bd);border-radius:var(--radius);transition:border-color .3s}
.contact-item:hover{border-color:rgba(200,169,110,.3)}
.contact-icon{width:38px;height:38px;border-radius:9px;background:rgba(200,169,110,.1);border:1px solid rgba(200,169,110,.2);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:.85rem;flex-shrink:0}
.contact-details h3{font-size:.74rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.2rem}
.contact-details a,.contact-details p{font-size:.88rem;color:var(--text-2)}
.social-links{display:flex;gap:.55rem;margin-top:.4rem}
.social-link{width:34px;height:34px;border-radius:50%;background:var(--glass);border:1px solid var(--glass-bd);display:flex;align-items:center;justify-content:center;color:var(--text-2);font-size:.82rem;transition:all .25s}
.social-link:hover{background:rgba(200,169,110,.15);border-color:var(--gold);color:var(--gold)}
.contact-form-wrap{background:var(--glass);border:1px solid var(--glass-bd);border-radius:var(--radius-l);padding:2rem}
.cf-inner{display:flex;flex-direction:column;gap:.9rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.form-group{display:flex;flex-direction:column;gap:.28rem}
label{font-size:.72rem;font-weight:600;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase}
input,select,textarea{width:100%;padding:.65rem .95rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);color:var(--text-1);font-family:var(--font-s);font-size:.88rem;transition:border-color .25s,background .25s;outline:none}
input::placeholder,textarea::placeholder{color:var(--text-3)}
input:focus,select:focus,textarea:focus{border-color:rgba(200,169,110,.5);background:rgba(255,255,255,.07)}
select option{background:var(--navy);color:var(--text-1)}
textarea{min-height:100px;resize:vertical;line-height:1.6}
.err-msg{font-size:.72rem;color:#f87171;min-height:.75rem}
#formMsg{padding:.65rem 1rem;border-radius:8px;font-size:.85rem;display:none}
#formMsg.success{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#4ade80;display:block}
#formMsg.error{background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.3);color:#f87171;display:block}

/* ════════════════════════════════════════════════════════
   FOOTER
════════════════════════════════════════════════════════ */
footer{background:linear-gradient(180deg,var(--navy),rgba(6,12,30,.98));border-top:1px solid rgba(200,169,110,.1);padding:3.5rem 0 1.5rem}
.footer-content{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2.5rem;margin-bottom:2.5rem}
.footer-about img{width:55px;height:55px;border-radius:50%;margin-bottom:.9rem;border:2px solid rgba(200,169,110,.25)}
.footer-about p{font-size:.85rem;color:var(--text-3);line-height:1.65;margin-bottom:.9rem}
.footer-links h3,.footer-newsletter h3{font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem}
.footer-links ul{display:flex;flex-direction:column;gap:.45rem}
.footer-links a{font-size:.85rem;color:var(--text-3);transition:color .2s}
.footer-links a:hover{color:var(--gold)}
.fn-form{display:flex;gap:.45rem}
.fn-form input{flex:1;padding:.55rem .85rem}
.fn-form .btn{flex-shrink:0;padding:.55rem .9rem;font-size:.78rem;display:inline-flex;align-items:center;justify-content:center}
.fn-msg{font-size:.78rem;margin-top:.4rem;display:none}
.fn-msg.ok{color:#4ade80;display:block}
.fn-msg.err{color:#f87171;display:block}
.copyright{border-top:1px solid rgba(255,255,255,.06);padding-top:1.3rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.copyright p{font-size:.78rem;color:var(--text-3)}
.flink{color:var(--gold);transition:opacity .2s}
.flink:hover{opacity:.75}

/* ════════════════════════════════════════════════════════
   FLOATING WIDGETS
════════════════════════════════════════════════════════ */
.back-to-top{position:fixed;bottom:2rem;right:2rem;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--gold-b),var(--gold));color:var(--night);display:flex;align-items:center;justify-content:center;font-size:.88rem;cursor:pointer;opacity:0;transform:translateY(12px);transition:all .3s;z-index:900;box-shadow:0 4px 18px rgba(200,169,110,.4)}
.back-to-top.show{opacity:1;transform:translateY(0)}
.back-to-top:hover{transform:translateY(-3px)}
.theme-switch{position:fixed;bottom:2rem;right:5rem;width:42px;height:42px;border-radius:50%;background:var(--glass);border:1px solid var(--glass-bd);color:var(--text-2);display:flex;align-items:center;justify-content:center;font-size:.88rem;cursor:pointer;z-index:900;backdrop-filter:blur(8px);transition:all .25s}
.theme-switch:hover{background:var(--glass-b);color:var(--text-1)}
#chatbot-button{position:fixed;bottom:2rem;left:2rem;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--gold-b),var(--gold));color:var(--night);display:flex;align-items:center;justify-content:center;font-size:1.05rem;cursor:pointer;z-index:900;box-shadow:0 4px 22px rgba(200,169,110,.4);transition:transform .3s,box-shadow .3s}
#chatbot-button:hover{transform:scale(1.1);box-shadow:0 6px 30px rgba(200,169,110,.55)}
#chatbot-container{position:fixed;bottom:5.5rem;left:2rem;width:310px;background:var(--navy-l);border:1px solid rgba(200,169,110,.2);border-radius:var(--radius-l);box-shadow:0 24px 64px rgba(0,0,0,.6);z-index:901;overflow:hidden;opacity:0;transform:translateY(20px) scale(.96);pointer-events:none;transition:all .3s var(--ease)}
#chatbot-container.show{opacity:1;transform:none;pointer-events:auto}
#chatbot-header{background:linear-gradient(135deg,var(--slate),var(--navy-l));padding:.9rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.07)}
.chatbot-title{display:flex;align-items:center;gap:.55rem}
.chatbot-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--gold-b),var(--gold));display:flex;align-items:center;justify-content:center;color:var(--night);font-size:.85rem}
.chatbot-info h3{font-size:.88rem;font-weight:600;color:var(--text-1)}
.chatbot-info p{font-size:.7rem;color:#4ade80}
#chatbot-close{cursor:pointer;color:var(--text-3);font-size:.88rem;padding:.2rem;transition:color .2s;background:none;border:none}
#chatbot-close:hover{color:var(--text-1)}
#chatbot-messages{height:220px;overflow-y:auto;padding:.9rem;display:flex;flex-direction:column;gap:.5rem;scroll-behavior:smooth}
.message{max-width:85%;padding:.55rem .85rem;border-radius:11px;font-size:.82rem;line-height:1.5}
.bot-message{background:rgba(255,255,255,.07);color:var(--text-2);align-self:flex-start}
.user-message{background:rgba(200,169,110,.15);border:1px solid rgba(200,169,110,.25);color:var(--text-1);align-self:flex-end}
#chatbot-input{display:flex;gap:.45rem;padding:.7rem;border-top:1px solid rgba(255,255,255,.07)}
#chatbot-input input{flex:1;padding:.48rem .75rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-1);font-size:.82rem;outline:none}
#chatbot-input button{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--gold-b),var(--gold));color:var(--night);display:flex;align-items:center;justify-content:center;font-size:.82rem;flex-shrink:0;border:none;cursor:pointer}
body.dark-mode{--night:#030810;--navy:#070f24}

/* ════════════════════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════════════════════ */
@media(max-width:1100px){
  .blog-hero-content{grid-template-columns:1fr}
  .hero-featured{max-width:540px;margin-top:2rem}
}
@media(max-width:900px){
  .articles-grid{grid-template-columns:repeat(2,1fr)}
  .contact-container{grid-template-columns:1fr}
  .footer-content{grid-template-columns:1fr 1fr;gap:2rem}
  .cats-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
}
@media(max-width:768px){
  section{padding:56px 0}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(6,12,30,.97);backdrop-filter:blur(20px);flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid rgba(255,255,255,.08);padding:.5rem 0}
  .nav-menu.active{display:flex}
  .nav-link{padding:.75rem 1.5rem;border-radius:0}
  .hamburger{display:flex}
  .availability-badge{display:none}
  .articles-grid{grid-template-columns:1fr}
  .controls-row1{flex-wrap:wrap}
  .search-wrap{max-width:100%;min-width:100%;flex:none;width:100%}
  .sort-wrap{width:100%}
  .footer-content{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .back-to-top{bottom:1.5rem;right:1.5rem}
  .theme-switch{bottom:1.5rem;right:4.5rem}
  #chatbot-button{bottom:1.5rem;left:1.5rem}
}
@media(max-width:480px){
  .cats-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}
  .blog-stats{gap:1.2rem}
  .articles-grid{grid-template-columns:1fr}
}

/* ── Swiper overrides ──────────────────────────────── */
.swiper-wrapper{align-items:stretch}
.swiper-slide{height:auto;box-sizing:border-box}
