/*
Theme Name: ЦГД Уфа
Theme URI: http://cgdufa.ru/
Description: Тема WordPress для сайта МКУ «Центр городского дизайна» г. Уфа, перенесённая с Tilda с сохранением дизайна. Проекты, команда, полезные ссылки и документы редактируются в админке; контакты — в «Внешний вид → Настроить».
Version: 1.3.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: cgdufa
License: GPLv2 or later
*/

/* Внутренние страницы WordPress (не главная) */
.cgd-page { padding: 140px 20px 90px; background: #fff; }
.cgd-page__inner { max-width: 860px; margin: 0 auto; font-family: 'TildaSans', Arial, sans-serif; color: #000; font-size: 18px; line-height: 1.6; }
.cgd-page__title { font-size: 42px; line-height: 1.2; font-weight: 600; margin: 0 0 40px; }
.cgd-page__inner a { color: #7f4f4f; }
.cgd-page__inner img { max-width: 100%; height: auto; }
.cgd-page__inner h2 { font-size: 30px; margin: 1.6em 0 .6em; }
.cgd-page__inner h3 { font-size: 24px; margin: 1.4em 0 .5em; }
.cgd-page__list { list-style: none; padding: 0; }
.cgd-page__list li { margin: 0 0 30px; }
.cgd-page__list a { font-size: 26px; font-weight: 600; text-decoration: none; }
@media (max-width: 640px) { .cgd-page { padding-top: 110px; } .cgd-page__title { font-size: 30px; } }

/* Шапка внутренних страниц */
.cgd-header { position: absolute; top: 0; left: 0; right: 0; z-index: 50; display: flex; align-items: center; justify-content: space-between; padding: 20px 40px; box-sizing: border-box; }
.cgd-header__logo img { display: block; height: 52px; width: auto; }
.cgd-header__menu { display: flex; align-items: center; justify-content: center; width: 75px; height: 75px; border-radius: 50%; background: #f50303; color: #fff !important; font-family: 'TildaSans', Arial, sans-serif; font-size: 12px; font-weight: 600; text-decoration: none; transition: background .2s; }
.cgd-header__menu:hover { background: #7f4f4f; }
@media (max-width: 640px) { .cgd-header { padding: 15px 20px; } .cgd-header__logo img { height: 36px; } .cgd-header__menu { width: 60px; height: 60px; } }

/* Параллакс шапки */
#rec778506722 .t396__artboard.cgd-parallax { overflow: hidden; }
#rec778506722 .cgd-parallax .t396__carrier { will-change: translate; }
#rec778506722 .cgd-parallax .tn-elem__7785067221740929102190 { will-change: translate, opacity; }

/* Плитки проектов и галерея (фото + видео) */
.cgd-project { cursor: pointer; }
.cgd-project:focus-visible { outline: 3px solid #f50303; outline-offset: 3px; }
.cgd-project .t603__blockimg { position: relative; }
.cgd-project__badge { position: absolute; right: 10px; bottom: 10px; padding: 4px 10px; border-radius: 20px; background: rgba(0,0,0,.65); color: #fff; font: 500 13px/1.3 'TildaSans', Arial, sans-serif; pointer-events: none; }
.cgd-lb-lock, .cgd-lb-lock body { overflow: hidden; }
.cgd-lb { position: fixed; inset: 0; z-index: 100000; display: none; flex-direction: column; background: #111; color: #fff; font-family: 'TildaSans', Arial, sans-serif; }
.cgd-lb.is-open { display: flex; }
.cgd-lb__top { display: flex; align-items: center; gap: 20px; padding: 16px 20px 10px 30px; }
.cgd-lb__title { flex: 1; font-size: 18px; font-weight: 600; text-transform: uppercase; letter-spacing: .02em; }
.cgd-lb__counter { font-size: 15px; opacity: .7; }
.cgd-lb__close { width: 44px; height: 44px; border: 0; background: none; color: #fff; font-size: 40px; line-height: 1; cursor: pointer; }
.cgd-lb__main { flex: 1; min-height: 0; display: flex; align-items: center; }
.cgd-lb__stage { flex: 1; height: 100%; min-width: 0; display: flex; align-items: center; justify-content: center; padding: 0 10px; }
.cgd-lb__img, .cgd-lb__video { max-width: 100%; max-height: 100%; object-fit: contain; display: block; }
.cgd-lb__video { width: min(100%, 1280px); background: #000; }
.cgd-lb__embed { width: min(100%, calc((100vh - 220px) * 16 / 9), 1280px); aspect-ratio: 16 / 9; }
.cgd-lb__embed iframe { width: 100%; height: 100%; border: 0; display: block; }
.cgd-lb__nav { flex: none; width: 64px; height: 100px; border: 0; background: none; color: #fff; font-size: 64px; line-height: 1; cursor: pointer; opacity: .7; transition: opacity .2s; }
.cgd-lb__nav:hover { opacity: 1; }
.cgd-lb__thumbs { display: flex; justify-content: flex-start; gap: 8px; padding: 14px 20px 20px; overflow-x: auto; }
.cgd-lb__thumbs:empty { display: none; }
.cgd-lb__thumb:first-child { margin-left: auto; }
.cgd-lb__thumb:last-child { margin-right: auto; }
.cgd-lb__thumb { position: relative; flex: none; width: 76px; height: 52px; border: 2px solid transparent; border-radius: 4px; background: #333 center / cover no-repeat; cursor: pointer; opacity: .55; padding: 0; transition: opacity .2s; }
.cgd-lb__thumb.is-active, .cgd-lb__thumb:hover { opacity: 1; border-color: #f50303; }
.cgd-lb__thumb.is-video::after { content: '▶'; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 18px; background: rgba(0,0,0,.45); }
.cgd-lb__projects { display: flex; justify-content: space-between; gap: 20px; padding: 0 20px 18px; }
.cgd-lb__proj { display: flex; align-items: center; gap: 12px; max-width: 45%; padding: 8px 10px; border: 0; border-radius: 6px; background: none; color: #fff; font-family: inherit; text-align: left; cursor: pointer; opacity: .75; transition: opacity .2s, background .2s; }
.cgd-lb__proj:hover, .cgd-lb__proj:focus-visible { opacity: 1; background: rgba(255,255,255,.08); }
.cgd-lb__proj-next { margin-left: auto; text-align: right; }
.cgd-lb__proj-arrow { flex: none; font-size: 28px; line-height: 1; }
.cgd-lb__proj-text { min-width: 0; }
.cgd-lb__proj-text small { display: block; font-size: 12px; opacity: .65; text-transform: uppercase; letter-spacing: .05em; }
.cgd-lb__proj-text b { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 15px; font-weight: 600; text-transform: uppercase; }
@media (max-width: 640px) {
	.cgd-lb__top { padding: 10px 10px 6px 16px; }
	.cgd-lb__title { font-size: 14px; }
	.cgd-lb__nav { display: none !important; }
	.cgd-lb__stage { padding: 0; }
	.cgd-lb__thumb { width: 56px; height: 40px; }
	.cgd-lb__projects { padding: 0 8px 12px; gap: 8px; }
	.cgd-lb__proj { max-width: 50%; padding: 6px; gap: 6px; }
	.cgd-lb__proj-text b { font-size: 12px; }
	.cgd-lb__proj-text small { font-size: 10px; }
}
