/*
Theme Name: Вечерний Проспект
Theme URI: https://radio-vprospekt.ru
Author: Вечерний Проспект
Description: Редакционная тема для медиакомпании "Вечерний Проспект" — радио, журнал, продакшн-центр. Кастомные типы записей: Выпуски, Статьи журнала, Новости, Эксперты.
Version: 1.0
Requires PHP: 7.4
Text Domain: vecherniy-prospekt
*/
@font-face{font-family:"PT Serif";src:url("assets/fonts/ptserif-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"PT Serif";src:url("assets/fonts/ptserif-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:"PT Serif";src:url("assets/fonts/ptserif-400i.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap;}
@font-face{font-family:"PT Sans";src:url("assets/fonts/ptsans-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"PT Sans";src:url("assets/fonts/ptsans-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:"PT Mono";src:url("assets/fonts/ptmono-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}

:root{
  --paper:#FAF8F3;
  --paper-shade:#F1ECDE;
  --ink:#18140F;
  --ink-soft:#55503F;
  --rule:#D9D2BF;
  --mast-red:#7C2420;
  --bronze:#A9752E;
  --bronze-soft:#C9A05B;
}

*{box-sizing:border-box;}
html{-webkit-font-smoothing:antialiased;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"PT Sans",Arial,sans-serif;font-size:16px;line-height:1.5;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
.photo{filter:grayscale(30%) sepia(8%) contrast(1.04);}

.kicker{font-family:"PT Mono",monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mast-red);}
.kicker.bronze{color:var(--bronze);}
.kicker.soft{color:var(--ink-soft);}

.topline{border-bottom:1px solid var(--rule);font-family:"PT Mono",monospace;font-size:11px;letter-spacing:.05em;color:var(--ink-soft);}
.topline .wrap{display:flex;justify-content:space-between;align-items:center;height:36px;}
.tl-actions{display:flex;align-items:center;gap:20px;}

.masthead{border-bottom:1px solid var(--ink);}
.masthead .wrap{padding-top:26px;padding-bottom:22px;text-align:center;}
.masthead .word{font-family:"PT Serif",Georgia,serif;font-weight:700;font-size:58px;letter-spacing:.01em;line-height:1;}
.age-mark{display:inline-block;font-family:"PT Mono",monospace;font-size:11px;color:var(--ink-soft);border:1px solid var(--rule);padding:2px 6px;margin-left:8px;vertical-align:middle;}

.nav{border-bottom:1px solid var(--rule);background:var(--paper);}
.nav .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;min-height:46px;align-items:center;}
.nav a{font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;font-family:"PT Sans";}
.nav a:hover{color:var(--mast-red);}

.ticker-bar{background:var(--ink);color:var(--paper);overflow:hidden;white-space:nowrap;border-bottom:1px solid var(--ink);}
.ticker-bar .inner{display:flex;align-items:center;height:38px;}
.ticker-track{display:inline-flex;align-items:center;animation:scroll-left 42s linear infinite;font-family:"PT Mono",monospace;font-size:12px;letter-spacing:.04em;}
.ticker-track span{padding:0 28px;display:inline-flex;align-items:center;gap:10px;white-space:nowrap;}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--bronze-soft);animation:pulse 1.6s ease-in-out infinite;flex-shrink:0;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.25;}}
@keyframes scroll-left{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion: reduce){.ticker-track{animation:none;}.live-dot{animation:none;}}

/* hero / video */
.hero{padding:48px 0 44px;border-bottom:1px solid var(--rule);}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;}
.hero h1{font-family:"PT Serif",Georgia,serif;font-weight:700;font-size:42px;line-height:1.14;margin:14px 0 18px;}
.hero .dek{font-family:"PT Serif",Georgia,serif;font-size:19px;line-height:1.5;color:var(--ink-soft);margin:0 0 22px;}
.byline{font-family:"PT Mono",monospace;font-size:12px;color:var(--ink-soft);border-top:1px solid var(--rule);padding-top:14px;}
.hero-media{position:relative;}
.hero-media img{width:100%;height:420px;object-fit:cover;}
.hero-media .video-tag{position:absolute;top:16px;left:16px;background:var(--mast-red);color:var(--paper);font-family:"PT Mono";font-size:11px;letter-spacing:.08em;padding:5px 10px;}
.hero-media .dur{position:absolute;bottom:16px;right:16px;background:rgba(24,20,15,.78);color:var(--paper);font-family:"PT Mono";font-size:11px;padding:4px 9px;}
.play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:rgba(24,20,15,.72);display:flex;align-items:center;justify-content:center;}
.play-btn span{width:0;height:0;border-left:24px solid var(--paper);border-top:14px solid transparent;border-bottom:14px solid transparent;margin-left:6px;}
.hero-media .cap{font-family:"PT Mono",monospace;font-size:11px;color:var(--ink-soft);margin-top:8px;}

/* stats */
.stats{border-bottom:1px solid var(--rule);background:var(--paper-shade);}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 32px;}
.stat{padding:0 18px;border-left:1px solid var(--rule);}
.stat:first-child{border-left:none;padding-left:0;}
.stat .num{font-family:"PT Serif",Georgia,serif;font-weight:700;font-size:30px;color:var(--bronze);line-height:1;}
.stat .label{margin-top:6px;font-size:12.5px;color:var(--ink-soft);line-height:1.35;}

/* section heading */
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin:48px 0 8px;}
.section-head h2{font-family:"PT Serif",Georgia,serif;font-size:26px;font-weight:700;margin:0;}
.section-head .all{font-family:"PT Mono";font-size:12px;color:var(--mast-red);letter-spacing:.05em;}

/* episode tabs */
.ep-tabs{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0 22px;border-bottom:1px solid var(--rule);padding-bottom:14px;}
.ep-tabs a{font-family:"PT Sans";font-weight:700;font-size:13px;color:var(--ink-soft);}
.ep-tabs a.active{color:var(--mast-red);}

/* episodes grid */
.episodes{padding-bottom:8px;}
.ep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--ink);}
.ep{padding:20px 22px 26px;border-right:1px solid var(--rule);}
.ep:last-child{border-right:none;}
.ep-media{position:relative;margin-bottom:14px;}
.ep-media img{width:100%;height:170px;object-fit:cover;}
.ep-badge{position:absolute;top:10px;left:10px;background:var(--ink);color:var(--paper);font-family:"PT Mono";font-size:10px;letter-spacing:.06em;padding:4px 8px;display:flex;align-items:center;gap:6px;}
.ep-badge.video{background:var(--mast-red);}
.ico-play{width:0;height:0;border-left:6px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;}
.ico-audio{display:flex;align-items:flex-end;gap:2px;height:9px;}
.ico-audio i{width:2px;background:currentColor;display:block;}
.ep[hidden]{display:none;}
.ep-link{display:block;color:inherit;}
.ep-link:hover h3{color:var(--mast-red);}
.jcard[hidden]{display:none;}
.jcard-link{display:block;color:inherit;}
.jcard-link:hover h4{color:var(--mast-red);}
.news-item-link{display:block;color:inherit;}
.news-item-link:hover h3{color:var(--mast-red);}
.news-row-link{display:grid;grid-template-columns:220px 1fr;gap:26px;color:inherit;}
.news-row-link:hover h3{color:var(--mast-red);}
.gal-item-link{display:block;color:inherit;}
.ep h3{font-family:"PT Serif",Georgia,serif;font-size:20px;line-height:1.28;margin:10px 0 8px;}
.ep p.vp-clamp{font-size:14px;color:var(--ink-soft);margin:0 0 6px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.ep p.vp-expanded{-webkit-line-clamp:unset;overflow:visible;}
.ep-toggle{display:none;background:none;border:none;padding:0;margin:0 0 10px;font-family:"PT Mono",monospace;font-size:11px;letter-spacing:.05em;color:var(--mast-red);cursor:pointer;}
.ep-toggle.vp-visible{display:inline-block;}
.ep .meta{font-family:"PT Mono";font-size:11px;color:var(--ink-soft);}

/* рекламный слот (сайдбар для видео на служебных страницах) */
.page-layout{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:start;}
.ad-slot{position:sticky;top:20px;border:1px dashed var(--rule);background:var(--paper-shade);width:320px;aspect-ratio:9/16;display:flex;align-items:center;justify-content:center;text-align:center;font-family:"PT Mono";font-size:11.5px;color:var(--ink-soft);letter-spacing:.05em;padding:24px;line-height:1.6;overflow:hidden;}
.ad-slot iframe,.ad-slot video{width:100% !important;height:100% !important;display:block;border:0;}
.ad-slot .play-btn{position:static;transform:none;margin:0 auto 14px;background:rgba(24,20,15,.1);}
.ad-slot .play-btn span{border-left-color:var(--ink-soft);}

/* photo gallery */
.gallery{padding-top:48px;padding-bottom:48px;border-bottom:1px solid var(--rule);}
.gallery p.intro{color:var(--ink-soft);font-size:14.5px;max-width:640px;margin:0;}
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:160px;gap:8px;margin-top:22px;}
.gal-item{position:relative;overflow:hidden;}
.gal-item.big{grid-column:span 2;grid-row:span 2;}
.gal-item.tall{grid-row:span 2;}
.gal-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.gal-item:hover img{transform:scale(1.05);}
.gal-item .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,20,15,0) 45%,rgba(24,20,15,.85) 100%);pointer-events:none;}
.gal-item .gal-cap{position:absolute;left:14px;right:14px;bottom:12px;color:var(--paper);font-family:"PT Serif",Georgia,serif;font-style:italic;font-size:15px;line-height:1.3;}
.gal-item.small .gal-cap{font-size:12.5px;}

/* audio player mock (podcast episode page) */
.audio-player{background:var(--ink);color:var(--paper);padding:28px 30px;display:flex;align-items:center;gap:22px;}
.audio-player .play-btn{position:static;transform:none;width:58px;height:58px;flex-shrink:0;background:rgba(250,248,243,.14);}
.audio-player .play-btn span{border-left-width:18px;border-top-width:11px;border-bottom-width:11px;}
.audio-bars{display:flex;align-items:flex-end;gap:3px;height:34px;flex:1;}
.audio-bars i{width:4px;background:var(--bronze-soft);display:block;}
.audio-player .dur{font-family:"PT Mono";font-size:12px;color:#CFC8B4;flex-shrink:0;}

/* benefits list (заменяет прайс на странице для экспертов) */
.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);margin-top:24px;}
.benefit{padding:26px 24px;border-right:1px solid var(--rule);}
.benefit:last-child{border-right:none;}
.benefit h3{font-family:"PT Serif",Georgia,serif;font-size:19px;margin:10px 0 10px;}
.benefit p{color:var(--ink-soft);font-size:14.5px;line-height:1.6;margin:0;}

/* episode detail page */
.ep-detail-media{position:relative;margin:24px 0 30px;}
.ep-detail-media img{width:100%;height:460px;object-fit:cover;object-position:50% 20%;}
.ep-body{max-width:760px;}
.ep-body p{color:var(--ink-soft);font-size:16px;line-height:1.75;margin:0 0 18px;}
.related{border-top:1px solid var(--ink);margin-top:20px;padding-top:8px;}

/* studio */
.studio{padding-top:52px;padding-bottom:52px;border-bottom:1px solid var(--rule);}
.studio-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:center;}
.studio img{width:100%;height:460px;object-fit:cover;}
.studio h2{font-family:"PT Serif",Georgia,serif;font-size:30px;margin:12px 0 16px;line-height:1.2;}
.studio p{color:var(--ink-soft);font-size:15.5px;line-height:1.65;margin:0 0 14px;}
.studio .addr{font-family:"PT Mono";font-size:12.5px;color:var(--ink);border-top:1px solid var(--rule);padding-top:14px;margin-top:20px;}

/* for experts CTA */
.cta{background:var(--ink);color:var(--paper);padding:56px 0;}
.cta .wrap{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center;}
.cta h2{font-family:"PT Serif",Georgia,serif;font-size:30px;margin:0 0 12px;line-height:1.25;}
.cta p{color:#CFC8B4;font-size:15px;line-height:1.6;margin:0;}
.cta-btn{justify-self:end;border:1px solid var(--paper);padding:16px 28px;font-family:"PT Sans";font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;}
.cta-btn:hover{background:var(--paper);color:var(--ink);}

/* people: hosts + experts */
.people{padding-top:52px;padding-bottom:52px;border-bottom:1px solid var(--rule);}
.people .group-label{margin:26px 0 14px;}
.hosts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.host-card img{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;object-position:50% 18%;margin-bottom:12px;}
.host-card .role{font-family:"PT Serif",Georgia,serif;font-size:16px;font-weight:700;}
.host-card .field{font-family:"PT Mono";font-size:11px;color:var(--mast-red);margin-top:4px;letter-spacing:.04em;text-transform:uppercase;}
.contrib-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.contrib-card img{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;object-position:50% 18%;margin-bottom:12px;}
.contrib-card .role{font-family:"PT Serif",Georgia,serif;font-size:16px;font-weight:700;}
.contrib-card .field{font-family:"PT Mono";font-size:11px;color:var(--mast-red);margin-top:4px;letter-spacing:.04em;text-transform:uppercase;}

/* journal */
.journal{padding-top:52px;padding-bottom:52px;border-bottom:1px solid var(--rule);}
.journal .intro{color:var(--ink-soft);font-size:14.5px;max-width:620px;margin:0;}
.journal-row{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:24px;}
.jcard{min-width:0;}
.jcard img{width:100%;height:280px;object-fit:cover;margin-bottom:12px;}
.jcard .num{font-family:"PT Mono";font-size:10.5px;color:var(--mast-red);letter-spacing:.06em;text-transform:uppercase;}
.jcard h4{font-family:"PT Serif",Georgia,serif;font-size:16px;line-height:1.32;margin:6px 0 0;}
.journal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;}

/* планшеты: до одноколоночной мобильной версии остаётся промежуточный, менее тесный шаг */
@media (max-width:1200px){
  .contrib-grid, .hosts-grid{grid-template-columns:repeat(3,1fr);}
  .gal-grid{grid-template-columns:repeat(3,1fr);}
  .ep-grid{grid-template-columns:repeat(2,1fr);}
  .ep:nth-child(2n){border-right:none;}
  .benefits-grid{grid-template-columns:repeat(2,1fr);}
  .benefit:nth-child(2n){border-right:none;}
  .news-grid{grid-template-columns:repeat(2,1fr);}
  .news-item:nth-child(2n){border-right:none;}
  .stats .wrap{grid-template-columns:repeat(2,1fr);row-gap:20px;}
  .stat:nth-child(2n){border-left:none;padding-left:0;}
  .journal-row{grid-template-columns:repeat(2,1fr);}
  .tl-date{display:none;}
  .tl-actions{gap:12px;}
  .topline{font-size:10px;}
}

@media (max-width:520px){
  .tl-loc{display:none;}
  .topline .wrap{justify-content:center;}
  .live-btn-text{display:none;}
}

/* news */
.news{padding-top:52px;padding-bottom:52px;border-bottom:1px solid var(--rule);}
.news .intro{color:var(--ink-soft);font-size:14.5px;max-width:640px;margin:0;}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);margin-top:24px;}
.news-item{padding:20px 22px;border-right:1px solid var(--rule);}
.news-item:last-child{border-right:none;}
.news-item h3{font-family:"PT Serif",Georgia,serif;font-size:18px;line-height:1.3;margin:8px 0 8px;}
.news-item p{font-size:13.5px;color:var(--ink-soft);margin:0;line-height:1.5;}

/* newsletter */
.newsletter{background:var(--paper-shade);padding:44px 0;border-bottom:1px solid var(--rule);}
.nl-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:start;}
.nl-form-col{display:flex;flex-direction:column;}
.nl-form-col .consent-check span{max-width:360px;}
.nl-form-col .consent-links{padding-left:0;}
.newsletter h3{font-family:"PT Serif",Georgia,serif;font-size:22px;margin:0 0 6px;}
.newsletter p{margin:0;color:var(--ink-soft);font-size:14px;}
.nl-form{display:flex;gap:0;border-bottom:2px solid var(--ink);min-width:360px;}
.nl-form input{flex:1;border:none;background:transparent;padding:10px 4px;font-family:"PT Sans";font-size:14px;color:var(--ink);}
.nl-form input::placeholder{color:#9A927D;}
.nl-form button{border:none;background:none;font-family:"PT Sans";font-weight:700;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--mast-red);padding:10px 6px;}

/* footer */
footer{padding:48px 0 28px;}
.f-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;}
.f-col .word{font-family:"PT Serif",Georgia,serif;font-weight:700;font-size:22px;}
.f-col p{color:var(--ink-soft);font-size:13px;line-height:1.6;margin-top:10px;}
.f-col h4{font-family:"PT Mono";font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 12px;}
.f-col a, .f-col li{display:block;font-size:14px;margin-bottom:9px;}
.f-col ul{list-style:none;padding:0;margin:0;}
.f-bottom{margin-top:38px;padding-top:18px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center;font-family:"PT Mono";font-size:11px;color:var(--ink-soft);}
.f-legal-links{display:flex;flex-wrap:wrap;gap:4px 18px;}
.f-legal-links a{color:var(--ink-soft);text-decoration:underline;text-underline-offset:2px;}
.f-legal-links a:hover{color:var(--mast-red);}

@media (max-width:900px){
  .hero-grid,.studio-grid,.quote-grid,.cta .wrap,.nl-grid{grid-template-columns:1fr;}
  .ep-grid{grid-template-columns:1fr;}
  .ep{border-right:none;border-bottom:1px solid var(--rule);}
  .stats .wrap{grid-template-columns:repeat(2,1fr);row-gap:20px;}
  .stat{border-left:none;padding-left:0;}
  .hosts-grid,.contrib-grid{grid-template-columns:repeat(2,1fr);}
  .gal-grid{grid-template-columns:repeat(2,1fr);}
  .news-grid{grid-template-columns:1fr;}
  .news-item{border-right:none;border-bottom:1px solid var(--rule);}
  .benefits-grid{grid-template-columns:1fr;}
  .benefit{border-right:none;border-bottom:1px solid var(--rule);}
  .journal-row{grid-template-columns:1fr;}
  .nl-form{min-width:0;width:100%;}
  .f-grid{grid-template-columns:1fr 1fr;}
  .cta-btn{justify-self:start;}
  .masthead .word{font-size:38px;}
  .hero h1{font-size:30px;}
}

/* live button in topline */
.live-btn{display:inline-flex;align-items:center;gap:7px;background:none;border:none;font-family:"PT Mono",monospace;font-size:11px;letter-spacing:.05em;color:var(--mast-red);cursor:pointer;padding:0;font-weight:700;}
.live-btn .live-dot{background:var(--mast-red);}

/* live modal */
.modal-overlay{position:fixed;inset:0;background:rgba(24,20,15,.88);display:flex;align-items:center;justify-content:center;z-index:80;padding:24px;}
.modal-overlay[hidden]{display:none;}
.modal-box{background:var(--paper);width:100%;max-width:860px;padding:22px;}
.modal-box .modal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
.modal-box .modal-top .kicker{margin:0;}
.modal-close{background:none;border:none;font-family:"PT Sans";font-weight:700;font-size:13px;color:var(--ink);cursor:pointer;letter-spacing:.05em;text-transform:uppercase;}
.modal-frame{position:relative;width:100%;aspect-ratio:16/9;background:var(--ink);display:flex;align-items:center;justify-content:center;}
.modal-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}
.modal-poster{color:var(--paper);text-align:center;font-family:"PT Mono";font-size:12px;letter-spacing:.06em;}
.modal-poster .play-btn{position:static;transform:none;margin:0 auto 14px;}
.modal-note{margin-top:12px;font-family:"PT Mono";font-size:11px;color:var(--ink-soft);}

/* about panel (цитата + о проекте, единый блок) */
.about-panel{padding-top:48px;padding-bottom:48px;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);}
.about-grid{display:grid;grid-template-columns:220px 1fr;gap:44px;align-items:start;}
.about-photo-col{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.about-photo-circle{width:168px;height:168px;border-radius:50%;overflow:hidden;border:1.5px solid var(--ink);flex-shrink:0;background:var(--paper-shade);display:flex;align-items:center;justify-content:center;}
.about-photo-circle img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;}
.about-photo-circle .logo-mark{width:80px;height:80px;margin:0;}
.about-photo-accent{width:28px;height:2px;background:var(--bronze);margin-top:16px;}
.about-person-name{margin-top:12px;font-family:"PT Serif",Georgia,serif;font-weight:700;font-size:17px;color:var(--ink);line-height:1.3;}
.about-person-title{margin-top:3px;font-family:"PT Mono",monospace;font-size:11px;letter-spacing:.04em;color:var(--ink-soft);text-transform:uppercase;line-height:1.5;}
.logo-mark{width:96px;height:96px;}
.lead-quote{margin:0;font-family:"PT Serif",Georgia,serif;font-style:italic;font-size:26px;line-height:1.4;}
.lead-cite{display:block;margin-top:12px;font-family:"PT Sans";font-weight:700;font-style:normal;font-size:13px;color:var(--ink-soft);}
.about-divider{border-top:1px solid var(--rule);margin:22px 0 18px;}
.about-grid p{color:var(--ink-soft);font-size:15px;line-height:1.65;margin:0 0 10px;}
.about-grid .signed{font-family:"PT Mono";font-size:11px;color:var(--ink-soft);margin-top:6px;}

/* news items with images */
.news-item img{width:100%;height:130px;object-fit:cover;margin-bottom:12px;}
.news-item:hover h3{color:var(--mast-red);}

/* footer callouts */
.f-callouts{border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);}
.f-callouts .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:34px 32px;}
.f-callout{padding:0 24px;border-left:1px solid var(--rule);}
.f-callout:first-child{border-left:none;padding-left:0;}
.f-callout h4{font-family:"PT Serif",Georgia,serif;font-size:18px;font-weight:700;margin:8px 0 8px;}
.f-callout p{font-size:13px;color:var(--ink-soft);line-height:1.55;margin:0 0 12px;}
.f-callout a.link{font-family:"PT Mono";font-size:11px;color:var(--mast-red);letter-spacing:.05em;}

/* generic sub-page hero */
.page-hero{padding-top:40px;padding-bottom:32px;border-bottom:1px solid var(--rule);}
.page-hero h1{font-family:"PT Serif",Georgia,serif;font-size:38px;margin:10px 0 12px;}
.page-hero p{color:var(--ink-soft);font-size:16px;max-width:680px;margin:0;line-height:1.6;}

/* archive grids (vypuski / zhurnal / novosti / eksperty pages) */
.archive{padding-top:40px;padding-bottom:60px;}
.archive .ep-grid{border-top:1px solid var(--ink);}
.pagination{display:flex;gap:16px;justify-content:center;margin-top:36px;font-family:"PT Mono";font-size:12px;}
.pagination a{color:var(--ink-soft);}
.pagination a.active{color:var(--mast-red);font-weight:700;}

.news-list{border-top:1px solid var(--ink);margin-top:24px;}
.news-row{display:grid;grid-template-columns:220px 1fr;gap:26px;padding:26px 0;border-bottom:1px solid var(--rule);align-items:start;}
.news-row:hover h3{color:var(--mast-red);}
.news-row img{width:220px;height:140px;object-fit:cover;}
.news-row h3{font-family:"PT Serif",Georgia,serif;font-size:21px;margin:8px 0 8px;}
.news-row p{color:var(--ink-soft);font-size:14.5px;line-height:1.6;margin:0;}
.news-row .meta{font-family:"PT Mono";font-size:11px;color:var(--ink-soft);margin-top:8px;}

/* simple form (careers / contacts) */
.form-block{padding-top:8px;padding-bottom:60px;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px;max-width:760px;}
.form-grid.full{grid-template-columns:1fr;}
.field-row{display:flex;flex-direction:column;gap:6px;}
.field-row.span2{grid-column:1 / -1;}
.field-row label{font-family:"PT Mono";font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);}
.field-row input, .field-row select, .field-row textarea{
  border:none;border-bottom:1px solid var(--rule);background:transparent;padding:9px 2px;
  font-family:"PT Sans";font-size:15px;color:var(--ink);
}
.field-row input:focus, .field-row select:focus, .field-row textarea:focus{outline:none;border-bottom-color:var(--ink);}
.field-row textarea{resize:vertical;min-height:90px;}

.consent-row{margin-top:4px;}
.consent-check{display:flex;align-items:flex-start;gap:9px;cursor:pointer;}
.consent-check input{margin-top:3px;flex-shrink:0;}
.consent-check span{font-family:"PT Sans",sans-serif;font-size:13px;line-height:1.5;color:var(--ink-soft);text-transform:none;letter-spacing:0;}
.consent-links{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:8px;padding-left:26px;}
.consent-links a{font-family:"PT Mono",monospace;font-size:11px;letter-spacing:.03em;color:var(--mast-red);text-decoration:underline;text-underline-offset:2px;}
.submit-btn{
  margin-top:10px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);
  padding:14px 26px;font-family:"PT Sans";font-weight:700;font-size:13px;letter-spacing:.05em;
  text-transform:uppercase;cursor:pointer;width:fit-content;
}
.submit-btn:hover{background:var(--paper);color:var(--ink);}
.form-note{font-family:"PT Mono";font-size:11px;color:var(--ink-soft);margin-top:14px;max-width:560px;}

/* service list (production page) */
.service-list{border-top:1px solid var(--ink);margin-top:24px;}
.service-row{display:grid;grid-template-columns:220px 1fr;gap:26px;padding:24px 0;border-bottom:1px solid var(--rule);}
.service-row .num{font-family:"PT Mono";font-size:12px;color:var(--mast-red);}
.service-row h3{font-family:"PT Serif",Georgia,serif;font-size:20px;margin:6px 0 8px;}
.service-row p{color:var(--ink-soft);font-size:14.5px;line-height:1.6;margin:0;}

/* map placeholder */
.map-block{width:100%;height:340px;background:var(--paper-shade);border:1px solid var(--rule);display:flex;align-items:center;justify-content:center;font-family:"PT Mono";font-size:12px;color:var(--ink-soft);letter-spacing:.05em;}

@media (max-width:900px){
  .about-grid{grid-template-columns:1fr;text-align:left;}
  .f-callouts .wrap{grid-template-columns:1fr;gap:24px;}
  .f-callout{border-left:none;padding-left:0;}
  .gal-grid{grid-template-columns:repeat(2,1fr);}
  .gal-item.big{grid-column:span 2;}
  .form-grid{grid-template-columns:1fr;}
  .news-row{grid-template-columns:1fr;}
  .news-row img{width:100%;height:180px;}
  .service-row{grid-template-columns:1fr;}
  .page-layout{grid-template-columns:1fr;}
  .ad-slot{aspect-ratio:16/9;position:static;}
}
