/* =========================================================
   Photographers.kz — страница статьи журнала
   Работает поверх style.css дочерней темы (colormag-child-pkz):
   использует её переменные --bg, --surface, --text, --accent и т.д.,
   поэтому День / Ночь / Auto переключаются автоматически.
   ========================================================= */

/* ---------- Каркас страницы: прячем остатки ColorMag ---------- */
body.pkz-article-shell{
  background:var(--bg);
  color:var(--text);
  font-family:'Plus Jakarta Sans',sans-serif;
  -webkit-font-smoothing:antialiased;
  margin:0;
}
body.pkz-article-shell .cm-header,
body.pkz-article-shell header#masthead,
body.pkz-article-shell #header-text-nav-container,
body.pkz-article-shell .main-navigation,
body.pkz-article-shell .footer-socket-wrapper,
body.pkz-article-shell .footer-widgets-wrapper,
body.pkz-article-shell #secondary{display:none!important}

/* Правило темы `.pkz-v2 nav` делает любой <nav> фиксированной шапкой —
   страхуемся от <nav> внутри контента, комментариев и плагинов */
.pkz-article nav:not(#mainNav){
  position:static;height:auto;padding:0;display:block;
  background:none;backdrop-filter:none;border:0;box-shadow:none;z-index:auto
}

/* Если скрипт темы не загрузился — контент всё равно виден */
html:not([data-pkz-theme]) .pkz-article .reveal{opacity:1;transform:none}

/* ---------- Hero ---------- */
.pkz-article .article-hero{padding-bottom:48px}
.pkz-article .article-hero .archive-hero__inner--single{max-width:900px}
.pkz-article .article-hero .archive-hero__copy{max-width:860px;margin:0 auto;text-align:center}
.pkz-article .article-hero h1{
  font-family:'DM Serif Display',serif;
  font-size:clamp(34px,4.6vw,60px);
  line-height:1.06;
  letter-spacing:-.02em;
  margin:16px 0 18px;
  color:var(--text);
}
.pkz-article .article-hero__eyebrow{justify-content:center}
.pkz-article .article-hero__eyebrow:hover{color:var(--accent2)}
.pkz-article .article-hero__lead{max-width:680px;margin:0 auto 22px}

.pkz-article .article-crumbs{
  display:flex;flex-wrap:wrap;justify-content:center;gap:8px;
  font-size:12px;letter-spacing:.04em;color:var(--text3);margin-bottom:20px
}
.pkz-article .article-crumbs a{color:var(--text2);transition:color .2s}
.pkz-article .article-crumbs a:hover{color:var(--accent)}
.pkz-article .article-crumbs__sep{opacity:.6}

.pkz-article .article-meta{
  display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;
  font-size:13px;color:var(--text3)
}
.pkz-article .article-meta__dot{color:var(--accent)}

/* ---------- Обложка ---------- */
.pkz-article .article-cover{padding:0 40px;max-width:1200px}
.pkz-article .article-cover__figure{margin:0 auto;max-width:1100px}
.pkz-article .article-cover__figure img{
  display:block;width:100%;height:auto;max-height:620px;object-fit:cover;
  border:1px solid var(--border);box-shadow:var(--card-shadow);background:var(--bg3)
}
.pkz-article .article-cover__figure figcaption{text-align:center;font-size:12px;color:var(--text3);margin-top:10px}

/* ---------- Текст статьи ---------- */
.pkz-article .article-body-section{padding-top:64px;padding-bottom:88px}

.pkz-article .article-content{
  max-width:740px;margin:0 auto;
  font-size:17px;line-height:1.8;color:var(--text);
  overflow-wrap:break-word
}
.pkz-article .article-content p{margin:0 0 1.15em;color:var(--text)}

.pkz-article .article-content h2,
.pkz-article .article-content h3,
.pkz-article .article-content h4{
  font-family:'DM Serif Display',serif;
  font-weight:400;
  color:var(--text);
  line-height:1.15;
  letter-spacing:-.01em;
  margin:2.6em 0 .7em;
  scroll-margin-top:96px
}
.pkz-article .article-content > h2:first-child,
.pkz-article .article-content > h3:first-child{margin-top:0}

/* Вводка */
.pkz-article .article-content p.article-lead{
  font-size:21px;line-height:1.65;color:var(--text);
  margin-bottom:1.4em;letter-spacing:-.005em
}
@media (max-width:768px){.pkz-article .article-content p.article-lead{font-size:18px}}
.pkz-article .article-content h2{font-size:clamp(28px,3vw,38px)}
.pkz-article .article-content h3{font-size:clamp(24px,2.6vw,30px)}
.pkz-article .article-content h4{font-size:22px}
.pkz-article .article-content h2::before,
.pkz-article .article-content h3::before{
  content:"";display:block;width:28px;height:2px;background:var(--accent);margin-bottom:14px
}

.pkz-article .article-content a{
  color:var(--accent);
  text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;
  transition:color .2s
}
.pkz-article .article-content a:hover{color:var(--accent2);text-decoration-thickness:2px}
.pkz-article .article-content a:has(> img){text-decoration:none}

.pkz-article .article-content strong,
.pkz-article .article-content b{font-weight:700;color:var(--text)}
.pkz-article .article-content em{color:inherit}

.pkz-article .article-content ul,
.pkz-article .article-content ol{padding-left:1.3em;margin:0 0 1.3em}
.pkz-article .article-content li{margin:.45em 0}
.pkz-article .article-content li::marker{color:var(--accent)}

.pkz-article .article-content blockquote,
.pkz-article .article-content .wp-block-quote{
  margin:1.8em 0;padding:20px 26px;
  border-left:3px solid var(--accent);
  background:var(--surface);
  font-family:'DM Serif Display',serif;font-size:22px;line-height:1.5;font-style:italic;color:var(--text)
}
.pkz-article .article-content blockquote p:last-child{margin-bottom:0}
.pkz-article .article-content blockquote cite{
  display:block;margin-top:10px;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:13px;font-style:normal;color:var(--text3)
}

/* Картинки (общие правила; основное оформление — .pkz-photo ниже) */
.pkz-article .article-content img{max-width:100%;height:auto;vertical-align:top}
.pkz-article .article-content figure{margin:2.2em 0}
.pkz-article .article-content .wp-caption{max-width:100%!important}
.pkz-article .article-content .aligncenter{margin-left:auto;margin-right:auto;display:block}
.pkz-article .article-content .alignleft{float:left;margin:.4em 1.6em 1em 0;max-width:50%}
.pkz-article .article-content .alignright{float:right;margin:.4em 0 1em 1.6em;max-width:50%}
.pkz-article .article-content figcaption,
.pkz-article .article-content .wp-caption-text{font-size:12px;line-height:1.6;color:var(--text3);text-align:center;margin-top:10px}
.pkz-article .article-content .wp-block-gallery,
.pkz-article .article-content .gallery{gap:10px}

/* ---------- Фото ---------- */
.pkz-article .pkz-photo{margin:2.4em 0;text-align:center}
.pkz-article .pkz-photo img,
.pkz-article .pkz-photo a{display:block}
.pkz-article .pkz-photo img{
  width:100%;height:auto;margin:0 auto;
  border:1px solid var(--border);background:var(--bg3);
  float:none;max-width:100%
}
/* Вертикальные кадры — не выше 78% экрана, по центру на тонировке */
.pkz-article .pkz-photo.is-portrait{
  background:var(--bg2);border:1px solid var(--border);padding:18px 0
}
.pkz-article .pkz-photo.is-portrait img{
  width:auto;max-height:78vh;border:0;box-shadow:var(--card-shadow)
}
.pkz-article .pkz-photo.is-portrait .pkz-photo__caption{padding:0 18px}

/* Пары и тройки фото */
.pkz-article .pkz-photo-grid{display:grid;gap:12px;margin:2.4em 0}
.pkz-article .pkz-photo-grid--2{grid-template-columns:1fr 1fr}
.pkz-article .pkz-photo-grid--3{grid-template-columns:repeat(3,1fr)}
.pkz-article .pkz-photo-grid .pkz-photo{margin:0;background:none;border:0;padding:0;display:flex;flex-direction:column}
.pkz-article .pkz-photo-grid .pkz-photo img{
  width:100%;max-height:none;aspect-ratio:2/3;object-fit:cover;
  border:1px solid var(--border);box-shadow:none
}
.pkz-article .pkz-photo-grid .pkz-photo:not(.is-portrait) img{aspect-ratio:4/3}
.pkz-article .pkz-photo-grid:has(.is-portrait):has(.pkz-photo:not(.is-portrait)) .pkz-photo img{aspect-ratio:4/5}
.pkz-article .pkz-photo-grid__caption{grid-column:1/-1}

/* Подписи */
.pkz-article .pkz-photo__caption{
  margin-top:10px;font-size:12px;line-height:1.55;color:var(--text3);text-align:center
}
.pkz-article .pkz-photo__caption strong,
.pkz-article .pkz-photo__caption b{font-weight:600;color:var(--text2)}
.pkz-article .pkz-photo__caption em{font-style:normal}
.pkz-article .pkz-photo__caption a{color:var(--text2)}
.pkz-article .pkz-photo__caption.is-exif{
  display:inline-flex;align-items:center;gap:8px;justify-content:center;
  font-size:11px;letter-spacing:.02em;
  font-variant-numeric:tabular-nums
}
.pkz-article .pkz-photo__caption.is-exif::before{
  content:"";flex-shrink:0;width:14px;height:14px;opacity:.7;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7.5 6.5H4a1 1 0 0 0-1 1V19a1 1 0 0 0 1 1h16a1 1 0 0 0 1-1V7.5a1 1 0 0 0-1-1h-3.5z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7.5 6.5H4a1 1 0 0 0-1 1V19a1 1 0 0 0 1 1h16a1 1 0 0 0 1-1V7.5a1 1 0 0 0-1-1h-3.5z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E") center/contain no-repeat
}
.pkz-article .pkz-photo-grid .pkz-photo__caption.is-exif{display:block}
.pkz-article .pkz-photo-grid .pkz-photo__caption.is-exif::before{display:inline-block;vertical-align:-2px;margin-right:6px}

/* Увеличение по клику */
.pkz-article .pkz-photo img.is-zoomable{cursor:zoom-in;transition:opacity .2s,transform .3s}
.pkz-article .pkz-photo img.is-zoomable:hover{opacity:.92}
.pkz-article .pkz-photo img.is-zoomable:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* ---------- Лайтбокс ---------- */
html.pkz-lb-open{overflow:hidden}
.pkz-lightbox{
  position:fixed;inset:0;z-index:1000;
  display:flex;align-items:center;justify-content:center;
  background:rgba(10,9,8,.94);
  opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s
}
.pkz-lightbox.is-open{opacity:1;visibility:visible}
.pkz-lightbox__stage{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:92vw}
.pkz-lightbox__stage img{
  max-width:92vw;max-height:84vh;width:auto;height:auto;display:block;
  opacity:0;transition:opacity .25s;box-shadow:0 20px 60px rgba(0,0,0,.5)
}
.pkz-lightbox__stage img.is-loaded{opacity:1}
.pkz-lightbox__stage figcaption{
  max-width:720px;text-align:center;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:13px;line-height:1.55;color:rgba(255,255,255,.65)
}
.pkz-lightbox__stage figcaption strong{color:rgba(255,255,255,.85);font-weight:600}
.pkz-lightbox__close,
.pkz-lightbox__nav{
  position:absolute;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);
  color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif;transition:background .2s,border-color .2s
}
.pkz-lightbox__close:hover,
.pkz-lightbox__nav:hover{background:var(--accent);border-color:var(--accent)}
.pkz-lightbox__close{top:18px;right:18px;width:44px;height:44px;font-size:16px}
.pkz-lightbox__nav{top:50%;transform:translateY(-50%);width:52px;height:72px;font-size:34px;line-height:1}
.pkz-lightbox__nav--prev{left:18px}
.pkz-lightbox__nav--next{right:18px}
.pkz-lightbox.is-single .pkz-lightbox__nav{display:none}
.pkz-lightbox__count{
  position:absolute;top:30px;left:24px;font-size:12px;letter-spacing:.14em;color:rgba(255,255,255,.55);
  font-family:'Plus Jakarta Sans',sans-serif
}
.admin-bar .pkz-lightbox__close{top:50px}
@media (max-width:768px){
  .pkz-lightbox__nav{top:auto;bottom:18px;transform:none;width:48px;height:48px;font-size:28px}
  .pkz-lightbox__stage img{max-width:100vw;max-height:72vh}
}

/* ---------- Прогресс чтения ---------- */
.pkz-article .article-progress{
  position:fixed;top:66px;left:0;right:0;height:2px;z-index:199;pointer-events:none
}
.admin-bar .pkz-article .article-progress{top:98px}
@media (max-width:782px){.admin-bar .pkz-article .article-progress{top:112px}}
.pkz-article .article-progress span{
  display:block;height:100%;background:var(--accent);
  transform:scaleX(0);transform-origin:0 50%;will-change:transform
}

/* ---------- Раскладка с содержанием ---------- */
.pkz-article .article-layout{display:block}
.pkz-article .article-toc{max-width:740px;margin:0 auto 32px}
.pkz-article .article-toc__box{border:1px solid var(--border);background:var(--surface)}
.pkz-article .article-toc__box summary{
  list-style:none;cursor:pointer;padding:14px 18px;
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);
  display:flex;justify-content:space-between;align-items:center
}
.pkz-article .article-toc__box summary::-webkit-details-marker{display:none}
.pkz-article .article-toc__box summary::after{content:"+";font-size:18px;font-weight:400;color:var(--text3)}
.pkz-article .article-toc__box[open] summary::after{content:"−"}
.pkz-article .article-toc__box ol{list-style:none;margin:0;padding:0 18px 14px;counter-reset:toc}
.pkz-article .article-toc__box li{counter-increment:toc;margin:0}
.pkz-article .article-toc__box li.is-sub{padding-left:16px}
.pkz-article .article-toc__box a{
  display:flex;gap:10px;padding:7px 0;font-size:14px;line-height:1.4;color:var(--text2);
  border-top:1px solid var(--border);transition:color .2s
}
.pkz-article .article-toc__box li:first-child a{border-top:0}
.pkz-article .article-toc__box a::before{
  content:counter(toc,decimal-leading-zero);font-family:'DM Serif Display',serif;font-style:italic;
  color:var(--accent);opacity:.55;min-width:22px
}
.pkz-article .article-toc__box a:hover,
.pkz-article .article-toc__box a.is-active{color:var(--text)}
.pkz-article .article-toc__box a.is-active::before{opacity:1}

@media (min-width:1240px){
  .pkz-article .article-layout.has-toc{
    display:grid;grid-template-columns:1fr minmax(0,740px) 1fr;column-gap:48px;align-items:start
  }
  .pkz-article .article-layout.has-toc .article-content{grid-column:2;grid-row:1;margin:0}
  .pkz-article .article-layout.has-toc .article-toc{
    grid-column:1;grid-row:1;justify-self:end;width:100%;max-width:220px;margin:0;
    position:sticky;top:100px
  }
  .pkz-article .article-layout.has-toc .article-toc__box{background:none;border:0;border-left:1px solid var(--border2)}
  .pkz-article .article-layout.has-toc .article-toc__box summary{cursor:default;pointer-events:none;padding:2px 16px 12px}
  .pkz-article .article-layout.has-toc .article-toc__box summary::after{display:none}
  .pkz-article .article-layout.has-toc .article-toc__box ol{padding:0 16px}
  .pkz-article .article-layout.has-toc .article-toc__box a{border-top:0;font-size:13px;padding:6px 0}
  .pkz-article .article-layout.has-toc .article-toc__box a.is-active{color:var(--accent)}
}

/* ---------- Источник и автор ---------- */
.pkz-article .article-credit{
  margin:3em 0 0;padding:22px 24px;
  border:1px solid var(--border);border-left:3px solid var(--accent);
  background:var(--surface);box-shadow:var(--card-shadow)
}
.pkz-article .article-credit__label{
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:12px
}
.pkz-article .article-credit__body p{margin:0 0 .6em;font-size:14px;line-height:1.7;color:var(--text2)}
.pkz-article .article-credit__body p:last-child{margin-bottom:0}
.pkz-article .article-credit__body strong{color:var(--text)}
.pkz-article .article-credit__body a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}
.pkz-article .article-credit__body a:hover{border-bottom-color:var(--accent)}
.pkz-article .article-credit__source{font-size:12px!important;color:var(--text3)!important;padding-bottom:.8em;border-bottom:1px solid var(--border)}

/* Видео */
.pkz-article .article-content iframe,
.pkz-article .article-content video,
.pkz-article .article-content embed{max-width:100%;border:0}
.pkz-article .article-content .wp-block-embed__wrapper iframe,
.pkz-article .article-content iframe[src*="youtube"],
.pkz-article .article-content iframe[src*="vimeo"]{width:100%;aspect-ratio:16/9;height:auto}

/* Таблицы */
.pkz-article .article-content table{
  width:100%;border-collapse:collapse;font-size:14px;display:block;overflow-x:auto;
  border:1px solid var(--border);margin:1.8em 0
}
.pkz-article .article-content th,
.pkz-article .article-content td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;color:var(--text)}
.pkz-article .article-content th{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text2);background:var(--bg2)}

/* Код и разделители */
.pkz-article .article-content code{font-size:.9em;padding:2px 6px;background:var(--bg2);border:1px solid var(--border)}
.pkz-article .article-content pre{padding:16px 18px;background:var(--bg2);border:1px solid var(--border);overflow-x:auto}
.pkz-article .article-content hr{border:0;height:1px;background:var(--border2);margin:2.6em 0}
.pkz-article .article-content::after{content:"";display:table;clear:both}

.pkz-article .article-pages{display:flex;gap:8px;align-items:center;margin-top:2em;font-size:14px;color:var(--text2)}

/* ---------- Теги, шеринг ---------- */
.pkz-article .article-footer{
  max-width:740px;margin:56px auto 0;padding-top:28px;
  border-top:1px solid var(--border2);
  display:flex;flex-direction:column;gap:20px
}
.pkz-article .article-tags{display:flex;flex-wrap:wrap;gap:8px}
.pkz-article .article-tags .archive-chip{border-radius:999px}
.pkz-article .article-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.pkz-article .article-share__label{
  font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-right:6px
}
.pkz-article .article-share__btn,
.pkz-article button.article-share__btn{
  background:transparent!important;color:var(--text2)!important;border:1px solid var(--border2)!important;
  border-radius:0;font-family:inherit;font-size:13px;font-weight:500;line-height:1.4;
  padding:8px 16px;box-shadow:none;text-transform:none;cursor:pointer
}
.pkz-article .article-share__btn:hover{border-color:var(--accent)!important;color:var(--accent)!important}

/* ---------- Предыдущая / следующая ---------- */
.pkz-article .article-pager{max-width:740px;margin:28px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pkz-article .article-pager__link{
  display:flex;flex-direction:column;gap:8px;padding:20px 22px;
  border:1px solid var(--border);background:var(--surface);box-shadow:var(--card-shadow);
  color:var(--text);transition:border-color .2s,transform .2s
}
.pkz-article .article-pager__link:hover{border-color:var(--accent);transform:translateY(-3px)}
.pkz-article .article-pager__link--next{text-align:right;grid-column:2}
.pkz-article .article-pager__dir{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.pkz-article .article-pager__title{font-family:'DM Serif Display',serif;font-size:19px;line-height:1.25}

/* ---------- Комментарии ---------- */
.pkz-article .article-comments{max-width:740px;margin:56px auto 0;color:var(--text)}
.pkz-article .article-comments input,
.pkz-article .article-comments textarea{
  width:100%;border:1.5px solid var(--border2);background:var(--surface2);color:var(--text);padding:12px 14px;font:inherit
}
.pkz-article .article-comments input[type=submit]{
  width:auto;background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;cursor:pointer
}

/* ---------- Похожие материалы ---------- */
.pkz-article .archive-listing .archive-toolbar{align-items:end}

/* ---------- Адаптив ---------- */
@media (max-width:768px){
  .pkz-article .article-hero{padding:102px 20px 36px}
  .pkz-article .article-cover{padding:0 20px}
  .pkz-article .article-body-section{padding:40px 20px 64px}
  .pkz-article .article-content{font-size:16px;line-height:1.75}
  .pkz-article .article-content .alignleft,
  .pkz-article .article-content .alignright{float:none;max-width:100%;margin:1.5em 0}
  .pkz-article .article-pager{grid-template-columns:1fr}
  .pkz-article .article-pager__link--next{grid-column:1}
}
