/* Lélekemlékek – blogcikk stílus */
.article-main{padding-bottom:5rem}
.article-hero{padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(2.5rem,5vw,4.5rem)}
.article-back{display:inline-flex;gap:.45rem;align-items:center;color:rgba(242,243,250,.68);text-decoration:none;margin-bottom:1.5rem}
.article-back:hover{color:#fff}
.article-meta{display:flex;flex-wrap:wrap;gap:.6rem 1rem;color:rgba(238,240,249,.58);font-size:.86rem;letter-spacing:.04em}
.article-hero h1{max-width:1050px;font-size:clamp(2.8rem,6.5vw,5.9rem);line-height:.98;letter-spacing:-.045em;margin:.65rem 0 1.3rem}
.article-deck{max-width:850px;font-size:clamp(1.12rem,2vw,1.45rem);line-height:1.62;color:rgba(244,245,250,.84)}
.article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(230px,320px);gap:clamp(2rem,6vw,5.5rem);align-items:start}
.article-content{min-width:0}
.article-content p,.article-content li{font-size:1.05rem;line-height:1.82;color:rgba(241,243,250,.79)}
.article-content p{margin:0 0 1.25rem}
.article-content h2{font-size:clamp(1.8rem,4vw,3rem);line-height:1.12;margin:3.2rem 0 1rem;letter-spacing:-.025em}
.article-content h3{font-size:1.35rem;line-height:1.25;margin:2.2rem 0 .7rem}
.article-content ul{padding-left:1.25rem;margin:0 0 1.5rem}
.article-content strong{color:#fff}
.article-aside{position:sticky;top:112px;display:grid;gap:1rem}
.article-box{padding:1.25rem;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.025)}
.article-box h2,.article-box h3{font-size:1rem;margin:0 0 .8rem}
.article-box ol,.article-box ul{margin:0;padding-left:1.2rem}
.article-box li{font-size:.9rem;line-height:1.5;margin:.45rem 0;color:rgba(240,242,250,.68)}
.article-box a{color:rgba(248,248,252,.88);text-decoration:none}
.article-box a:hover{text-decoration:underline}
.article-note{padding:1.4rem 1.5rem;border-left:2px solid rgba(229,233,255,.48);border-radius:0 18px 18px 0;background:rgba(255,255,255,.035);margin:2rem 0}
.article-note p{margin:0}
.article-quote{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.4rem,2.7vw,2rem)!important;line-height:1.45!important;color:#fff!important;padding:1.5rem 0 1.5rem 1.4rem;border-left:1px solid rgba(240,242,255,.3)}
.article-faq{margin-top:3.4rem}
.article-faq details{border-top:1px solid rgba(255,255,255,.12);padding:1rem 0}
.article-faq details:last-child{border-bottom:1px solid rgba(255,255,255,.12)}
.article-faq summary{cursor:pointer;font-size:1.03rem;font-weight:700;color:#fff}
.article-faq details p{margin:.85rem 0 0;font-size:.98rem}
.article-related{margin-top:4rem;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.12)}
.article-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.25rem}
.article-related-card{padding:1.25rem;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:rgba(255,255,255,.025);text-decoration:none;color:#fff}
.article-related-card span{display:block;color:rgba(237,239,248,.55);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}
.article-related-card strong{font-size:1.05rem;line-height:1.35}
.article-service-cta{margin-top:3rem;padding:clamp(1.6rem,4vw,2.7rem);border:1px solid rgba(255,255,255,.13);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02))}
.article-service-cta h2{margin-top:0}
.article-disclaimer{margin-top:2.5rem;font-size:.88rem!important;color:rgba(235,237,246,.52)!important}
@media(max-width:980px){.article-layout{grid-template-columns:1fr}.article-aside{position:static;grid-template-columns:1fr 1fr}.article-toc{display:none}}
@media(max-width:640px){.article-aside{grid-template-columns:1fr}.article-related-grid{grid-template-columns:1fr}.article-hero h1{font-size:clamp(2.45rem,12vw,4.2rem)}}