/* === KLARITY — MAIN STYLESHEET === */
/* Design System: "Аналитическая Чистота" */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Open+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap');

/* ── VARIABLES ───────────────────────────────────────────────────── */
:root {
  --primary:       #004D40;
  --primary-dark:  #00352B;
  --primary-light: #00695C;
  --accent:        #FFA000;
  --accent-hover:  #FF8F00;
  --text-main:     #212121;
  --text-sec:      #757575;
  --bg-main:       #FAFAFA;
  --bg-sec:        #F2F4F3;
  --bg-card:       #FFFFFF;
  --border:        #E0E0E0;
  --border-light:  #EEEEEE;
  --danger:        #C62828;

  --font-h: 'Montserrat', sans-serif;
  --font-b: 'Open Sans', sans-serif;

  --sh-sm: 0 1px 4px rgba(0,0,0,.06);
  --sh-md: 0 2px 8px rgba(0,0,0,.08);
  --sh-lg: 0 4px 16px rgba(0,0,0,.12);
  --sh-hv: 0 6px 24px rgba(0,0,0,.15);

  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 12px;

  --wrap: 1200px;
  --tr: all .22s ease;
}

/* ── RESET ───────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font-b);color:var(--text-main);background:var(--bg-main);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary);text-decoration:none;transition:var(--tr)}
a:hover{color:var(--primary-light)}
ul{list-style:none}
button{cursor:pointer;font-family:var(--font-b)}

/* ── WARNING BANNER ──────────────────────────────────────────────── */
.warning-banner{
  background:var(--danger);color:#fff;padding:10px 20px;
  font-size:.78rem;font-weight:500;line-height:1.55;text-align:center;
  position:relative;z-index:1001;
}
.warning-banner strong{font-weight:700;letter-spacing:.02em}

/* ── CONTAINER ───────────────────────────────────────────────────── */
.container{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* ── SITE HEADER ─────────────────────────────────────────────────── */
.site-header{background:var(--primary);position:sticky;top:0;z-index:900;box-shadow:0 2px 12px rgba(0,0,0,.22)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-mark{width:36px;height:36px;background:var(--accent);border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;font-family:var(--font-h);font-weight:800;font-size:.95rem;color:#fff;letter-spacing:-.02em;flex-shrink:0}
.logo-wrap{display:flex;flex-direction:column;gap:1px}
.logo-name{font-family:var(--font-h);font-weight:700;font-size:1.35rem;color:#fff;letter-spacing:.05em;line-height:1.1}
.logo-sub{font-size:.6rem;color:rgba(255,255,255,.6);letter-spacing:.07em;text-transform:uppercase}

/* NAV */
.main-nav{display:flex;align-items:center;gap:3px}
.main-nav a{color:rgba(255,255,255,.82);font-size:.85rem;font-weight:500;padding:8px 11px;border-radius:var(--r-sm);transition:var(--tr);white-space:nowrap}
.main-nav a:hover,.main-nav a.active{color:#fff;background:rgba(255,255,255,.13)}
.nav-item{position:relative}
.nav-item:hover .dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.dropdown{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-lg);min-width:220px;padding:8px 0;opacity:0;visibility:hidden;transform:translateY(-8px);transition:var(--tr);z-index:200}
.dropdown a{display:block;padding:10px 20px;color:var(--text-main);font-size:.85rem;border-radius:0}
.dropdown a:hover{background:var(--bg-sec);color:var(--primary)}
.nav-cta{background:var(--accent)!important;color:#fff!important;border-radius:var(--r-sm)!important;padding:8px 18px!important;font-weight:600!important}
.nav-cta:hover{background:var(--accent-hover)!important;color:#fff!important}

/* HAMBURGER */
.hamburger{display:none;flex-direction:column;gap:5px;padding:6px;background:none;border:none}
.hamburger span{display:block;width:24px;height:2px;background:#fff;border-radius:2px;transition:var(--tr)}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* MOBILE NAV */
.mobile-nav{display:none;background:var(--primary-dark);flex-direction:column;gap:2px;padding:12px 16px 20px}
.mobile-nav.open{display:flex}
.mobile-nav a{color:rgba(255,255,255,.85);font-size:.9rem;padding:10px 14px;border-radius:var(--r-sm);transition:var(--tr)}
.mobile-nav a:hover{background:rgba(255,255,255,.1);color:#fff}

/* ── BREADCRUMB ──────────────────────────────────────────────────── */
.breadcrumb{background:var(--bg-sec);border-bottom:1px solid var(--border);padding:11px 0}
.bc-list{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.bc-list li{font-size:.78rem;color:var(--text-sec);display:flex;align-items:center;gap:7px}
.bc-list li::after{content:'›';color:var(--border)}
.bc-list li:last-child::after{display:none}
.bc-list a{color:var(--text-sec)}
.bc-list a:hover{color:var(--primary)}
.bc-list li:last-child{color:var(--text-main);font-weight:600}

/* ── PAGE HERO ───────────────────────────────────────────────────── */
.page-hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:#fff;padding:60px 0;text-align:center}
.page-hero h1{font-family:var(--font-h);font-size:2.1rem;font-weight:700;margin-bottom:14px;line-height:1.3}
.page-hero p{font-size:.95rem;opacity:.82;max-width:600px;margin:0 auto;line-height:1.75}

/* ── HOMEPAGE HERO ───────────────────────────────────────────────── */
.hero{background:var(--primary);color:#fff;padding:80px 0;overflow:hidden}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.hero-content h1{font-family:var(--font-h);font-size:2.55rem;font-weight:800;line-height:1.25;margin-bottom:20px}
.hero-content h1 em{color:var(--accent);font-style:normal}
.hero-content p{font-size:.97rem;opacity:.82;line-height:1.78;margin-bottom:32px;max-width:480px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-img{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-lg)}
.hero-img img{width:100%;height:400px;object-fit:cover}

/* ── BUTTONS ─────────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--r-sm);font-family:var(--font-b);font-size:.88rem;font-weight:600;transition:var(--tr);border:none;text-decoration:none;line-height:1.4}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-hover);color:#fff;transform:translateY(-1px);box-shadow:var(--sh-md)}
.btn-outline-w{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.45)}
.btn-outline-w:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}
.btn-primary-dark{background:var(--primary);color:#fff}
.btn-primary-dark:hover{background:var(--primary-dark);color:#fff;transform:translateY(-1px);box-shadow:var(--sh-md)}
.btn-ghost{background:var(--bg-sec);color:var(--text-main);border:1px solid var(--border)}
.btn-ghost:hover{background:var(--border);color:var(--text-main)}
.btn-sm{padding:8px 16px;font-size:.8rem}
.btn-lg{padding:15px 32px;font-size:1rem}

/* ── SECTIONS ────────────────────────────────────────────────────── */
.section{padding:80px 0}
.section-alt{background:var(--bg-sec)}
.sec-head{text-align:center;margin-bottom:48px}
.sec-label{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:10px}
.sec-title{font-family:var(--font-h);font-size:1.85rem;font-weight:700;color:var(--text-main);line-height:1.3;margin-bottom:14px}
.sec-desc{font-size:.95rem;color:var(--text-sec);max-width:580px;margin:0 auto;line-height:1.75}

/* ── STATS BAR ───────────────────────────────────────────────────── */
.stats-bar{background:var(--primary-dark);padding:0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat-item{text-align:center;padding:28px 24px;border-right:1px solid rgba(255,255,255,.09)}
.stat-item:last-child{border-right:none}
.stat-num{font-family:var(--font-h);font-size:2.1rem;font-weight:800;color:var(--accent);display:block;line-height:1.1}
.stat-lbl{font-size:.78rem;color:rgba(255,255,255,.65);margin-top:4px;display:block}

/* ── CARDS GRID ──────────────────────────────────────────────────── */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}

/* PODCAST CARD */
.pod-card{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-md);overflow:hidden;transition:var(--tr);display:flex;flex-direction:column}
.pod-card:hover{transform:translateY(-5px);box-shadow:var(--sh-hv)}
.pod-card-img{width:100%;height:195px;object-fit:cover}
.pod-card-body{padding:20px;flex:1;display:flex;flex-direction:column}
.pod-cat{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--primary);margin-bottom:8px}
.pod-card-title{font-family:var(--font-h);font-size:.97rem;font-weight:700;color:var(--text-main);margin-bottom:10px;line-height:1.4}
.pod-card-desc{font-size:.85rem;color:var(--text-sec);line-height:1.62;margin-bottom:14px;flex:1}
.pod-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:13px;border-top:1px solid var(--border-light)}
.stars{color:var(--accent);font-size:.82rem;letter-spacing:1px}
.rating-n{font-size:.78rem;font-weight:700;color:var(--text-main);margin-left:5px}
.ep-count{font-size:.72rem;color:var(--text-sec)}

/* ARTICLE CARD */
.art-card{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-md);overflow:hidden;transition:var(--tr)}
.art-card:hover{transform:translateY(-4px);box-shadow:var(--sh-hv)}
.art-card-img{width:100%;height:195px;object-fit:cover}
.art-card-body{padding:20px}
.art-meta{display:flex;align-items:center;gap:12px;margin-bottom:9px;flex-wrap:wrap}
.art-cat{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary)}
.art-date{font-size:.72rem;color:var(--text-sec)}
.art-card-title{font-family:var(--font-h);font-size:.97rem;font-weight:700;color:var(--text-main);margin-bottom:9px;line-height:1.4}
.art-card-desc{font-size:.85rem;color:var(--text-sec);line-height:1.6;margin-bottom:14px}
.read-more{font-size:.82rem;font-weight:600;color:var(--primary);display:flex;align-items:center;gap:6px;transition:var(--tr)}
.read-more:hover{gap:10px;color:var(--primary-light)}

/* ── CATEGORIES ──────────────────────────────────────────────────── */
.cats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.cat-card{background:var(--bg-card);border:2px solid var(--border);border-radius:var(--r-md);padding:24px 14px;text-align:center;transition:var(--tr);display:block}
.cat-card:hover{border-color:var(--primary);background:var(--primary);transform:translateY(-3px);box-shadow:var(--sh-md)}
.cat-card:hover .cat-icon,.cat-card:hover .cat-name,.cat-card:hover .cat-cnt{color:#fff}
.cat-icon{font-size:2rem;margin-bottom:10px;display:block;color:var(--primary);transition:var(--tr)}
.cat-name{font-family:var(--font-h);font-size:.85rem;font-weight:700;color:var(--text-main);margin-bottom:4px;transition:var(--tr)}
.cat-cnt{font-size:.73rem;color:var(--text-sec);transition:var(--tr)}

/* ── FEATURED LAYOUT ─────────────────────────────────────────────── */
.featured-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.feat-img img{width:100%;height:380px;object-fit:cover;border-radius:var(--r-lg);box-shadow:var(--sh-lg)}
.feat-content h2{font-family:var(--font-h);font-size:1.75rem;font-weight:700;color:var(--text-main);line-height:1.35;margin-bottom:16px}
.feat-content p{font-size:.93rem;color:var(--text-sec);line-height:1.78;margin-bottom:20px}
.feat-list{margin:16px 0}
.feat-list li{display:flex;align-items:flex-start;gap:11px;margin-bottom:12px;font-size:.88rem;color:var(--text-main);line-height:1.5}
.feat-list li::before{content:'✓';display:flex;align-items:center;justify-content:center;min-width:20px;width:20px;height:20px;background:var(--primary);color:#fff;border-radius:50%;font-size:.65rem;font-weight:700;margin-top:1px}

/* ── NEWSLETTER ──────────────────────────────────────────────────── */
.newsletter{background:var(--primary);padding:64px 0;text-align:center;color:#fff}
.newsletter h2{font-family:var(--font-h);font-size:1.75rem;font-weight:700;margin-bottom:12px}
.newsletter p{opacity:.78;max-width:500px;margin:0 auto 30px;line-height:1.72}
.nl-form{display:flex;gap:10px;max-width:480px;margin:0 auto}
.nl-form input{flex:1;padding:13px 18px;border:none;border-radius:var(--r-sm);font-family:var(--font-b);font-size:.88rem;outline:none;background:#fff;color:var(--text-main)}
.nl-form input::placeholder{color:var(--text-sec)}

/* ── FILTERS ─────────────────────────────────────────────────────── */
.filters-bar{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-sm);padding:18px 22px;margin-bottom:28px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.filter-lbl{font-size:.82rem;font-weight:700;color:var(--text-sec);white-space:nowrap}
.f-btn{padding:7px 16px;border:1px solid var(--border);border-radius:20px;font-size:.78rem;font-weight:600;color:var(--text-sec);background:transparent;transition:var(--tr);white-space:nowrap}
.f-btn:hover,.f-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.search-box{display:flex;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;background:var(--bg-card)}
.search-box input{flex:1;padding:11px 15px;border:none;font-family:var(--font-b);font-size:.88rem;outline:none;background:transparent;color:var(--text-main)}
.search-box button{padding:11px 18px;background:var(--primary);color:#fff;border:none;font-size:.88rem;transition:var(--tr)}
.search-box button:hover{background:var(--primary-light)}

/* ── SIDEBAR LAYOUT ──────────────────────────────────────────────── */
.with-sidebar{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:start}
.sidebar-widget{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-md);padding:22px;margin-bottom:22px}
.sidebar-widget h3{font-family:var(--font-h);font-size:.95rem;font-weight:700;color:var(--text-main);margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid var(--primary)}
.sw-list li{padding:9px 0;border-bottom:1px solid var(--border-light);font-size:.85rem}
.sw-list li:last-child{border-bottom:none}
.sw-list a{color:var(--text-main);display:flex;justify-content:space-between;align-items:center}
.sw-list a:hover{color:var(--primary)}
.sw-count{background:var(--bg-sec);padding:2px 8px;border-radius:10px;font-size:.73rem;color:var(--text-sec)}

/* ── PAGINATION ──────────────────────────────────────────────────── */
.pagination{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:48px}
.pg-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-sm);border:1px solid var(--border);font-size:.85rem;font-weight:600;color:var(--text-sec);transition:var(--tr);text-decoration:none;background:var(--bg-card)}
.pg-btn:hover,.pg-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}

/* ── TAGS ────────────────────────────────────────────────────────── */
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.tag{padding:4px 12px;background:var(--bg-sec);border:1px solid var(--border);border-radius:20px;font-size:.73rem;color:var(--text-sec);text-decoration:none;transition:var(--tr)}
.tag:hover{background:var(--primary);color:#fff;border-color:var(--primary)}

/* ── CONTACT ─────────────────────────────────────────────────────── */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.ci-info h2{font-family:var(--font-h);font-size:1.75rem;font-weight:700;color:var(--text-main);margin-bottom:14px}
.ci-info p{color:var(--text-sec);line-height:1.78;margin-bottom:28px;font-size:.93rem}
.ci-details{display:flex;flex-direction:column;gap:18px}
.ci-item{display:flex;align-items:flex-start;gap:14px}
.ci-icon{width:42px;height:42px;background:var(--primary);border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem;flex-shrink:0}
.ci-text strong{display:block;font-size:.85rem;font-weight:700;color:var(--text-main);margin-bottom:2px}
.ci-text span,.ci-text a{font-size:.85rem;color:var(--text-sec)}
.form-box{background:var(--bg-card);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:38px}
.form-box h3{font-family:var(--font-h);font-size:1.25rem;font-weight:700;margin-bottom:22px;color:var(--text-main)}
.fg{margin-bottom:18px}
.fg label{display:block;font-size:.83rem;font-weight:700;color:var(--text-main);margin-bottom:7px}
.fg input,.fg textarea,.fg select{width:100%;padding:11px 15px;border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-b);font-size:.88rem;color:var(--text-main);background:var(--bg-main);transition:var(--tr);outline:none}
.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,77,64,.1)}
.fg textarea{resize:vertical;min-height:120px}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* ── FOOTER ──────────────────────────────────────────────────────── */
.site-footer{background:var(--primary-dark);color:rgba(255,255,255,.78);padding:60px 0 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}
.f-brand .logo-name{font-size:1.25rem;color:#fff;font-family:var(--font-h);font-weight:700;display:block;margin-bottom:14px}
.f-brand p{font-size:.85rem;line-height:1.7;opacity:.68;margin-bottom:22px}
.f-col h4{font-family:var(--font-h);font-size:.8rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.09em;margin-bottom:14px}
.f-col ul li{margin-bottom:9px}
.f-col ul li a{color:rgba(255,255,255,.6);font-size:.85rem;transition:var(--tr)}
.f-col ul li a:hover{color:var(--accent)}
.f-contact li{display:flex;align-items:flex-start;gap:9px;margin-bottom:11px;font-size:.85rem;color:rgba(255,255,255,.62);line-height:1.5}
.footer-bottom{border-top:1px solid rgba(255,255,255,.09);padding:22px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.fb-text{font-size:.78rem;opacity:.55}
.fb-links{display:flex;gap:18px}
.fb-links a{font-size:.78rem;color:rgba(255,255,255,.48);transition:var(--tr)}
.fb-links a:hover{color:var(--accent)}
.footer-disc{background:rgba(0,0,0,.2);padding:18px 0;border-top:1px solid rgba(255,255,255,.05)}
.footer-disc p{font-size:.73rem;color:rgba(255,255,255,.4);line-height:1.6;text-align:center}

/* ── ABOUT PAGE ──────────────────────────────────────────────────── */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.about-img img{width:100%;height:400px;object-fit:cover;border-radius:var(--r-lg);box-shadow:var(--sh-lg)}
.about-text h2{font-family:var(--font-h);font-size:1.75rem;font-weight:700;color:var(--text-main);line-height:1.35;margin-bottom:16px}
.about-text p{color:var(--text-sec);line-height:1.78;margin-bottom:14px;font-size:.93rem}
.mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.m-card{background:var(--bg-card);border-radius:var(--r-md);padding:30px 22px;text-align:center;box-shadow:var(--sh-md);border-top:4px solid var(--primary);transition:var(--tr)}
.m-card:hover{transform:translateY(-4px);box-shadow:var(--sh-hv)}
.m-icon{font-size:2.2rem;margin-bottom:14px;display:block}
.m-card h3{font-family:var(--font-h);font-size:1rem;font-weight:700;color:var(--text-main);margin-bottom:10px}
.m-card p{font-size:.85rem;color:var(--text-sec);line-height:1.65}

/* ── EXPERT CARD ─────────────────────────────────────────────────── */
.exp-card{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-md);overflow:hidden;transition:var(--tr)}
.exp-card:hover{transform:translateY(-4px);box-shadow:var(--sh-hv)}
.exp-card img{width:100%;height:240px;object-fit:cover}
.exp-body{padding:22px}
.exp-body h3{font-family:var(--font-h);font-size:1.05rem;font-weight:700;color:var(--text-main);margin-bottom:4px}
.exp-role{font-size:.75rem;color:var(--primary);font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
.exp-body p{font-size:.85rem;color:var(--text-sec);line-height:1.62}

/* ── RANKING LIST ────────────────────────────────────────────────── */
.ranking-list{display:flex;flex-direction:column;gap:14px}
.rank-item{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-sm);padding:18px 22px;display:flex;align-items:center;gap:18px;transition:var(--tr)}
.rank-item:hover{box-shadow:var(--sh-md);transform:translateX(4px)}
.rank-badge{width:40px;height:40px;background:var(--bg-sec);border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;font-family:var(--font-h);font-weight:800;font-size:1.05rem;color:var(--text-sec);flex-shrink:0}
.rank-item:nth-child(1) .rank-badge{background:var(--accent);color:#fff}
.rank-item:nth-child(2) .rank-badge{background:#9E9E9E;color:#fff}
.rank-item:nth-child(3) .rank-badge{background:#8D6E63;color:#fff}
.rank-info{flex:1}
.rank-info h3{font-family:var(--font-h);font-size:.95rem;font-weight:700;color:var(--text-main);margin-bottom:3px}
.rank-info p{font-size:.78rem;color:var(--text-sec)}
.rank-meta{display:flex;flex-direction:column;align-items:flex-end;gap:3px}

/* ── REVIEW RATING BOX ───────────────────────────────────────────── */
.rating-box{background:var(--bg-card);border-radius:var(--r-md);padding:30px;box-shadow:var(--sh-md);margin-bottom:28px}
.rating-big{font-family:var(--font-h);font-size:3.5rem;font-weight:800;color:var(--primary);line-height:1}
.rating-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.rb-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.rb-label{font-size:.82rem;color:var(--text-sec);min-width:130px}
.rb-bar{flex:1;height:6px;background:var(--bg-sec);border-radius:3px;overflow:hidden}
.rb-fill{height:100%;background:var(--primary);border-radius:3px}
.rb-val{font-size:.78rem;font-weight:700;color:var(--text-main);min-width:28px;text-align:right}

/* ── ARTICLE CONTENT ─────────────────────────────────────────────── */
.article-content{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-md);padding:40px}
.article-content h2{font-family:var(--font-h);font-size:1.45rem;font-weight:700;color:var(--text-main);margin:30px 0 14px}
.article-content h3{font-family:var(--font-h);font-size:1.1rem;font-weight:700;color:var(--text-main);margin:22px 0 10px}
.article-content p{font-size:.93rem;color:var(--text-sec);line-height:1.82;margin-bottom:14px}
.article-content ul,.article-content ol{list-style:disc;margin:14px 0 14px 22px}
.article-content li{font-size:.93rem;color:var(--text-sec);line-height:1.72;margin-bottom:7px}
.article-content blockquote{background:var(--bg-sec);border-left:4px solid var(--primary);padding:16px 20px;margin:22px 0;border-radius:0 var(--r-sm) var(--r-sm) 0}
.article-content blockquote p{color:var(--text-main);font-style:italic;margin:0}

/* ── GLOSSARY ────────────────────────────────────────────────────── */
.gloss-item{background:var(--bg-card);border-radius:var(--r-md);padding:22px;box-shadow:var(--sh-sm);margin-bottom:14px;transition:var(--tr);border-left:4px solid transparent}
.gloss-item:hover{border-left-color:var(--primary);box-shadow:var(--sh-md)}
.gloss-term{font-family:var(--font-h);font-size:.97rem;font-weight:700;color:var(--primary);margin-bottom:7px}
.gloss-def{font-size:.85rem;color:var(--text-sec);line-height:1.65}
.alpha-nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:28px;background:var(--bg-card);padding:16px;border-radius:var(--r-md);box-shadow:var(--sh-sm)}
.alpha-nav a{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--r-sm);font-size:.8rem;font-weight:700;color:var(--text-sec);transition:var(--tr)}
.alpha-nav a:hover{background:var(--primary);color:#fff;border-color:var(--primary)}

/* ── FAQ ─────────────────────────────────────────────────────────── */
.faq-item{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-sm);margin-bottom:10px;overflow:hidden}
.faq-q{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-family:var(--font-h);font-size:.92rem;font-weight:600;color:var(--text-main);gap:14px;user-select:none}
.faq-q:hover{color:var(--primary)}
.faq-toggle{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-sec);border-radius:50%;flex-shrink:0;font-size:1rem;color:var(--primary);transition:var(--tr)}
.faq-item.open .faq-toggle{transform:rotate(45deg);background:var(--primary);color:#fff}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a.open{max-height:500px}
.faq-a-inner{padding:0 22px 22px;font-size:.88rem;color:var(--text-sec);line-height:1.78;border-top:1px solid var(--border-light);padding-top:14px}

/* ── POLICY PAGES ────────────────────────────────────────────────── */
.policy-content{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-md);padding:48px}
.policy-content h2{font-family:var(--font-h);font-size:1.35rem;font-weight:700;color:var(--text-main);margin:34px 0 12px;padding-bottom:8px;border-bottom:2px solid var(--border-light)}
.policy-content h3{font-family:var(--font-h);font-size:1rem;font-weight:700;color:var(--primary);margin:20px 0 8px}
.policy-content p{font-size:.88rem;color:var(--text-sec);line-height:1.82;margin-bottom:12px}
.policy-content ul,.policy-content ol{margin:10px 0 14px 22px}
.policy-content li{font-size:.88rem;color:var(--text-sec);line-height:1.72;margin-bottom:7px;list-style:disc}
.policy-meta{background:var(--bg-sec);border-radius:var(--r-sm);padding:14px 18px;margin-bottom:28px;display:flex;flex-wrap:wrap;gap:22px}
.policy-meta span{font-size:.78rem;color:var(--text-sec)}
.policy-meta strong{color:var(--text-main)}

/* ── THANK YOU PAGE ──────────────────────────────────────────────── */
.ty-section{min-height:65vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 0}
.ty-box{max-width:540px;margin:0 auto}
.ty-icon{width:78px;height:78px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 28px;font-size:1.9rem;color:#fff}
.ty-box h1{font-family:var(--font-h);font-size:1.95rem;font-weight:700;color:var(--text-main);margin-bottom:14px}
.ty-box p{color:var(--text-sec);line-height:1.78;margin-bottom:28px}

/* ── INFO BOX ────────────────────────────────────────────────────── */
.info-box{background:var(--bg-sec);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:var(--r-sm);padding:18px 22px;margin:22px 0}
.info-box p{font-size:.88rem;color:var(--text-sec);line-height:1.72;margin:0}

/* ── TABLE ───────────────────────────────────────────────────────── */
.tbl-wrap{overflow-x:auto;border-radius:var(--r-md);box-shadow:var(--sh-md);margin:22px 0}
table{width:100%;border-collapse:collapse;background:var(--bg-card)}
thead th{background:var(--primary);color:#fff;padding:13px 15px;text-align:left;font-family:var(--font-h);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
tbody tr{border-bottom:1px solid var(--border-light);transition:var(--tr)}
tbody tr:last-child{border-bottom:none}
tbody tr:hover{background:var(--bg-sec)}
tbody td{padding:13px 15px;font-size:.85rem;color:var(--text-main)}

/* ── COOKIE BANNER ───────────────────────────────────────────────── */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--primary-dark);color:#fff;padding:18px 0;z-index:9999;box-shadow:0 -4px 20px rgba(0,0,0,.22);display:none}
.cookie-banner.show{display:block}
.cookie-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.cookie-text{font-size:.83rem;opacity:.82;line-height:1.5;flex:1}
.cookie-text a{color:var(--accent)}
.cookie-btns{display:flex;gap:10px;flex-shrink:0}

/* ── SCROLL TOP ──────────────────────────────────────────────────── */
.scroll-top{position:fixed;bottom:30px;right:30px;width:42px;height:42px;background:var(--primary);color:#fff;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--tr);opacity:0;visibility:hidden;z-index:500;border:none;font-size:1rem}
.scroll-top.visible{opacity:1;visibility:visible}
.scroll-top:hover{background:var(--primary-light);transform:translateY(-2px)}

/* ── MISC ────────────────────────────────────────────────────────── */
.divider{border:none;border-top:1px solid var(--border);margin:28px 0}
.badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:.72rem;font-weight:700}
.badge-green{background:#E8F5E9;color:#2E7D32}
.badge-amber{background:#FFF8E1;color:#E65100}
.badge-blue{background:#E3F2FD;color:#1565C0}
.toc{background:var(--bg-sec);border:1px solid var(--border);border-radius:var(--r-md);padding:22px;margin-bottom:28px}
.toc h4{font-family:var(--font-h);font-size:.9rem;font-weight:700;margin-bottom:12px;color:var(--text-main)}
.toc ul{margin-left:16px;list-style:decimal}
.toc li{font-size:.85rem;color:var(--text-sec);margin-bottom:7px;line-height:1.5;list-style:decimal}
.toc a{color:var(--primary)}
.toc a:hover{color:var(--primary-light)}
.review-summary-card{background:var(--bg-card);border-radius:var(--r-md);box-shadow:var(--sh-md);padding:22px;display:flex;gap:18px;margin-bottom:16px;transition:var(--tr)}
.review-summary-card:hover{box-shadow:var(--sh-hv)}
.rsn{font-family:var(--font-h);font-size:2.2rem;font-weight:800;color:var(--bg-sec);line-height:1;min-width:48px}
.rsc h3{font-family:var(--font-h);font-size:.95rem;font-weight:700;color:var(--text-main);margin-bottom:7px}
.rsc p{font-size:.83rem;color:var(--text-sec);line-height:1.6}

/* ── RESPONSIVE ──────────────────────────────────────────────────── */
@media(max-width:1024px){
  .cats-grid{grid-template-columns:repeat(3,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .grid-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .main-nav{display:none}
  .hamburger{display:flex}
  .hero-inner{grid-template-columns:1fr;gap:40px}
  .hero-img{display:none}
  .hero-content h1{font-size:1.85rem}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}
  .cats-grid{grid-template-columns:repeat(2,1fr)}
  .featured-layout{grid-template-columns:1fr}
  .feat-img{display:none}
  .with-sidebar{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .nl-form{flex-direction:column}
  .page-hero h1{font-size:1.65rem}
  .about-grid{grid-template-columns:1fr}
  .mission-grid{grid-template-columns:1fr}
  .policy-content{padding:24px}
  .form-box{padding:24px}
  .fg-row{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;text-align:center}
  .rating-breakdown{grid-template-columns:1fr}
}
@media(max-width:480px){
  .grid-3,.grid-2,.grid-4{grid-template-columns:1fr}
  .cats-grid{grid-template-columns:repeat(2,1fr)}
  .stats-grid{grid-template-columns:1fr 1fr}
  .section{padding:48px 0}
  .container{padding:0 14px}
  .article-content{padding:22px}
}
