/* ══════ BLOG STYLES — identical to main site design ══════ */

:root {
    --gold: #D4A54A;
    --gold-light: #F0D78C;
    --gold-dark: #A07B2A;
    --deep: #080510;
    --deep-purple: #0D0820;
    --midnight: #110B24;
    --violet: #1E1040;
    --orchid: #6B3FA0;
    --orchid-soft: rgba(107,63,160,0.15);
    --rose: #C06080;
    --amber: #E8A040;
    --teal: #40B0A0;
    --cream: #F0E8D8;
    --cream-muted: #C8B898;
    --text-light: #E8E0D8;
    --text-muted: #988A78;
    --text-soft: #B8A898;
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
    font-family:'Nunito Sans',sans-serif;
    background:var(--deep);
    color:var(--text-light);
    overflow-x:hidden;
    line-height:1.7;
    font-weight:300;
}

/* grain texture */
body::after {
    content:''; position:fixed; inset:0; pointer-events:none; z-index:9999; opacity:.035;
    background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E") repeat;
}

h1,h2,h3,h4 { font-family:'Cormorant Garamond',serif; font-weight:400; letter-spacing:.01em; }

/* ══════ NAV — как на всём сайте: ПЛОТНАЯ шапка ══════
   Полупрозрачность со «стеклом» убрана 13.08.2026: размытие не рисуется
   на телефоне в энергосбережении и при «Уменьшении прозрачности», и текст
   статьи читался прямо сквозь меню. */
nav {
    position:fixed; top:0; left:0; right:0; z-index:1000;
    padding:1.2rem 2.5rem; display:flex; justify-content:space-between; align-items:center;
    background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none;
    border-bottom:1px solid transparent; transition:all .5s;
}
nav.scrolled {
    background:#080510; backdrop-filter:none; -webkit-backdrop-filter:none;
    border-bottom-color:rgba(212,165,74,.06); padding:.7rem 2.5rem;
}
.nav-logo {
    font-family:'Cormorant Garamond',serif; font-size:1.15rem;
    color:var(--gold); text-decoration:none; letter-spacing:.08em; font-weight:500;
    display:inline-flex; align-items:center; gap:.42em; white-space:nowrap;
}
.nav-logo::before {
    content:""; flex:0 0 auto; width:1.15em; height:1.15em;
    background:url("/img/logo-mark.svg") center/contain no-repeat;
}
.nav-links { display:flex; gap:2.2rem; list-style:none; align-items:center; }
.nav-links a {
    color:var(--cream-muted); text-decoration:none; font-size:.82rem;
    font-weight:400; letter-spacing:.06em; transition:color .3s;
}
.nav-links a:hover { color:var(--gold); }
.nav-cta {
    background:linear-gradient(135deg,var(--gold),var(--gold-dark))!important;
    color:var(--deep)!important; padding:.55rem 1.4rem!important; font-weight:500!important;
    border-radius:2px;
}
.nav-cta:hover { box-shadow:0 4px 20px rgba(212,165,74,.35); }
.mobile-toggle { display:none; background:none; border:none; cursor:pointer; padding:.5rem; }
.mobile-toggle span { display:block; width:22px; height:1.5px; background:var(--cream-muted); margin:5px 0; transition:.3s; }
.nav-social-desktop { display:flex; gap:.6rem; align-items:center; }
.nav-social-mobile { display:none; }
.nav-social-icon {
    display:flex; align-items:center; justify-content:center;
    width:32px; height:32px; border-radius:50%;
    border:1px solid rgba(107,63,160,.25); color:var(--text-muted);
    transition:all .3s; text-decoration:none;
}
.nav-social-icon:hover { border-color:rgba(212,165,74,.4); color:var(--gold); }

/* ══════ ARTICLE HERO (like main hero) ══════ */
.article-hero {
    position:relative; overflow:hidden;
    min-height:55vh; display:flex; align-items:center; justify-content:center;
    padding:clamp(7rem,12vw,10rem) 2rem clamp(3rem,6vw,5rem);
    text-align:center;
}
.article-hero-bg {
    position:absolute; inset:0;
    background:
        radial-gradient(ellipse 90% 70% at 50% 35%, rgba(30,16,64,.7) 0%, transparent 60%),
        radial-gradient(ellipse 50% 50% at 80% 20%, rgba(192,96,128,.15) 0%, transparent 50%),
        radial-gradient(ellipse 50% 40% at 15% 75%, rgba(64,176,160,.08) 0%, transparent 50%),
        radial-gradient(ellipse 60% 60% at 50% 80%, rgba(107,63,160,.2) 0%, transparent 50%),
        var(--deep);
}

/* stars */
.article-hero-stars { position:absolute; inset:0; z-index:1; }
.star {
    position:absolute; width:2px; height:2px; background:var(--gold-light);
    border-radius:50%; animation:twinkle var(--dur) ease-in-out infinite; opacity:0;
}
@keyframes twinkle { 0%,100%{opacity:0} 50%{opacity:var(--peak)} }

/* floating planets */
.hero-planet {
    position:absolute; border-radius:50%; z-index:1;
    filter:blur(0.5px); pointer-events:none;
}
.planet-1 {
    width:6px; height:6px; background:var(--amber);
    top:18%; left:12%; box-shadow:0 0 15px var(--amber);
    animation:float1 8s ease-in-out infinite;
}
.planet-2 {
    width:4px; height:4px; background:var(--teal);
    top:72%; right:15%; box-shadow:0 0 12px var(--teal);
    animation:float2 10s ease-in-out infinite;
}
.planet-3 {
    width:8px; height:8px; background:var(--rose);
    top:30%; right:22%; box-shadow:0 0 20px var(--rose);
    animation:float3 12s ease-in-out infinite;
}
@keyframes float1 { 0%,100%{transform:translate(0,0)} 50%{transform:translate(15px,-20px)} }
@keyframes float2 { 0%,100%{transform:translate(0,0)} 50%{transform:translate(-20px,15px)} }
@keyframes float3 { 0%,100%{transform:translate(0,0)} 50%{transform:translate(-10px,-25px)} }

/* orbit rings */
.orbit-ring {
    position:absolute; border-radius:50%; border:1px solid rgba(107,63,160,.08);
    pointer-events:none; z-index:1;
}
.orbit-1 { width:300px; height:300px; top:50%; left:50%; transform:translate(-50%,-50%); animation:spin 80s linear infinite; }
.orbit-2 { width:500px; height:500px; top:50%; left:50%; transform:translate(-50%,-50%); animation:spin 120s linear infinite reverse; border-color:rgba(212,165,74,.05); }
.orbit-3 { width:700px; height:700px; top:50%; left:50%; transform:translate(-50%,-50%); animation:spin 160s linear infinite; border-color:rgba(192,96,128,.04); }
@keyframes spin { to{transform:translate(-50%,-50%) rotate(360deg)} }

.article-hero-content { position:relative; z-index:3; max-width:780px; margin:0 auto; }
.article-hero-eyebrow {
    font-size:.72rem; letter-spacing:.4em; text-transform:uppercase;
    margin-bottom:1.5rem; font-weight:500;
    background:linear-gradient(90deg,var(--orchid),var(--rose));
    -webkit-background-clip:text; -webkit-text-fill-color:transparent;
    opacity:0; animation:fadeUp 1s .3s forwards;
}
.article-hero h1 {
    font-size:clamp(2.2rem,6vw,4rem); color:var(--cream); line-height:1.12;
    margin-bottom:1rem; font-weight:300;
    opacity:0; animation:fadeUp 1s .5s forwards;
}
.article-hero h1 em {
    font-style:italic;
    background:linear-gradient(135deg,var(--gold),var(--amber));
    -webkit-background-clip:text; -webkit-text-fill-color:transparent;
}
.article-hero-meta {
    font-size:.82rem; color:var(--text-muted); letter-spacing:.06em;
    opacity:0; animation:fadeUp 1s .7s forwards;
}

@keyframes fadeUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }

/* ══════ GLOW DIVIDER ══════ */
.glow-divider {
    height:1px; margin:0;
    background:linear-gradient(90deg,transparent,rgba(107,63,160,.4),rgba(212,165,74,.3),rgba(107,63,160,.4),transparent);
}

/* ══════ BREADCRUMBS ══════ */
.breadcrumbs {
    max-width:820px; margin:0 auto; padding:1.5rem 1.5rem 0;
    font-size:.75rem; color:var(--text-muted); letter-spacing:.04em;
}
.breadcrumbs a { color:var(--text-muted); text-decoration:none; transition:color .3s; }
.breadcrumbs a:hover { color:var(--gold); }
.breadcrumbs span { margin:0 .4rem; opacity:.5; }

/* ══════ ARTICLE SECTIONS with gradient backgrounds ══════ */
.article-container {
    max-width:820px; margin:0 auto; padding:3rem 1.5rem 4rem;
}

/* ══════ TABLE OF CONTENTS (styled like step-card) ══════ */
.toc {
    max-width:820px; margin:2rem auto;
    background:linear-gradient(135deg,rgba(107,63,160,.06),rgba(192,96,128,.04));
    border:1px solid rgba(107,63,160,.15); padding:2rem 2.5rem;
    transition:all .5s;
}
.toc:hover {
    border-color:rgba(212,165,74,.2);
    background:linear-gradient(135deg,rgba(107,63,160,.1),rgba(192,96,128,.06));
    box-shadow:0 20px 60px rgba(0,0,0,.3);
    transform:translateY(-2px);
}
.toc-title {
    font-family:'Cormorant Garamond',serif; font-size:1.15rem;
    color:var(--gold); margin-bottom:1.2rem; font-weight:500;
    letter-spacing:.08em;
}
.toc ol { padding-left:1.2rem; counter-reset:toc; }
.toc li { margin-bottom:.6rem; list-style:none; counter-increment:toc; }
.toc li::before {
    content:counter(toc) '.'; color:var(--orchid); font-size:.8rem;
    margin-right:.6rem; font-weight:500;
}
.toc a {
    color:var(--cream-muted); text-decoration:none; font-size:.9rem;
    transition:color .3s; line-height:1.5;
}
.toc a:hover { color:var(--gold); }

/* ══════ ARTICLE CONTENT ══════ */
.article-content { font-size:1.05rem; line-height:1.9; }

.article-content h2 {
    font-size:clamp(1.6rem, 3.5vw, 2.2rem); color:var(--gold);
    margin:3rem 0 1.2rem; padding-top:1.5rem;
    position:relative;
}
.article-content h2::before {
    content:''; position:absolute; top:0; left:0;
    width:60px; height:1px;
    background:linear-gradient(90deg,var(--orchid),transparent);
}
.article-content h3 {
    font-size:clamp(1.2rem, 2.5vw, 1.5rem); color:var(--cream);
    margin:2rem 0 .8rem;
}
.article-content p { margin-bottom:1.3rem; color:var(--text-soft); }
.article-content strong { color:var(--gold-light); font-weight:500; }
.article-content em { color:var(--cream-muted); }

.article-content ul, .article-content ol {
    margin:1rem 0 1.5rem 1.5rem; color:var(--text-soft);
}
.article-content li { margin-bottom:.6rem; line-height:1.8; }
.article-content li strong { color:var(--cream); }
.article-content li::marker { color:var(--orchid); }

/* ── Таблица характеристик накшатры (ключ: значение) ── */
.article-content .nak-specs { list-style:none; margin:1.3rem 0 1.9rem; padding:0; }
.article-content .nak-specs li {
    display:grid; grid-template-columns:minmax(140px,32%) 1fr; gap:1rem;
    margin:0; padding:.62rem .2rem; line-height:1.6;
    border-bottom:1px solid rgba(212,165,74,.14);
}
.article-content .nak-specs li:last-child { border-bottom:none; }
.article-content .nak-specs li::marker { content:''; }
.article-content .nak-specs .nak-k { color:var(--gold-light); font-weight:500; }
.article-content .nak-specs .nak-v { color:var(--text-soft); }
@media (max-width:560px){
    .article-content .nak-specs li { grid-template-columns:1fr; gap:.1rem; padding:.55rem .2rem; }
    .article-content .nak-specs .nak-k { font-size:.92rem; }
}

.article-content blockquote {
    border-left:2px solid var(--orchid);
    padding:1rem 1.5rem; margin:1.5rem 0;
    background:linear-gradient(135deg,rgba(107,63,160,.06),rgba(192,96,128,.04));
    border-radius:0 4px 4px 0;
    font-style:italic; color:var(--cream-muted);
}

.article-content a {
    color:var(--gold); text-decoration:none;
    border-bottom:1px solid rgba(212,165,74,.25);
    transition:all .3s;
}
.article-content a:hover {
    border-color:var(--gold);
    text-shadow:0 0 12px rgba(212,165,74,.3);
}

/* ══════ CTA BLOCKS ══════ */
.cta-block {
    position:relative; overflow:hidden;
    background:linear-gradient(135deg,rgba(30,16,64,.5),rgba(74,32,64,.3));
    border:1px solid rgba(212,165,74,.12);
    padding:clamp(2rem,5vw,3.5rem); text-align:center; margin:3rem 0;
    box-shadow:0 20px 60px rgba(0,0,0,.3);
}
.cta-block::before {
    content:''; position:absolute; inset:0;
    background:radial-gradient(ellipse 60% 60% at 50% 50%,rgba(107,63,160,.1),transparent);
}
.cta-block h3 {
    position:relative; z-index:1;
    font-family:'Cormorant Garamond',serif; font-size:clamp(1.5rem,3vw,2rem);
    color:var(--gold); margin-bottom:.8rem;
}
.cta-block p { position:relative; z-index:1; color:var(--text-soft); margin-bottom:1.8rem; font-size:.98rem; line-height:1.8; }

/* BUTTONS — ЧЁРНЫЙ текст на золотом фоне, всегда */
.cta-btn {
    position:relative; z-index:1;
    display:inline-flex; align-items:center; gap:.5rem;
    background:linear-gradient(135deg,var(--gold),var(--gold-dark));
    color:#080510!important; padding:1rem 2.4rem;
    font-family:'Nunito Sans',sans-serif;
    font-size:.88rem; font-weight:600; letter-spacing:.08em;
    text-decoration:none; border:none; cursor:pointer;
    box-shadow:0 4px 30px rgba(212,165,74,.2);
    transition:all .4s cubic-bezier(.25,.46,.45,.94);
    -webkit-text-fill-color:#080510!important;
}
.cta-btn:hover {
    box-shadow:0 8px 40px rgba(212,165,74,.4);
    transform:translateY(-2px);
    color:#080510!important;
    -webkit-text-fill-color:#080510!important;
}
/* Flash — периодический блик, чтобы кнопка была заметной */
.cta-btn { overflow:hidden; }
.cta-btn::after {
    content:''; position:absolute; top:0; left:-80%; width:55%; height:100%;
    background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.6) 50%, transparent 100%);
    transform:skewX(-20deg); pointer-events:none; z-index:2;
    animation:ctaFlash 4s ease-in-out infinite;
}
@keyframes ctaFlash { 0%{ left:-80%; } 18%{ left:130%; } 100%{ left:130%; } }
@media (prefers-reduced-motion: reduce) { .cta-btn::after { animation:none; } }

.cta-mini {
    background:linear-gradient(135deg,rgba(107,63,160,.08),rgba(192,96,128,.05));
    border:1px solid rgba(107,63,160,.15); border-left:2px solid var(--orchid);
    padding:1.5rem 2rem; margin:2.5rem 0;
    display:flex; align-items:center; gap:1.5rem;
    transition:all .4s;
}
.cta-mini:hover {
    border-color:rgba(212,165,74,.2);
    background:linear-gradient(135deg,rgba(107,63,160,.12),rgba(192,96,128,.08));
    transform:translateX(4px);
}
.cta-mini p { margin:0; color:var(--text-soft); font-size:.92rem; flex:1; line-height:1.7; }
.cta-mini .cta-btn { padding:.7rem 1.6rem; font-size:.84rem; white-space:nowrap; }

/* ══════ SECTION BACKGROUNDS (alternating like main site) ══════ */
.section-alt {
    background:linear-gradient(180deg,var(--deep-purple),var(--midnight));
    padding:clamp(3rem,6vw,5rem) 0;
    position:relative;
}
.section-alt::before {
    content:''; position:absolute; inset:0; opacity:.06;
    background:
        radial-gradient(circle at 20% 50%, rgba(212,165,74,.4) 0%, transparent 40%),
        radial-gradient(circle at 80% 30%, rgba(107,63,160,.3) 0%, transparent 40%);
}

/* ══════ RELATED ARTICLES ══════ */
.related {
    margin-top:4rem; padding-top:3rem;
}
.related::before {
    content:''; display:block; width:100%; height:1px; margin-bottom:3rem;
    background:linear-gradient(90deg,transparent,rgba(107,63,160,.4),rgba(212,165,74,.3),rgba(107,63,160,.4),transparent);
}
.related h2 { font-size:1.6rem; color:var(--gold); margin-bottom:1.8rem; text-align:center; }
.related-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:1.5rem; }
.related-card {
    padding:2rem 1.5rem; position:relative;
    background:linear-gradient(135deg,rgba(107,63,160,.06),rgba(192,96,128,.04));
    border:1px solid rgba(107,63,160,.12); transition:all .5s;
    text-decoration:none; display:block;
}
.related-card:hover {
    border-color:rgba(212,165,74,.2);
    background:linear-gradient(135deg,rgba(107,63,160,.1),rgba(192,96,128,.06));
    transform:translateY(-4px);
    box-shadow:0 20px 60px rgba(0,0,0,.3);
}
.related-card h3 {
    font-size:1.05rem; color:var(--cream); margin-bottom:.5rem; line-height:1.35;
}
.related-card p { font-size:.82rem; color:var(--text-muted); line-height:1.6; margin:0; }

/* ══════ BLOG INDEX ══════ */
.blog-hero {
    position:relative; overflow:hidden;
    min-height:50vh; display:flex; align-items:center; justify-content:center;
    padding:clamp(7rem,12vw,10rem) 2rem clamp(2rem,4vw,3rem);
    text-align:center;
}
.blog-hero-bg {
    position:absolute; inset:0;
    background:
        radial-gradient(ellipse 90% 70% at 50% 35%, rgba(30,16,64,.7) 0%, transparent 60%),
        radial-gradient(ellipse 50% 50% at 80% 20%, rgba(192,96,128,.15) 0%, transparent 50%),
        radial-gradient(ellipse 60% 60% at 50% 80%, rgba(107,63,160,.2) 0%, transparent 50%),
        var(--deep);
}
.blog-hero-content { position:relative; z-index:3; max-width:780px; margin:0 auto; }
.blog-hero h1 {
    font-size:clamp(2.2rem, 6vw, 4rem); color:var(--cream); margin-bottom:.8rem;
    font-weight:300;
    opacity:0; animation:fadeUp 1s .3s forwards;
}
.blog-hero h1 em {
    font-style:italic;
    background:linear-gradient(135deg,var(--gold),var(--amber));
    -webkit-background-clip:text; -webkit-text-fill-color:transparent;
}
.blog-hero p {
    color:var(--text-soft); font-size:1.05rem; max-width:560px; margin:0 auto;
    opacity:0; animation:fadeUp 1s .5s forwards;
}

.blog-grid {
    max-width:1000px; margin:0 auto; padding:2rem 1.5rem 5rem;
    display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:2rem;
}
.blog-card {
    padding:2.5rem 2rem; position:relative;
    background:linear-gradient(135deg,rgba(107,63,160,.06),rgba(192,96,128,.04));
    border:1px solid rgba(107,63,160,.12); transition:all .5s;
    text-decoration:none; display:block;
}
.blog-card:hover {
    border-color:rgba(212,165,74,.2);
    background:linear-gradient(135deg,rgba(107,63,160,.1),rgba(192,96,128,.06));
    transform:translateY(-4px);
    box-shadow:0 20px 60px rgba(0,0,0,.3);
}
.blog-card h2 {
    font-size:1.2rem; color:var(--cream); margin-bottom:.7rem; line-height:1.3;
}
.blog-card p { font-size:.87rem; color:var(--text-muted); line-height:1.7; margin:0; }
.blog-card-arrow {
    display:block; margin-top:1rem; font-size:.75rem; color:var(--orchid);
    letter-spacing:.15em; text-transform:uppercase; transition:color .3s;
}
.blog-card:hover .blog-card-arrow { color:var(--gold); }
.blog-card-cat {
    display:inline-block; font-size:.65rem; text-transform:uppercase; letter-spacing:.12em;
    color:var(--gold); background:rgba(212,165,74,.08); border:1px solid rgba(212,165,74,.15);
    padding:.2rem .7rem; margin-bottom:.8rem; font-family:'Nunito Sans',sans-serif; font-weight:500;
}
.blog-card.hidden { display:none; }

/* ══════ BLOG FILTERS ══════ */
.blog-filters {
    max-width:1000px; margin:0 auto; padding:0 1.5rem 1.5rem;
    display:flex; flex-wrap:wrap; gap:.6rem; justify-content:center;
}
.filter-btn {
    background:rgba(107,63,160,.08); border:1px solid rgba(107,63,160,.18);
    color:var(--cream-muted); padding:.55rem 1.3rem; font-size:.82rem;
    font-family:'Nunito Sans',sans-serif; font-weight:400; letter-spacing:.04em;
    cursor:pointer; transition:all .35s; white-space:nowrap;
}
.filter-btn:hover {
    border-color:rgba(212,165,74,.3); color:var(--gold);
    background:rgba(107,63,160,.12);
}
.filter-btn.active {
    background:linear-gradient(135deg,var(--gold),var(--gold-dark));
    color:#080510!important; -webkit-text-fill-color:#080510!important;
    border-color:var(--gold); font-weight:600;
}
.filter-count {
    font-size:.72em; opacity:.65; margin-left:.2em;
}
.filter-btn.active .filter-count { opacity:.8; }

/* ══════ BLOG SEARCH ══════ */
.blog-search {
    max-width:500px; margin:0 auto 1.5rem; padding:0 1.5rem;
}
.blog-search-input {
    width:100%; padding:.8rem 1.2rem .8rem 2.8rem;
    background:rgba(107,63,160,.06); border:1px solid rgba(107,63,160,.15);
    color:var(--cream); font-family:'Nunito Sans',sans-serif; font-size:.9rem;
    outline:none; transition:all .3s;
}
.blog-search-input::placeholder { color:var(--text-muted); }
.blog-search-input:focus {
    border-color:rgba(212,165,74,.3); background:rgba(107,63,160,.1);
    box-shadow:0 4px 20px rgba(0,0,0,.2);
}
.blog-search-wrap {
    position:relative;
}
.blog-search-icon {
    position:absolute; left:1rem; top:50%; transform:translateY(-50%);
    opacity:.4; pointer-events:none;
}
.blog-no-results {
    text-align:center; color:var(--text-muted); padding:3rem 1rem;
    font-size:1rem; display:none;
}

/* ══════ FOOTER (matches main site exactly) ══════ */
.site-footer {
    background:var(--deep); padding:2.5rem 1.5rem 2rem; text-align:center;
    border-top:1px solid rgba(107,63,160,.12); position:relative; z-index:2;
}
.footer-inner { max-width:700px; margin:0 auto; }
.footer-social { display:flex; align-items:center; justify-content:center; gap:1rem; margin-bottom:1.2rem; }
.footer-icon {
    display:flex; align-items:center; justify-content:center;
    width:38px; height:38px; border-radius:50%;
    border:1px solid rgba(107,63,160,.25); color:var(--text-muted);
    transition:all .3s; text-decoration:none;
}
.footer-icon:hover { border-color:rgba(212,165,74,.4); color:var(--gold); box-shadow:0 0 12px rgba(212,165,74,.15); }
.footer-payments { display:flex; align-items:center; justify-content:center; gap:.8rem; margin-bottom:1.2rem; }
.pay-icon { height:24px; width:auto; opacity:.5; transition:opacity .3s; }
.pay-icon-text { height:18px; width:auto; opacity:.5; transition:opacity .3s; }
.pay-icon:hover, .pay-icon-text:hover { opacity:.8; }
.footer-legal-links { margin-bottom:.8rem; font-size:.75rem; letter-spacing:.03em; }
.footer-legal-links a { color:var(--text-muted); text-decoration:none; transition:color .3s; }
.footer-legal-links a:hover { color:var(--gold); }
.footer-sep { margin:0 .5rem; color:rgba(152,138,120,.3); }
.footer-copy { font-size:.68rem; color:var(--text-muted); letter-spacing:.12em; opacity:.5; margin-bottom:.3rem; }
.footer-ip { font-size:.62rem; color:var(--text-muted); letter-spacing:.05em; opacity:.35; }

/* ══════ REVEAL ══════ */
.reveal { opacity:0; transform:translateY(40px); transition:all .8s cubic-bezier(.25,.46,.45,.94); }
.reveal.visible { opacity:1; transform:translateY(0); }

/* ══════ RESPONSIVE ══════ */
/* Навигация уходит в бургер на 1260px — отдельным блоком, потому что ниже
   в 768px лежит вёрстка статей, её трогать нельзя. Замер 13.08.2026:
   меню блога переносится на вторую строку на 1090px, шапка главной — на 1220px.
   Точка общая для всего сайта, чтобы шапка везде вела себя одинаково. */
@media(max-width:1260px) {
    .nav-links { display:none; }
    .mobile-toggle { display:block; }
    .nav-links.open {
        display:flex; flex-direction:column; position:absolute;
        top:100%; left:0; right:0; background:rgba(8,5,16,.95);
        padding:1.5rem 2rem; gap:1rem; border-bottom:1px solid rgba(212,165,74,.08);
    }
    .nav-social-desktop { display:none; }
    .nav-social-mobile { display:flex; gap:.8rem; justify-content:center; padding-top:.5rem; border-top:1px solid rgba(107,63,160,.15); margin-top:.5rem; }
}

@media(max-width:768px) {
    nav { padding:.8rem 1.2rem; }
    .article-hero { min-height:40vh; padding-top:5.5rem; }
    .breadcrumbs { padding-top:1rem; }
    .article-container { padding:2rem 1rem 3rem; }
    .toc { margin:1.5rem 1rem; padding:1.5rem; }
    .cta-mini { flex-direction:column; text-align:center; }
    .cta-mini .cta-btn { width:100%; justify-content:center; }
    .related-grid { grid-template-columns:1fr; }
    .blog-grid { grid-template-columns:1fr; }
    .blog-hero { min-height:35vh; padding-top:5.5rem; }
    .orbit-ring { display:none; }
    .blog-filters { gap:.4rem; }
    .filter-btn { padding:.45rem 1rem; font-size:.78rem; }
}

/* ══════ FACTS TABLE (карточка фактов, GEO/SEO — добавлено 29.07.2026) ══════ */
.article-content .facts-table {
    width:100%; border-collapse:collapse; margin:1.5rem 0 2rem;
    font-size:.95rem; line-height:1.55;
    background:rgba(107,63,160,.06);
    border:1px solid rgba(212,165,74,.18); border-radius:12px; overflow:hidden;
}
.article-content .facts-table tr + tr { border-top:1px solid rgba(212,165,74,.12); }
.article-content .facts-table th[scope="row"] {
    text-align:left; vertical-align:top; font-weight:600;
    color:var(--gold-light,#e5c07b); width:38%;
    padding:.7rem 1rem; white-space:normal;
}
.article-content .facts-table td {
    padding:.7rem 1rem; vertical-align:top; color:var(--cream,#f2ead9);
}
@media(max-width:600px) {
    .article-content .facts-table { font-size:.88rem; }
    .article-content .facts-table th[scope="row"],
    .article-content .facts-table td { padding:.55rem .7rem; }
    .article-content .facts-table th[scope="row"] { width:44%; }
}

/* ══════ HUBNAV (навигация хаба планеты по домам и знакам — 29.07.2026) ══════ */
.hubnav {
    max-width:800px; margin:2.5rem auto; padding:1.8rem;
    background:rgba(107,63,160,.07); border:1px solid rgba(212,165,74,.16); border-radius:16px;
}
.hubnav h2 { font-size:1.35rem; margin:0 0 .6rem; color:var(--gold-light,#e5c07b); }
.hubnav .hubnav-lead { margin:0 0 1.2rem; color:var(--text-soft,#cfc6b6); font-size:.95rem; }
.hubnav-cols { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.hubnav-col h3 { font-size:1rem; margin:0 0 .6rem; color:var(--cream,#f2ead9); }
.hubnav-col ul { list-style:none; padding:0; margin:0; }
.hubnav-col li { margin:0 0 .35rem; }
.hubnav-col a { font-size:.92rem; text-decoration:none; border-bottom:1px solid transparent; }
.hubnav-col a:hover { border-bottom-color:currentColor; }
@media(max-width:600px){ .hubnav{padding:1.2rem;margin:2rem 1rem;} .hubnav-cols{grid-template-columns:1fr;gap:1.2rem;} }

/* ══════ COMPARE TABLE (мостовые страницы: две системы рядом — 04.08.2026) ══════ */
.article-content .compare-table {
    width:100%; border-collapse:collapse; margin:1.5rem 0 2rem; font-size:.93rem; line-height:1.5;
    background:rgba(107,63,160,.05); border:1px solid rgba(212,165,74,.18);
    border-radius:12px; overflow:hidden; display:block; overflow-x:auto;
}
.article-content .compare-table thead th {
    text-align:left; font-weight:600; font-size:.85rem; letter-spacing:.02em;
    color:var(--gold-light,#e5c07b); padding:.7rem 1rem;
    background:rgba(212,165,74,.08); border-bottom:1px solid rgba(212,165,74,.18);
}
.article-content .compare-table th[scope="row"] {
    text-align:left; vertical-align:top; font-weight:600;
    color:var(--cream,#f2ead9); padding:.7rem 1rem; width:22%;
}
.article-content .compare-table td { padding:.7rem 1rem; vertical-align:top; color:var(--text-soft,#cfc6b6); }
.article-content .compare-table tbody tr + tr { border-top:1px solid rgba(212,165,74,.10); }
.article-content .compare-table tbody td:last-child { color:var(--cream,#f2ead9); }
@media(max-width:600px){
    .article-content .compare-table { font-size:.85rem; }
    .article-content .compare-table th, .article-content .compare-table td { padding:.5rem .6rem; }
    .article-content .compare-table th[scope="row"] { width:26%; }
}
