/* Blog pages use the existing Luna design tokens and shared site navigation. */
body.luna-page>a.skip-link.blog-skip-link{display:block!important;z-index:20}
body.luna-page>a.skip-link.blog-skip-link:focus{top:var(--space-3)}
.blog-site-header{position:relative;z-index:5;background:var(--sand);color:var(--cream)}
.blog-site-header .site-nav{min-height:94px;height:auto;gap:var(--space-5)}
.blog-site-header .brand{flex:0 0 auto}
.blog-site-header .primary-nav{justify-content:center;gap:clamp(12px,2vw,var(--space-5));margin-left:auto}
.blog-site-header .primary-nav a[aria-current="page"],
.blog-site-header .primary-nav a.is-active{border-color:var(--yellow);color:var(--yellow)}
.blog-site-header .nav-book{flex:0 0 auto;margin-left:var(--space-4);white-space:nowrap}

.blog-page{min-height:60vh;background:var(--paper);color:var(--ink)}
.blog-intro{padding:clamp(72px,9vw,120px) 0 clamp(44px,6vw,80px);background:var(--paper)}
.blog-intro__inner{max-width:var(--container);margin-inline:auto}
.blog-intro__kicker{color:var(--terracotta);font-size:var(--fs-caption);letter-spacing:1.2px;line-height:1.4}
.blog-intro__title{max-width:900px;margin-top:var(--space-5);font-family:var(--font-serif);font-size:clamp(42px,6vw,76px);letter-spacing:-2.4px;line-height:1.02}
.blog-intro__text{max-width:620px;margin-top:var(--space-5);color:var(--muted);font-size:var(--fs-lead);line-height:1.6}
.blog-posts{padding:0 0 var(--section-y)}
.blog-posts .news-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}
.blog-posts .news-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--cream);box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.blog-posts .news-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.blog-posts .news-card__image{aspect-ratio:1.55;overflow:hidden;background:var(--stone)}
.blog-posts .news-card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease)}
.blog-posts .news-card:hover .news-card__image img{transform:scale(1.035)}
.blog-posts .news-card__body{display:flex;min-height:224px;flex-direction:column;align-items:flex-start;padding:var(--space-5)}
.blog-posts .news-card__date{color:var(--terracotta);font-size:var(--fs-caption);font-weight:500;letter-spacing:.4px}
.blog-posts .news-card__title{margin:var(--space-3) 0 var(--space-2);color:var(--dark);font-family:var(--font-serif);font-size:clamp(22px,2.2vw,30px);font-weight:400;letter-spacing:-.5px;line-height:1.16}
.blog-posts .news-card__link:hover .news-card__title{color:var(--olive)}
.blog-posts .news-card__excerpt{margin:0 0 var(--space-5);color:var(--muted);font-size:var(--fs-body);line-height:1.6}
.blog-posts .news-card__author{margin-top:auto;color:var(--olive);font-size:var(--fs-small);font-style:normal}
.blog-posts .news-card__author::before{content:"Автор · "}
.blog-posts .news-empty{padding:var(--space-8) var(--space-5);border:1px solid var(--line);border-radius:var(--radius);background:var(--cream);color:var(--muted);text-align:center}
.blog-empty-admin{display:block;margin-top:var(--space-3);color:var(--olive);font-size:var(--fs-small)}
.blog-site-footer{flex-wrap:wrap;gap:var(--space-3) var(--space-5)}
.blog-site-footer .site-footer-legal{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}
.blog-site-footer a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}

.news-post-page{width:min(840px,100% - 2 * var(--gutter));margin-inline:auto;padding:clamp(44px,7vw,88px) 0 var(--section-y);color:var(--ink)}
.news-post-page__back{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);color:var(--olive);font-size:var(--fs-small);text-decoration:none}
.news-post-page__back::before{content:"←"}
.news-post-page__hero{overflow:hidden;margin-bottom:var(--space-7);border-radius:var(--radius)}
.news-post-page__hero img{width:100%;max-height:580px;object-fit:cover}
.news-post-page__header{margin-bottom:var(--space-7)}
.news-post-page__date{display:block;margin-bottom:var(--space-3);color:var(--terracotta);font-size:var(--fs-caption);letter-spacing:.5px}
.news-post-page__title{margin:0 0 var(--space-3);color:var(--dark);font-family:var(--font-serif);font-size:clamp(38px,5.5vw,64px);font-weight:400;letter-spacing:-1.8px;line-height:1.04}
.news-post-page__author{color:var(--olive);font-size:var(--fs-small);font-style:normal}
.news-post-page__author::before{content:"Автор · "}
.news-post-page__content{color:var(--ink);font-size:var(--fs-lead);line-height:1.75}
.news-post-page__content h2,.news-post-page__content h3{margin:var(--space-7) 0 var(--space-3);color:var(--dark);font-family:var(--font-serif);font-size:clamp(26px,3.4vw,38px);font-weight:400;line-height:1.16}
.news-post-page__content p{margin:0 0 var(--space-5)}
.news-post-page__content ul,.news-post-page__content ol{margin:0 0 var(--space-5);padding-left:1.4em}
.news-post-page__content li{padding-left:var(--space-1);margin-bottom:var(--space-2)}
.news-post-page__content a{color:var(--olive);text-decoration:underline;text-decoration-color:var(--sand);text-underline-offset:3px}
.news-post-page__content blockquote{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);border-left:3px solid var(--terracotta);background:var(--sand-soft);font-family:var(--font-serif);font-size:1.2em}
.news-slider{margin:clamp(32px,5vw,56px) 0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--cream);box-shadow:var(--shadow-sm)}
.news-slider__viewport{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;outline-offset:4px}
.news-slider__viewport:focus-visible{outline:3px solid var(--terracotta)}
.news-slider__viewport::-webkit-scrollbar{display:none}
.news-slider__slide{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:center}
.news-slider__slide img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--stone)}
.news-slider__slide figcaption{padding:var(--space-3) var(--space-4);color:var(--muted);font-size:var(--fs-small)}
.news-slider__controls{display:flex;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-3);border-top:1px solid var(--line)}
.news-slider__button{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--dark);font:inherit;font-size:22px;line-height:1;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.news-slider__button:hover{border-color:var(--olive);background:var(--olive);color:var(--cream)}
.news-slider__button:focus-visible{outline:3px solid var(--terracotta);outline-offset:3px}
.news-slider__status{min-width:4.5em;color:var(--muted);font-size:var(--fs-small);text-align:center;font-variant-numeric:tabular-nums}
.news-post-page__footer{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--line)}
.news-post-draft{display:inline-block;margin-bottom:var(--space-3);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--yellow);color:var(--dark);font-size:var(--fs-caption);letter-spacing:.4px}
.news-post-not-found{min-height:50vh;padding:var(--section-y) 0}
.news-post-not-found h1{font-family:var(--font-serif);font-size:var(--fs-h1)}
.news-post-not-found a{display:inline-block;margin-top:var(--space-5);color:var(--olive);text-decoration:underline;text-underline-offset:3px}

@media(max-width:1050px){
  .blog-site-header .primary-nav{gap:var(--space-3);margin-left:auto}
  .blog-site-header .site-nav{gap:var(--space-3)}
  .blog-site-header .nav-book{margin-left:var(--space-2)}
  .blog-posts .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .blog-site-header .site-nav{min-height:0;padding:var(--space-4) 0;flex-wrap:wrap}
  .blog-site-header .brand{min-width:auto}
  .blog-site-header .brand-name{font-size:31px}
  .blog-site-header .primary-nav{display:flex;width:100%;order:3;justify-content:flex-start;gap:var(--space-5);margin:0;padding:0 0 var(--space-2);overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
  .blog-site-header .primary-nav a{padding:var(--space-2) 0}
  .blog-site-header .nav-book{margin-left:auto;padding-inline:var(--space-3);font-size:var(--fs-caption)}
  .blog-intro{padding-top:var(--space-8)}
  .blog-intro__title{letter-spacing:-1.2px}
  .blog-intro__text{font-size:var(--fs-body)}
  .blog-posts .news-grid{grid-template-columns:1fr}
  .blog-posts .news-card__body{min-height:0}
  .blog-site-footer{align-items:flex-start;flex-direction:column}
  .blog-site-footer .site-footer-legal{flex-direction:column;gap:var(--space-2)}
  .news-post-page__hero{margin-bottom:var(--space-5)}
  .news-post-page__content{font-size:var(--fs-body)}
}
