/* Внутренние страницы: продолжение главной. Тёмная тёплая основа, «листы» бумаги для текста, латунная этикетка с заголовком.
   Оформление простое: особые приёмы каждой страницы (постановка, раздел 4) лягут поверх этих же блоков и классов. */

/* ---------- этикетка страницы: H1 на бумажном ярлыке в латунной рамке, под ним хлебные крошки ---------- */
.plaque{padding:clamp(24px,5vw,54px) var(--pad) clamp(16px,2.6vw,28px);display:flex;flex-direction:column;align-items:center;text-align:center;background:linear-gradient(var(--bg2),var(--bg))}
.plaque-card{position:relative;max-width:min(920px,100%);padding:16px 34px 18px;color:var(--ink);background:linear-gradient(175deg,#f3e6c4,#e6d5aa);border:2px solid #c59a4a;box-shadow:0 0 0 1px #5f4016,inset 0 0 0 1px rgba(90,58,30,.28),0 10px 22px rgba(0,0,0,.5)}
.plaque-card::before,.plaque-card::after{content:"";position:absolute;top:50%;width:9px;height:9px;margin-top:-4.5px;border-radius:50%;background:radial-gradient(circle at 36% 30%,#ffe9b4 0%,#f0be62 30%,#9a6a22 100%);box-shadow:0 0 0 1px #4a2f12}
.plaque-card::before{left:10px}.plaque-card::after{right:10px}
.plaque-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.9rem,7.4vw,3.3rem);line-height:1.04;color:#160d04;overflow-wrap:break-word}
.crumbs{margin-top:16px;font-size:1rem;line-height:1.4;color:var(--bone2)}
.crumbs a{color:var(--gold);border-bottom:1px solid rgba(240,190,98,.35)}
.crumbs i{font-style:normal;color:var(--bone2);padding:0 3px}
.crumbs i:last-child{display:none}      /* у записей крошки кончаются знаком » без текста (так у них в разметке) - последний знак не показываем */

/* ---------- общие блоки ---------- */
.sec{padding:clamp(26px,5vw,60px) 0}
.sec+.sec{padding-top:0}
.narrow{max-width:calc(820px + 2 * var(--pad))}
.center{text-align:center}
.paper{position:relative;background:var(--paper-bg);color:var(--ink);padding:clamp(22px,4.6vw,54px) clamp(18px,4.6vw,56px);box-shadow:0 18px 36px rgba(0,0,0,.5)}
.prose{font-size:1.06rem;line-height:1.62}
.prose>*{max-width:68ch}
.prose>*+*{margin-top:.9em}
.prose h2{font-size:clamp(1.7rem,5.6vw,2.5rem);line-height:1.08;margin-top:0;overflow-wrap:break-word}
.prose *+h2{margin-top:1.3em}
.prose h3{font-size:clamp(1.42rem,4.6vw,1.9rem);line-height:1.14}
.prose *+h3{margin-top:1.25em}
.prose h4{font-family:var(--serif);font-size:1.3rem;font-weight:600;line-height:1.2}
.prose h5{font-family:var(--text);font-size:1.06rem;font-weight:700;line-height:1.3}
.prose strong{font-weight:700}
.prose a{color:#5b1d0e;border-bottom:1px solid currentColor}
.prose a.btn{color:#2a1a08;border:1px solid #5a3a1e}
.prose a.btn:hover{color:#f1e8d2}
.prose ul{padding-left:1.25em}
.prose li+li{margin-top:.3em}
.prose li::marker{color:#8a4b12}
.prose blockquote{padding:.2em 0 .2em 1em;border-left:2px solid #8a4b12;font-family:var(--serif);font-size:1.3rem;line-height:1.4}
.prose .fig,.prose .strip,.prose .vid,.prose .tbl{max-width:none}
.lead{font-size:1.14rem;line-height:1.56;max-width:68ch}
.center .lead{margin-left:auto;margin-right:auto}
.act{margin-top:1.3em}
.sec-h{font-size:clamp(2rem,8vw,3.1rem);color:var(--bone);margin-bottom:.55em}
.sec-h3{font-family:var(--serif);font-weight:500;font-size:clamp(1.7rem,6vw,2.5rem);line-height:1.1;color:var(--bone);margin-bottom:.6em}
.paper .btn{white-space:normal;text-align:center}
.paper .btn:not(.ink){color:#2a1a08;border-color:#5a3a1e}
.paper .btn:not(.ink):hover{background:#2a1a08;color:#f1e8d2;border-color:#2a1a08}

/* картинки, ленты фото, ролики */
.fig{display:block}
.fig img,.fig .ph{display:block;width:100%;height:auto}
.fig img{border:1px solid rgba(240,190,98,.42);padding:5px;background:var(--bg2)}
.paper .fig img{border-color:var(--pline);background:rgba(255,248,226,.4)}
.fig figcaption{margin-top:6px;font-style:italic;font-size:.98rem}
.ph{position:relative;display:block;cursor:zoom-in}
.strip{display:grid;grid-auto-flow:column;grid-auto-columns:min(74%,290px);gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding-bottom:10px;scrollbar-width:thin;scrollbar-color:#c9923a transparent}
.strip .ph{scroll-snap-align:start;display:flex;flex-direction:column;background:var(--bg2);border:1px solid rgba(240,190,98,.42);padding:5px}
.strip img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.paper .strip .ph{border-color:var(--pline);background:rgba(255,248,226,.4)}
.ph-cap{display:block;padding:6px 2px 2px;font-size:.94rem;line-height:1.3;color:var(--bone);font-style:italic}
.paper .ph-cap{color:#33240f}
.vid{position:relative;border:1px solid rgba(240,190,98,.5);padding:6px;background:#0b0906}
.vid video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#0b0906;object-fit:contain}
.paper .vid{border-color:#5a3a1e;background:#1c1206}

/* таблица условий */
.tbl{width:100%;border-collapse:collapse;font-size:1rem;line-height:1.4}
.tbl td{padding:9px 0;border-top:1px solid var(--pline);vertical-align:top}
.tbl tr:last-child td{border-bottom:1px solid var(--pline)}
.tbl .k{width:42%;padding-right:14px;font-style:italic;color:var(--ink2)}

/* в узком листе (карточка программы, телефон) строка таблицы складывается: подпись над значением */
.prog{container-type:inline-size}
@container (max-width:430px){
  .tbl td{display:block;width:auto;padding:0}
  .tbl .k{width:auto;padding:9px 0 1px;font-size:.96rem}
  .tbl .v{border-top:0;padding-bottom:9px}
  .tbl tr:last-child .k{border-bottom:0}
}

/* две колонки: текст и картинка */
.duo{display:grid;gap:22px;align-items:center}
.duo-f{min-width:0}
.sec-duo .duo-t{min-width:0}

/* свёрнутое («Показать еще», «Загрузить еще»): весь текст в коде; без скриптов раскрыто */
.js .more:not(.open){display:none}
.more{margin-top:var(--gap,18px)}
.more-act{text-align:center;margin-top:26px}
.more-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--text);font-size:.92rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);padding:13px 26px;border:1px solid var(--gold-d);transition:background .3s,color .3s}
.more-btn::after{content:"";width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .3s}
.more-btn[aria-expanded=true]::after{transform:rotate(-135deg) translate(-2px,-2px)}
.more-btn:hover{background:var(--gold);color:#1a1206}
html:not(.js) .more-act{display:none}

/* призыв «Хотите посетить наш музей?» */
.cta-visit{padding:clamp(26px,5vw,56px) 0}
.cta-in{display:grid;gap:18px;align-items:center}
.cta-in::before{content:"";grid-column:1/-1;height:1px;background:linear-gradient(90deg,rgba(240,190,98,0),rgba(240,190,98,.7) 18%,rgba(240,190,98,.7) 82%,rgba(240,190,98,0));margin-bottom:8px}
.cta-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.8rem,6.6vw,2.7rem);line-height:1.08;color:var(--bone)}
.cta-t p{margin-top:10px;font-size:1.1rem;line-height:1.5}
.cta-t a{color:var(--gold);border-bottom:1px solid rgba(240,190,98,.45)}

/* схема на месте карты */
.map-stub{position:relative;min-height:400px;border:1px solid rgba(240,190,98,.5);overflow:hidden;background:#e4d3a8;display:flex;align-items:flex-end}
.map-art{position:absolute;inset:0;width:100%;height:100%}
.map-card{position:relative;margin:14px;padding:18px 20px 20px;max-width:340px;background:linear-gradient(175deg,#f3e6c4,#e6d5aa);color:var(--ink);border:1px solid #5a3a1e;box-shadow:0 8px 18px rgba(40,26,8,.35)}
.map-h{font-family:'Playfair Display','Old Standard TT',Georgia,serif;font-weight:900;font-size:1.16rem;line-height:1.14;letter-spacing:.02em;color:#160d04}
.map-addr{margin-top:8px;font-size:1.04rem;line-height:1.4}
.map-act{margin-top:14px}
.map-bare{min-height:280px}
.sec-map .map-stub{border-left:0;border-right:0;min-height:370px}
.sec-map .map-card{margin-left:var(--pad)}

/* ---------- О музее ---------- */
.sec-tags{padding-top:clamp(30px,5vw,56px);padding-bottom:clamp(26px,5vw,60px)}
.sec-tags .tags{margin-top:0}
.tag-go{display:inline-block;margin-top:12px;font-size:.84rem;letter-spacing:.16em;text-transform:uppercase;color:#4a1a0c;border-bottom:1px solid currentColor}

/* ---------- Экскурсии: каждая программа - отдельный лист ---------- */
.progs{display:grid;gap:18px;--gap:18px}
.prog{display:flex;flex-direction:column;gap:14px;background:var(--paper-bg);color:var(--ink);padding:24px 20px 24px;box-shadow:0 14px 28px rgba(0,0,0,.45);min-width:0}
.prog-h{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,5vw,1.86rem);line-height:1.12;color:#160d04}
h4.prog-h{font-family:var(--text);font-weight:700;font-size:1.02rem;letter-spacing:.14em;line-height:1.3;color:#5b1d0e}
.prog-age{font-family:var(--text);font-style:italic;font-weight:400;font-size:1.08rem;line-height:1.3;color:var(--ink2)}
.prog .orn{margin:0;justify-content:flex-start}
.prog .orn svg{width:150px}
.prog-txt{font-size:1.04rem;line-height:1.56}
.prog-txt p+p{margin-top:.75em}
.prog-ph img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border:1px solid var(--pline)}
.prog-act{margin-top:auto;padding-top:4px}
.prog-act .btn{display:block;text-align:center;white-space:normal}

/* ---------- Для детей ---------- */
.kids{display:grid;gap:clamp(26px,4vw,48px)}
.kid{display:grid;gap:16px;min-width:0}
.kid-t{min-width:0}
.kid-h{font-size:clamp(1.6rem,5.6vw,2.2rem);line-height:1.1;color:#160d04}
.kid-facts{line-height:1.6}

/* ---------- Библиотека ---------- */
.books{display:grid;gap:26px;--gap:26px}
.book-item{display:grid;grid-template-columns:112px minmax(0,1fr);gap:16px;align-items:start;padding-bottom:26px;border-bottom:1px solid var(--line)}
.book-cover img{width:100%;height:auto;border:1px solid rgba(240,190,98,.42);background:var(--bg2);padding:4px}
.book-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.4rem,4.8vw,1.8rem);line-height:1.12;color:var(--bone)}
.book-meta{margin-top:8px;font-size:1.02rem;line-height:1.45;color:var(--bone2)}
.book-meta strong{font-weight:400;font-style:italic;color:var(--gold)}
.book-d{margin-top:8px;font-size:1.04rem;line-height:1.5}
.book-act{margin-top:14px}
.book-act .btn.ink{color:var(--gold);border-color:var(--gold-d)}
.book-act .btn.ink:hover{background:var(--gold);color:#1a1206;border-color:var(--gold)}

/* ---------- Отзывы ---------- */
.rates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rate{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;padding:18px 12px 16px;text-align:center;background:var(--paper-bg);color:var(--ink);box-shadow:0 12px 24px rgba(0,0,0,.45);transition:filter .3s}
.rate:hover{filter:brightness(1.06)}
.rate-logo{height:34px;width:auto;max-width:86%;object-fit:contain;margin-bottom:6px}
.rate-h{font-family:var(--text);font-size:.84rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink2)}
.rate-n{font-family:var(--serif);font-weight:600;font-size:2.1rem;line-height:1;color:#3d2409}
.otz-list{display:grid;gap:14px;--gap:14px}
.otz{background:var(--paper-bg);color:var(--ink);padding:18px 18px 20px;box-shadow:0 10px 20px rgba(0,0,0,.4);break-inside:avoid}
.otz-who{font-family:var(--serif);font-weight:600;font-size:1.2rem;line-height:1.2;color:#160d04}
.otz-date{font-size:.94rem;letter-spacing:.1em;color:#6b4a1c}
.otz-stars{color:#8a4b12;letter-spacing:.2em;font-size:1rem;margin:4px 0 8px}
.otz-t{font-size:1.06rem;line-height:1.56;overflow-wrap:break-word}

/* ---------- Контакты ---------- */
.kont{display:grid;gap:22px}
.kont-lead{font-size:1.1rem;line-height:1.5}
.kont-list{list-style:none;margin-top:16px;display:grid;gap:14px}
.kont-list li{display:flex;gap:14px;align-items:flex-start;font-size:1.1rem;line-height:1.45}
.kont-list .ic{width:24px;height:24px;color:var(--gold);margin-top:.12em}
.kont-list a{color:var(--bone);border-bottom:1px solid rgba(240,190,98,.4)}
.kont-info .soc{margin-top:18px}
.sec-vhod .fig{margin-top:18px}
.sec-ask .lead{margin-bottom:18px}

/* ---------- запись (новость) ---------- */
.plaque-post .plaque-h{font-size:clamp(1.5rem,5vw,2.1rem);letter-spacing:.02em}
.post-wrap{display:grid;gap:36px;padding-bottom:clamp(30px,5vw,60px)}
.post-main{min-width:0}
.post-cats,.clip-cats{display:flex;flex-wrap:wrap;gap:6px}
.post-cats a,.clip-cats a{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;padding:4px 9px;border:1px solid currentColor}
.post-cats a{color:#5b1d0e}
.post-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.9rem,7vw,3rem);line-height:1.06;color:#160d04;margin-top:12px;overflow-wrap:break-word}
.post-meta{margin-top:10px;font-size:.98rem;color:var(--ink2)}
.post-meta a,.post-tags a{color:#5b1d0e;border-bottom:1px solid currentColor}
.post-by{margin-left:8px}
.post-f{position:relative;margin-top:18px}
.post-f img{width:100%;height:auto;border:1px solid var(--pline)}
.post-nof{min-height:58px}
.stamp{position:absolute;left:10px;top:10px;display:grid;justify-items:center;min-width:52px;padding:6px 8px 7px;background:linear-gradient(175deg,#f3e6c4,#e6d5aa);color:#3d2409;border:1px solid #5a3a1e;font-family:var(--text);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;line-height:1.1}
.stamp b{font-family:var(--serif);font-weight:600;font-size:1.5rem;letter-spacing:0;line-height:1}
.post-nof .stamp,.clip-nof .stamp{position:static;display:inline-grid}
.post-body{margin-top:20px}
.post-tags{margin-top:22px;font-size:1rem}
.post-tags span{font-style:italic;color:var(--ink2)}
.share{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:18px}
.share a{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--pline);color:#4a2f14;transition:background .25s,color .25s}
.share a:hover{background:#2a1a08;color:#f1e8d2}
.share .ic{width:20px;height:20px}
.share-l{font-style:italic;color:var(--ink2);margin-right:4px}
.post-nav{display:grid;gap:10px;margin-top:26px}
.post-nav a{display:block;padding:12px 14px;border:1px solid var(--line);color:var(--bone);line-height:1.3;transition:border-color .25s}
.post-nav a:hover{border-color:var(--gold)}
.post-nav span{display:block;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.post-nav b{font-family:var(--serif);font-weight:500;font-size:1.2rem}
.post-nav-l{text-align:center;font-size:.84rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)!important}
.related{margin-top:38px}
.side{min-width:0}
.side-h{font-family:var(--text);font-weight:400;font-size:.82rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:10px}
.side *+.side-h{margin-top:30px}
.side ul{list-style:none}
.side-cats li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;font-size:1.06rem;border-bottom:1px solid rgba(240,190,98,.1)}
.side-cats span{color:var(--bone2)}
.side a:hover{color:var(--gold)}
.side-last li{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;align-items:center;padding:8px 0;font-size:1.02rem;line-height:1.3}
.side-f img{width:78px;height:66px;object-fit:cover;border:1px solid rgba(240,190,98,.35)}
.side-vk{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.side-vk img{width:100%;height:100%;aspect-ratio:1;object-fit:cover}

/* ---------- списки записей: вырезки ---------- */
.clips{display:grid;gap:26px 22px}
.clip{position:relative;display:flex;flex-direction:column;min-width:0;padding-bottom:20px;border-bottom:1px solid var(--line)}
.clip-f{position:relative;display:block}
.clip-f img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(240,190,98,.38)}
.clip-nof{min-height:64px}
.clip-cats{margin-top:12px}
.clip-cats a{color:var(--gold)}
.clip-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.42rem,4.8vw,1.74rem);line-height:1.12;margin-top:10px;overflow-wrap:break-word}
.clip-h a:hover{color:var(--gold)}
.clip-meta{margin-top:8px;font-size:.94rem;color:var(--bone2)}
.clip-by{margin-left:6px}
.clip-by a{border-bottom:1px solid rgba(240,190,98,.35)}
.clip-x{margin-top:10px;font-size:1.04rem;line-height:1.5}
.clip-more{margin-top:auto;padding-top:14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;min-height:54px}
.clip-more>a{font-size:.84rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid rgba(240,190,98,.5)}
.clip-share{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto}
.clip-share summary{list-style:none;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);color:var(--gold);cursor:pointer}
.clip-share summary::-webkit-details-marker{display:none}
.clip-share[open] summary{background:var(--gold);color:#1a1206}
.clip-share .share{margin-top:0}
.clip .share a{border-color:var(--line);color:var(--gold)}
.clip .share a:hover{background:var(--gold);color:#1a1206}
.wa-m{display:none!important}
@media (hover:none) and (pointer:coarse){.share .wa-d{display:none!important}.share .wa-m{display:grid!important}}
.pager{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:36px}
.pager a,.pager span{display:grid;place-items:center;min-width:46px;height:46px;border:1px solid rgba(240,190,98,.5);font-family:var(--serif);font-size:1.3rem;color:var(--gold);transition:background .25s,color .25s}
.pager a:hover{background:var(--gold);color:#1a1206}
.pager span{background:var(--gold);color:#1a1206;font-weight:600}
.list-none{font-size:1.14rem;text-align:center;padding:20px 0}

/* ---------- билеты ---------- */
.note{display:flex;gap:16px;align-items:flex-start;padding:18px 18px 20px;border:1px solid rgba(240,190,98,.5)}
.note>.ic{width:34px;height:34px;color:var(--gold);margin-top:2px}
.note-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.4rem,4.8vw,1.8rem);line-height:1.14;color:var(--bone)}
.note p{margin-top:6px;font-size:1.06rem;line-height:1.5}
.tickets{display:grid;gap:20px}
.ticket{display:flex;flex-direction:column;gap:8px;background:var(--paper-bg);color:var(--ink);padding:16px 16px 18px;box-shadow:0 14px 28px rgba(0,0,0,.45);min-width:0}
.ticket-f img{width:100%;height:auto;mix-blend-mode:multiply}      /* белое поле их картинки билета растворяется в бумаге */
.ticket-h{font-family:var(--serif);font-weight:600;font-size:clamp(1.4rem,4.8vw,1.74rem);line-height:1.12;color:#160d04;margin-top:6px}
.ticket-cat{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink2)}
.ticket-price{font-family:var(--serif);font-weight:600;font-size:1.8rem;line-height:1;color:#5b1d0e}
.ticket-act{margin-top:6px}
.ticket-act .btn{cursor:pointer}
.ticket-more{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.96rem}
.ticket-more a,.prod-wish a,.prod-cat a{color:#5b1d0e;border-bottom:1px solid currentColor}
.prod-top{display:grid;gap:10px;margin-bottom:18px}
.prod-top .crumbs{margin-top:0}
.prod-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.98rem}
.prod-nav a{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--line);color:var(--bone);line-height:1.2}
.prod-nav a:hover{border-color:var(--gold);color:var(--gold)}
.prod-nav b{font-weight:400;color:var(--gold);white-space:nowrap}
.ticket-full{display:grid;gap:20px;padding:clamp(18px,4vw,40px)}
.prod-f img{width:100%;height:auto;mix-blend-mode:multiply}
.prod-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.9rem,7vw,2.9rem);line-height:1.06;color:#160d04}
.prod-t{display:grid;gap:12px;align-content:start;min-width:0}
.prod-short{font-size:1.08rem;line-height:1.5}
.buy{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.qty{display:inline-flex;border:1px solid #5a3a1e}
.qty button{width:42px;font-size:1.3rem;color:#2a1a08}
.qty button:hover{background:rgba(90,58,30,.14)}
.qty input{width:58px;text-align:center;font:inherit;font-size:1.06rem;color:var(--ink);background:rgba(255,248,226,.5);border:0;border-left:1px solid var(--pline);border-right:1px solid var(--pline);border-radius:0;-moz-appearance:textfield;appearance:textfield}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.buy .btn{cursor:pointer}
.buy .frm-msg{flex-basis:100%}
.tabs{margin-top:26px}
.tabs-nav{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line)}
.tabs-nav a{padding:12px 16px 11px;font-size:.84rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bone2);border:1px solid var(--line);border-bottom:0;background:var(--bg2)}
.tabs-nav a.on,.tabs-nav a:hover{color:var(--gold);border-color:rgba(240,190,98,.6)}
.tab-panel{padding:22px 0 8px;color:var(--bone)}
.tab-panel+.tab-panel{border-top:1px solid var(--line)}
.js .tabs.ready .tab-panel:not(.on){display:none}
.js .tabs.ready .tab-panel+.tab-panel{border-top:0}
.tab-panel .prose a:not(.btn){color:var(--gold)}
.tab-panel .prose li::marker{color:var(--gold)}
.tab-panel .btn{color:var(--gold);border-color:var(--gold-d)}
.tab-panel .btn:hover{background:var(--gold);color:#1a1206}
.strip-2,.strip-grid{grid-auto-flow:row;grid-template-columns:1fr 1fr;overflow:visible;padding-bottom:0}

/* ---------- служебные магазина ---------- */
.steps{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px;margin-bottom:24px;font-family:var(--serif);font-size:clamp(1.2rem,4.4vw,1.6rem);color:var(--bone2)}
.steps li+li::before{content:"";display:inline-block;width:22px;height:1px;background:var(--gold-d);vertical-align:middle;margin-right:22px}
.steps .on,.steps .on a{color:var(--gold)}
.cart-empty{font-family:var(--serif);font-weight:500;font-size:clamp(1.5rem,5.4vw,2rem);line-height:1.15;color:#160d04;margin-bottom:10px}
.paper.center p{margin-left:auto;margin-right:auto;max-width:52ch}
.frm-h{font-family:var(--serif);font-weight:600;font-size:1.5rem;color:#160d04;margin-top:6px}
.frm-note{font-size:1rem;line-height:1.45;color:#33240f}
.frm-note a,.frm-link a{color:#5b1d0e;border-bottom:1px solid currentColor}
.acc{display:grid;gap:22px}
.acc-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.7rem,6vw,2.3rem);line-height:1.1;margin-bottom:14px}
.paper .acc-h{color:#160d04}
.acc-or{align-self:center}
.acc-or-w{font-style:italic;color:var(--gold);font-size:1.1rem;margin-bottom:8px}
.acc-or p{font-size:1.06rem;line-height:1.56;max-width:56ch}
.js .acc:not(.reg) .acc-reg{display:none}
.js .acc.reg .acc-login,.js .acc.reg .acc-or{display:none}

/* ---------- итог оплаты ---------- */
.pay{display:grid;gap:20px;align-items:center}
.pay-f img{width:100%;height:auto;mix-blend-mode:multiply}
.pay-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.5rem,5.4vw,2.1rem);line-height:1.14;color:#160d04}
.pay-h+.pay-h{margin-top:6px}
.pay .act{display:flex;flex-wrap:wrap;gap:10px}

/* ---------- 404 ---------- */
.sec-404{padding-top:clamp(40px,8vw,90px)}
.e404-k{font-family:var(--text);font-size:.9rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.e404-h{font-family:var(--serif);font-weight:500;font-size:clamp(2.2rem,9vw,4rem);line-height:1.04;margin:14px 0 16px}
.e404-s{max-width:560px;margin:26px auto 0;text-align:left}
.frm-search{grid-template-columns:minmax(0,1fr) auto;align-items:stretch}
.frm-search .btn{justify-self:stretch}

@media (min-width:700px){
  .progs-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rates{grid-template-columns:repeat(4,minmax(0,1fr))}
  .clips{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tickets{grid-template-columns:repeat(2,minmax(0,1fr))}
  .book-item{grid-template-columns:150px minmax(0,1fr);gap:22px}
  .cta-in{grid-template-columns:minmax(0,1fr) auto}
  .strip{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));overflow:visible;padding-bottom:0}      /* шире телефона лента становится сеткой */
  .post-nav{grid-template-columns:1fr auto 1fr;align-items:stretch}
  .post-nav-l{display:grid!important;place-items:center}
  .post-nav-o{text-align:right}
  .post-nav-l:only-child,.post-nav-n+.post-nav-l:last-child{grid-column:2}
  .post-nav-l:first-child{grid-column:2}
  .pay{grid-template-columns:1fr 1fr}
}
@media (min-width:900px){
  .duo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,3.4vw,54px)}
  .duo[data-side=l] .duo-f{order:-1}
  .duo-t.prose h2{font-size:clamp(1.7rem,2.7vw,2.5rem)}
  .progs-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .prog{padding:30px 28px}
  .kid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(22px,3vw,44px);align-items:center}
  .kid:nth-child(even) .kid-t{order:2}
  .kid-ph{grid-auto-flow:row;grid-template-columns:1fr 1fr;overflow:visible;padding-bottom:0}
  .books{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 44px}
  .otz-list{display:block;columns:2;column-gap:18px}
  .otz{margin-bottom:18px}
  .kont{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:clamp(26px,4vw,60px);align-items:start}
  .kont-map .map-stub{min-height:440px}
  .ticket-full{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(22px,3.4vw,50px);align-items:start}
  .acc{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(26px,4vw,60px)}
  .strip-3{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}
  .strip-3 img{aspect-ratio:3/4}
  .map-bare{min-height:400px}
  .tickets-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1100px){
  .progs-3,.progs-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .post-wrap{grid-template-columns:minmax(0,1fr) 300px;gap:clamp(30px,3.6vw,56px);align-items:start}
  .clips{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 30px}
  .clips-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tickets{grid-template-columns:repeat(4,minmax(0,1fr))}
  .tickets-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sec-tags .tags{grid-template-columns:repeat(4,minmax(0,1fr))}
}
