/*
Theme Name: Новый год
Theme URI: https://new-year.co.il/
Author: WEBTIME
Description: Кастомная тема сайта new-year.co.il по макету «New Year 2027» (Главная · вариант 2, меню «Ёлочка над пунктом»).
Version: 1.8.6
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: new-year
*/

/* =========================================================================
   Шрифты — локально, не с CDN Google: часть аудитории в Израиле сидит
   через фильтры. Golos Text вариативный, один файл на 400–700.
   ========================================================================= */

@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/golos-text-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/golos-text-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Marck Script';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/marck-script-400-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Marck Script';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/marck-script-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Philosopher';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/philosopher-400-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Philosopher';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/philosopher-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Philosopher';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/philosopher-700-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Philosopher';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/philosopher-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* latin-ext нужен ради знака шекеля ₪ (U+20AA) */
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/golos-text-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Philosopher';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/philosopher-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Philosopher';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/philosopher-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}

/* =========================================================================
   Токены — из ТЗ верстальщику, раздел 3. Новые оттенки только производные.
   ========================================================================= */

:root{
	--bg:#000c2a;
	--panel:#011d32;
	--panel-2:#05263f;
	--ink:#fffbd2;
	--h1:#c1f782;
	--h2:#82fff2;
	--accent:#f5e054;
	--gold:#e8c96a;
	--alert:#f5546b;
	--link:#82bdff;

	--ink-soft:rgba(255,251,210,.8);
	--ink-mute:rgba(255,251,210,.7);
	--line:rgba(232,201,106,.22);
	--line-strong:rgba(232,201,106,.35);
	--row:rgba(255,251,210,.12);
	--card:rgba(1,29,50,.72);
	--card-hover:rgba(5,38,63,.9);

	--disp:'Philosopher','Times New Roman',serif;
	--body:'Golos Text','Segoe UI',Arial,sans-serif;
	--hand:'Marck Script','Segoe Script',cursive;

	--wrap:1200px;
	--gap:24px;
}

*,*::before,*::after{box-sizing:border-box}

/* Атрибут hidden сильнее любых display из компонентов */
[hidden]{display:none !important}

html{overflow-x:clip}

body{
	margin:0;
	overflow-x:clip;
	background:var(--bg);
	color:var(--ink);
	font-family:var(--body);
	font-size:17px;
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
}

img{max-width:100%;height:auto}
a{color:var(--link);text-decoration:none}
a:hover{color:var(--h2);text-decoration:underline}
:focus-visible{outline:2px solid var(--h2);outline-offset:2px}
::selection{background:var(--accent);color:var(--bg)}
p{text-wrap:pretty}

.wrap{max-width:calc(var(--wrap) + 32px);margin:0 auto;padding-inline:16px}

.skip-link{position:absolute;left:16px;top:-60px;z-index:100;padding:12px 18px;background:var(--accent);color:var(--bg);font-weight:600}
.skip-link:focus{top:16px}

.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* --- Заголовки --- */
h1,h2,h3,h4{font-family:var(--disp);font-weight:700;text-wrap:balance;margin:0 0 .5em}
h1{font-size:clamp(36px,6vw,50px);line-height:1.06;letter-spacing:-.4px;color:var(--h1)}
h2{font-size:clamp(28px,4vw,34px);line-height:1.15;color:var(--h2)}
h3{font-size:24px;line-height:1.2;color:var(--h2)}
h4{font-size:18px;color:var(--ink);font-family:var(--body);font-weight:600}
strong{color:var(--accent);font-weight:600}

.kicker{margin:0;font-family:var(--hand);font-size:26px;line-height:1.1;color:var(--gold)}

.entry-content{max-width:68ch}
.entry-content p{margin:0 0 1.1em}

/* Золотая линия-градиент — перенос images/date.png */
.rule{height:2px;border:0;margin:22px 0 20px;max-width:420px;background:linear-gradient(90deg,var(--accent),rgba(245,224,84,0))}
.rule--wide{max-width:none;background:linear-gradient(90deg,rgba(232,201,106,0),var(--gold) 50%,rgba(232,201,106,0))}

/* =========================================================================
   Снег — CSS на трансформах, без JS (ТЗ, раздел 9)
   ========================================================================= */

@keyframes ny-snow-a{from{transform:translate3d(0,-620px,0)}to{transform:translate3d(-40px,0,0)}}
@keyframes ny-snow-b{from{transform:translate3d(0,-900px,0)}to{transform:translate3d(60px,0,0)}}

.snow{position:fixed;pointer-events:none;will-change:transform}
.snow--a{
	inset:-200px 0 0 0;z-index:40;opacity:.5;
	background-image:
		radial-gradient(circle at 12% 8%,#fff 0 1.6px,transparent 2px),
		radial-gradient(circle at 38% 22%,#fff 0 2.2px,transparent 3px),
		radial-gradient(circle at 64% 12%,#fff 0 1.4px,transparent 2px),
		radial-gradient(circle at 86% 30%,#fff 0 2px,transparent 3px),
		radial-gradient(circle at 24% 46%,#fff 0 1.6px,transparent 2px),
		radial-gradient(circle at 52% 62%,#fff 0 2.2px,transparent 3px),
		radial-gradient(circle at 78% 54%,#fff 0 1.4px,transparent 2px),
		radial-gradient(circle at 6% 76%,#fff 0 2px,transparent 3px);
	background-size:620px 620px;
	animation:ny-snow-a 16s linear infinite;
}
.snow--b{
	inset:-300px 0 0 0;z-index:41;opacity:.32;
	background-image:
		radial-gradient(circle at 20% 14%,#fff 0 1.2px,transparent 2px),
		radial-gradient(circle at 58% 36%,#fff 0 1.6px,transparent 2px),
		radial-gradient(circle at 88% 18%,#fff 0 1.2px,transparent 2px),
		radial-gradient(circle at 34% 70%,#fff 0 1.6px,transparent 2px),
		radial-gradient(circle at 72% 84%,#fff 0 1.2px,transparent 2px);
	background-size:900px 900px;
	animation:ny-snow-b 26s linear infinite;
}

/* =========================================================================
   Кнопки — три типа из UI-кита
   ========================================================================= */

.btn{
	display:inline-flex;align-items:center;justify-content:center;
	min-height:48px;padding:13px 22px;
	font:inherit;font-size:17px;font-weight:600;line-height:1.2;text-align:center;
	color:var(--bg);background:var(--accent);border:1px solid var(--accent);
	cursor:pointer;text-decoration:none;
}
.btn:hover{background:var(--ink);border-color:var(--ink);color:var(--bg);text-decoration:none}
.btn:active{background:#d9c548;border-color:#d9c548}
.btn[disabled],.btn.is-disabled{opacity:.45;cursor:not-allowed}

.btn--lg{min-height:52px;padding:15px 26px}

/* Вторичная: бирюзовая обводка */
.btn--secondary{background:transparent;color:var(--h2);border-color:rgba(130,255,242,.55)}
.btn--secondary:hover{background:rgba(130,255,242,.12);border-color:var(--h2);color:var(--h2)}

/* Прозрачная поверх фона — вторая кнопка героя */
.btn--ghost{background:rgba(0,12,42,.55);color:var(--ink);border-color:rgba(255,251,210,.35)}
.btn--ghost:hover{background:rgba(0,12,42,.55);border-color:var(--h2);color:var(--h2)}

/* Кнопка-обводка в строках афиши */
.btn--line{min-height:44px;padding:10px 18px;font-size:16px;background:transparent;color:var(--h1);border-color:rgba(193,247,130,.5)}

/* =========================================================================
   Шапка
   ========================================================================= */

.notice-draft{position:relative;margin:0;padding:8px 16px;background:var(--alert);color:#fff;text-align:center;font-size:15px;font-weight:600}
.notice-draft a{color:#fff;text-decoration:underline}

.site-header{position:relative;z-index:50;padding-top:22px}
.site-header__top{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.site-header__spacer{flex:1 1 20px}
/* Баннер в шапке: между логотипом и кнопкой; уже 1280 — отдельной строкой под ними */
.site-header__ad{display:flex;justify-content:center;min-width:0}
.site-header .ad-slot--header{width:100%;max-width:728px;margin:0;padding:0;border:0}
.site-header .ad-slot--header .ad-slot__label{margin-bottom:4px;font-size:10px;line-height:1}
.site-header .ad-slot--header .ad-slot__box{min-height:0}
@media (max-width:1279px){
	.site-header__ad{order:10;flex:1 1 100%}
	.site-header__cta,.nav-toggle{margin-left:auto}
}
@media (max-width:767px){
	.site-header .ad-slot--header{max-width:360px}
}
.site-logo{display:flex;align-items:center}
.site-logo img{display:block;width:178px;height:auto}

.nav-toggle{
	display:none;width:48px;height:48px;padding:0 12px;
	align-content:center;gap:5px;
	background:var(--panel-2);border:1px solid rgba(232,201,106,.55);border-radius:4px;cursor:pointer;
}
.nav-toggle span{display:block;height:2px;background:var(--ink);transition:transform .2s,opacity .2s}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Меню «Ёлочка над пунктом»: без плашек, ёлочка 16 px слева,
   подчёркивание 2 px золотом при наведении и на активном пункте */
.main-nav ul{
	display:flex;flex-wrap:wrap;gap:4px 18px;
	list-style:none;margin:22px 0 0;padding:0;
	border-bottom:1px solid var(--line-strong);
}
.main-nav li > a{
	position:relative;display:inline-flex;align-items:center;min-height:48px;
	padding:14px 10px 16px 26px;
	font-size:17px;font-weight:500;white-space:nowrap;color:var(--ink);text-decoration:none;
}
.main-nav li > a::before{
	content:"";position:absolute;left:2px;top:50%;width:16px;height:16px;margin-top:-8px;
	background:var(--h1);
	clip-path:polygon(50% 0,68% 40%,58% 40%,80% 78%,56% 78%,56% 100%,44% 100%,44% 78%,20% 78%,42% 40%,32% 40%);
}
.main-nav li > a:hover,
.main-nav .current-menu-item > a,
.main-nav .current-menu-ancestor > a{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);text-decoration:none}

/* =========================================================================
   Главная: сцена с ёлкой во всю ширину окна
   ========================================================================= */

.stage{position:relative;margin-top:16px}
.stage__bg{position:absolute;top:0;left:0;width:100%;pointer-events:none}
.stage__bg img{display:block;width:100%;height:auto}
.stage__fade{
	position:absolute;top:0;left:0;width:100%;aspect-ratio:1920/1000;pointer-events:none;
	background:linear-gradient(180deg,rgba(0,12,42,0) 58%,rgba(0,12,42,.4) 82%,var(--bg) 100%);
}
.stage__in{position:relative;z-index:1}

.hero{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-end;min-height:420px}
.hero__spacer{flex:1 1 260px;min-height:200px}
.hero__card{
	flex:3 1 520px;min-width:0;padding:132px 24px 40px;
	background:radial-gradient(145% 135% at 80% 45%,rgba(0,12,42,.9) 0%,rgba(0,12,42,.72) 40%,rgba(0,12,42,.3) 75%,rgba(0,12,42,0) 100%);
}
.hero .kicker{font-size:34px;line-height:1}
.hero h1{
	margin:10px 0 0;font-size:clamp(46px,7vw,64px);line-height:1.02;letter-spacing:-.5px;
	text-shadow:0 2px 24px rgba(0,12,42,.85);
}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

/* Счётчик — разметка из шорткода [ny_countdown] */
.ny-countdown__label{display:block;margin:0 0 12px;font-size:19px;color:var(--ink)}
.ny-countdown__units{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 28px}
.ny-countdown__unit{display:flex;align-items:baseline;gap:8px}
.ny-countdown__unit b{
	font-family:var(--disp);font-size:58px;font-weight:700;line-height:1;color:var(--alert);
	font-variant-numeric:tabular-nums;text-shadow:0 2px 18px rgba(0,12,42,.9);
}
.ny-countdown__unit i{font-style:normal;font-size:17px;color:var(--ink)}

/* Полоса с цифрами портала */
.stats{display:flex;flex-wrap:wrap;margin-top:40px;border-top:1px solid rgba(232,201,106,.3);border-bottom:1px solid rgba(232,201,106,.3)}
.stats__item{flex:1 1 200px;min-width:0;padding:20px 24px;border-right:1px solid rgba(232,201,106,.18)}
.stats__item:last-child{border-right:0}
.stats__num{margin:0;font-family:var(--disp);font-size:34px;line-height:1.3;color:var(--h2)}
.stats__num--hand{font-family:var(--hand);font-size:30px;color:var(--gold)}
.stats__label{margin:4px 0 0;font-size:16px;color:var(--ink-soft)}

/* =========================================================================
   Секции
   ========================================================================= */

.section{margin-top:48px}
.section__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:14px}
.section__head h2{margin:0}
.section__note{font-size:16px;color:var(--ink-mute)}

/* Главная статья сезона на главной */
.feature{display:flex;flex-wrap:wrap;gap:24px 32px;align-items:center;margin-top:40px;padding:32px;background:radial-gradient(120% 140% at 0% 0%,rgba(232,201,106,.14),transparent 55%),linear-gradient(160deg,rgba(5,38,63,.95),rgba(1,29,50,.9));border:1px solid var(--gold);box-shadow:0 0 40px rgba(232,201,106,.15)}
.feature__icon{display:grid;place-items:center;flex:0 0 120px;height:120px;border:1px solid var(--gold);border-radius:50%;background:var(--panel)}
.feature__icon svg{width:64px;height:64px}
.feature__body{flex:1 1 420px;min-width:0;display:grid;gap:12px;justify-items:start}
.feature .kicker{font-size:26px}
.feature__title{margin:0;font-size:clamp(32px,4.5vw,44px);line-height:1.1}
.feature__title a{color:var(--h1);text-decoration:none}
.feature__title a:hover{color:var(--ink);text-decoration:none}
.feature__lead{margin:0;max-width:720px;font-size:18px;line-height:1.6}
.feature__chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 6px;padding:0;list-style:none}
.entry-content h2[id]{scroll-margin-top:24px}
@media (max-width:767px){
	.feature{padding:24px 20px}
	.feature__icon{flex-basis:84px;height:84px}
	.feature__icon svg{width:46px;height:46px}
}

/* Блок статьи с Огненной козой: картинка справа, затемнение слева под текст */
.feature--art{position:relative;overflow:hidden;display:block;min-height:440px;padding:48px 40px;background:var(--bg)}
.feature--art .feature__art{position:absolute;inset:0}
.feature--art .feature__art img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
.feature--art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,12,42,.96) 0%,rgba(0,12,42,.88) 38%,rgba(0,12,42,.25) 68%,rgba(0,12,42,0) 85%);pointer-events:none}
.feature--art .feature__body{position:relative;z-index:1;max-width:600px}
.feature__actions{display:flex;flex-wrap:wrap;gap:12px}

/* Выделенное мероприятие: билеты на встречу Нового года */
.show-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:0;margin-top:40px;background:linear-gradient(160deg,rgba(5,38,63,.95),rgba(1,29,50,.92));border:1px solid var(--gold);box-shadow:0 0 40px rgba(232,201,106,.15)}
.show-feature__media{display:block;background:#000}
.show-feature__media img{display:block;width:100%;height:100%;object-fit:cover}
.show-feature__body{display:grid;align-content:center;gap:12px;padding:28px 32px}
.show-feature .kicker{font-size:26px}
.show-feature__title{margin:0;font-size:clamp(24px,3vw,32px);line-height:1.2}
.show-feature__title a{color:var(--h1);text-decoration:none}
.show-feature__title a:hover{color:var(--ink);text-decoration:none}
.show-feature__where{margin:0;font-size:17px;color:var(--ink-soft)}
.show-feature__seances{display:grid;gap:0;margin:4px 0 0;padding:0;list-style:none;border-top:1px solid var(--row)}
.show-feature__seances li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:12px 0;border-bottom:1px solid var(--row)}
.show-feature__time{flex:0 0 150px;font-family:var(--hand);font-size:22px;color:var(--gold)}
.show-feature__hall{flex:1 1 160px;min-width:0;font-size:16px}
.show-feature__price{flex:0 0 auto;font-size:17px;color:var(--accent)}
.show-feature__seances .btn{min-height:44px;padding:10px 18px;font-size:16px}
.show-feature .lead-form__note{margin:0}

@media (min-width:901px){
	/* Компьютер: афиша целиком (не обрезаем края), пустое поле — размытая копия той же картинки */
	.show-feature{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
	.show-feature__media{position:relative;display:grid;place-items:center;overflow:hidden}
	.show-feature__media::before{content:"";position:absolute;inset:-30px;background:var(--show-img) center/cover no-repeat;filter:blur(22px) brightness(.45)}
	.show-feature__media img{position:relative;height:auto;object-fit:contain}
}
@media (max-width:900px){
	.show-feature{grid-template-columns:1fr}
	.show-feature__media img{height:auto;aspect-ratio:3/2}
}
@media (max-width:767px){
	.feature--art{padding:0;min-height:0;display:flex;flex-direction:column}
	.feature--art .feature__art{position:static}
	.feature--art .feature__art img{height:auto;aspect-ratio:1}
	.feature--art::after{display:none}
	.feature--art .feature__body{padding:22px 20px 26px}
	.show-feature__body{padding:22px 20px}
	.show-feature__time{flex-basis:100%}
}

/* Плитки разделов */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--gap);margin-top:24px}
.tile{
	display:grid;align-content:start;gap:10px;padding:24px;
	background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none;
}
.tile:hover{background:var(--card-hover);border-color:var(--h2);color:var(--ink);text-decoration:none}
.tile__icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--gold);border-radius:50%}
.tile__icon svg{width:28px;height:28px}
.tile__icon:has(img){width:84px;height:84px;border:0}
.tile__icon img{width:100%;height:100%;transition:transform .3s}
.tile:hover .tile__icon img{transform:scale(1.06)}
.tile__title{font-family:var(--disp);font-size:24px;line-height:1.2;color:var(--h2)}
.tile__text{font-size:17px;line-height:1.6}

.tile--lead{
	grid-column:1/-1;align-content:end;gap:12px;min-height:300px;padding:28px;
	background:
		linear-gradient(200deg,rgba(1,29,50,.2) 0%,rgba(0,12,42,.92) 70%),
		url(assets/img/bg-desktop.webp) right 30% / cover no-repeat;
	border-color:var(--line-strong);
}
.tile--lead:hover{border-color:var(--accent)}
.tile--lead .kicker{font-size:24px}
.tile--lead .tile__title{font-size:34px;color:var(--h1)}
.tile--lead .tile__text{max-width:520px}
.tile__more{font-size:17px;color:var(--accent)}

/* Списки строками: афиша, статьи */
.rows{margin-top:20px;border-top:1px solid rgba(232,201,106,.3)}
.event-row{
	display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding:20px 4px;
	border-bottom:1px solid var(--row);color:var(--ink);text-decoration:none;
}
.event-row:hover{background:rgba(5,38,63,.55);color:var(--ink);text-decoration:none}
.event-row__date{flex:0 0 130px;font-family:var(--hand);font-size:26px;line-height:1.2;color:var(--gold)}
.event-row__main{flex:3 1 260px;min-width:0}
.event-row__title{display:block;font-family:var(--disp);font-size:24px;line-height:1.25}
.event-row__venue{display:block;font-size:16px;color:var(--ink-mute)}
.event-row__price{flex:0 0 110px;font-size:17px;color:var(--accent)}
.event-row:hover .btn--line{border-color:var(--h1)}

.split{display:flex;flex-wrap:wrap;gap:var(--gap);align-items:stretch}
.split__main{flex:2 1 420px;min-width:0}
.split__main h2{margin:0 0 20px}
.split__side{flex:1 1 280px;min-width:0}

.reads{display:grid;gap:14px}
.read-row{
	display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 20px;padding:16px 0;
	border-bottom:1px solid var(--row);color:var(--ink);text-decoration:none;
}
.read-row:hover{text-decoration:none;color:var(--ink)}
.read-row:hover .read-row__title{color:var(--h2)}
.read-row__kicker{flex:0 0 110px;font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--gold)}
.read-row__main{flex:1 1 240px;min-width:0}
.read-row__title{display:block;font-family:var(--disp);font-size:23px;line-height:1.25}
.read-row__lead{display:block;margin-top:4px;font-size:17px;line-height:1.6;color:rgba(255,251,210,.75)}

/* Панель «Рекламодателям» */
.promo{display:grid;align-content:start;gap:16px;height:100%;padding:26px;background:rgba(1,29,50,.8);border:1px solid rgba(232,201,106,.4)}
.promo p{margin:0}
.promo__title{font-family:var(--disp);font-size:28px;line-height:1.2;color:var(--h1)}
.promo .btn{justify-self:start}

/* Рекламный слот: подпись «Реклама» и фиксированная высота до загрузки (CLS) */
.ad-slot{margin-top:40px;padding:10px;border:1px dashed rgba(232,201,106,.3)}
.ad-slot__label{margin-bottom:8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,251,210,.6)}
.ad-slot__box{max-width:728px;min-height:90px;margin:0 auto}
.ad-slot__box a{display:block}
.ad-slot__box img{display:block;width:100%;height:auto}
.ad-slot--rubric-top{margin:24px 0 0}
.ad-slot--home{margin-top:40px}

/* =========================================================================
   Карточки и сетки внутренних шаблонов (будут доведены на шагах 2–3)
   ========================================================================= */

.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--gap);list-style:none;margin:0;padding:0}

.card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line)}
.card:hover{background:var(--card-hover);border-color:var(--h2)}
.card__media{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--panel-2)}
.card__media img{width:100%;height:100%;object-fit:cover}
.card__body{display:flex;flex:1;flex-direction:column;gap:8px;padding:18px 18px 20px}
.card__title{margin:0;font-family:var(--disp);font-size:22px;line-height:1.25}
.card__title a{color:var(--h2)}
.card__meta{margin:0;font-size:15px;color:var(--ink-mute)}
.card__excerpt{margin:0;font-size:16px;color:var(--ink-soft)}
.card__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px}

.price{font-family:var(--disp);font-size:22px;color:var(--accent);font-variant-numeric:tabular-nums}

.slot-free{display:grid;align-content:center;justify-items:center;gap:12px;padding:26px 22px;text-align:center;border:1px dashed rgba(232,201,106,.45)}
.slot-free h3{margin:0;color:var(--h1)}
.slot-free p{margin:0;font-size:16px}

.pager{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.pager .page-numbers{display:inline-grid;place-items:center;min-width:44px;min-height:44px;padding:0 14px;border:1px solid var(--line-strong);color:var(--ink);text-decoration:none}
.pager .page-numbers.current{background:var(--accent);border-color:var(--accent);color:var(--bg)}
.pager{justify-content:center;margin-top:32px}
.pager .page-numbers{border-color:rgba(130,255,242,.35)}
.pager a.page-numbers:hover{border-color:var(--h2);color:var(--h2);text-decoration:none}
.pager .page-numbers.current{font-weight:600}
.pager .dots{border:0}

/* =========================================================================
   Внутренние страницы: крошки, шапка страницы, фильтр
   ========================================================================= */

.crumbs{margin-top:26px;font-size:15px;color:var(--ink-mute)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:4px 0;margin:0;padding:0;list-style:none}
.crumbs li+li::before{content:"›";margin:0 8px;color:var(--gold)}
.crumbs a{display:inline-block;padding-block:2px}

.page-head{margin-top:14px}
.page-head .kicker{font-size:28px}
.page-head h1{margin:4px 0 0;text-wrap:pretty}
.page-head .rule{margin:18px 0 20px}
.lede{max-width:760px;margin:0 0 24px;font-size:17px;line-height:1.65}

.filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:16px;background:rgba(1,29,50,.8);border:1px solid rgba(232,201,106,.28)}
.filter__label{margin-right:4px;font-size:15px;color:rgba(255,251,210,.75)}

/* Чипсы фильтров — капсулы из UI-кита */
.chip{
	display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;
	font-size:16px;line-height:1.2;color:var(--ink);text-decoration:none;
	border:1px solid rgba(130,255,242,.4);border-radius:999px;
}
.chip:hover{border-color:var(--h2);color:var(--h2);text-decoration:none}
.chip.is-active{background:var(--accent);border-color:var(--accent);color:var(--bg)}

/* Пустое состояние */
.empty{margin-top:24px;padding:46px 24px;text-align:center;background:rgba(1,29,50,.7);border:1px dashed rgba(232,201,106,.4)}
.empty p{margin:0 0 18px}
.empty .empty__title{margin-bottom:8px;font-family:var(--disp);font-size:26px;color:var(--h2)}

/* =========================================================================
   Карточки размещений в рубрике
   ========================================================================= */

.offers{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--gap);margin:24px 0 0;padding:0;list-style:none}
.offer__link{display:block;height:100%;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none}
.offer__link:hover{background:var(--card-hover);border-color:var(--h2);color:var(--ink);text-decoration:none}
.offer__media{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--panel-2)}
.offer__media img{display:block;width:100%;height:100%;object-fit:cover}
.offer__media--empty{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(130,255,242,.1),transparent 60%),var(--panel)}
.offer__media--empty svg{width:72px;height:72px;opacity:.7}
.offer__body{display:block;padding:18px}
.offer__title{display:block;font-family:var(--disp);font-size:23px;line-height:1.25;color:var(--h2)}
.offer__lead{display:block;margin-top:8px;font-size:17px;line-height:1.6}
.offer__cities{display:block;margin-top:12px;font-size:15px;color:rgba(255,251,210,.75)}
.offer__foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
.offer__price{font-size:19px;color:var(--accent)}
.offer__more{font-size:16px;color:var(--link)}

.offers .slot-free{gap:14px;padding:24px;background:rgba(0,12,42,.5);border:1px dashed rgba(232,201,106,.5)}
.offers .slot-free h3{font-size:24px}
.offers .slot-free p{font-size:17px;line-height:1.6}

/* =========================================================================
   Карточка размещения: две колонки, справа цена и форма
   ========================================================================= */

.detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--gap);align-items:start;margin-top:24px}
.detail__main,.detail__side{display:grid;gap:20px;min-width:0}
.detail__photo{margin:0;border:1px solid rgba(232,201,106,.3)}
.detail__photo img{display:block;width:100%;height:auto}

.panel{padding:26px;background:rgba(1,29,50,.7);border:1px solid var(--line)}
.panel .entry-content{max-width:none}
.panel .entry-content h2{font-size:28px}
.panel .entry-content p:last-child{margin-bottom:0}
.panel__sub{margin:20px 0 10px;font-size:22px}

.tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.tags li{padding:8px 14px;font-size:15px;background:rgba(5,38,63,.9);border:1px solid rgba(130,255,242,.3)}

.buy-box{padding:24px;background:linear-gradient(160deg,rgba(5,38,63,.95),rgba(1,29,50,.9));border:1px solid rgba(232,201,106,.45);box-shadow:0 0 30px rgba(130,255,242,.1);scroll-margin-top:24px}
.buy-box .kicker{font-size:24px}
.buy-box__price{margin:4px 0 18px;font-family:var(--disp);font-size:38px;line-height:1.2;color:var(--accent)}

.detail__side .ad-slot{margin-top:0}
.detail__side .ad-slot__box{max-width:300px;min-height:600px}
.ad-slot--article-side .ad-slot__box,.ad-slot--event-side .ad-slot__box,.ad-slot--sign-side .ad-slot__box{min-height:250px}
.ad-slot__item+.ad-slot__item{margin-top:14px}
.buy-box__site{margin:0}
.buy-box__site .btn{width:100%;justify-content:center}
.buy-box__or{margin:12px 0 16px;font-size:15px;text-align:center;color:var(--ink-mute)}

/* =========================================================================
   Формы — поля из UI-кита: обычное, фокус, ошибка, отключено
   ========================================================================= */

.field{display:grid;gap:6px}
.field label{font-size:15px;color:rgba(255,251,210,.85)}
.field input,.field textarea,.field select{
	width:100%;min-height:48px;padding:13px 14px;
	font:inherit;font-size:17px;line-height:1.4;color:var(--ink);
	background:rgba(0,12,42,.7);border:1px solid rgba(130,255,242,.35);border-radius:3px;
}
.field textarea{resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:rgba(255,251,210,.55)}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--h2);outline:2px solid rgba(130,255,242,.35);outline-offset:1px}
.field input:disabled,.field textarea:disabled{opacity:.5;cursor:not-allowed}
.field.is-error input,.field.is-error textarea{border-color:var(--alert)}
.field.is-error label{color:var(--alert)}
.field__error{margin:0;font-size:15px;color:var(--alert)}

.lead-form{display:grid;gap:14px}
.lead-form p{margin:0}
.lead-form__trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lead-form__status{padding:12px 14px;font-size:16px;line-height:1.5}
.lead-form__status.is-ok{background:var(--h1);color:var(--bg)}
.lead-form__status.is-error{border:1px solid var(--alert);color:var(--ink);background:rgba(245,84,107,.12)}
.lead-form__call{font-size:16px}
.lead-form__note{font-size:14px;line-height:1.5;color:rgba(255,251,210,.7)}

/* Главная кнопка формы — зелёная, как в макете карточки */
.btn--go{width:100%;gap:10px;font-size:18px;background:linear-gradient(180deg,var(--h1),#8fd45c);border-color:var(--h1)}
.btn--go:hover{background:var(--ink);border-color:var(--ink)}
.btn__spinner{display:none;width:18px;height:18px;border:2px solid rgba(0,12,42,.35);border-top-color:var(--bg);border-radius:50%;animation:ny-spin .8s linear infinite}
.btn.is-busy{cursor:progress;opacity:.85}
.btn.is-busy .btn__spinner{display:inline-block}
@keyframes ny-spin{to{transform:rotate(360deg)}}

/* =========================================================================
   Афиша: фильтры, «Выбрано», строки с типом события
   ========================================================================= */

.event-row__type{display:block;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.event-row__type+.event-row__title{margin-top:2px}
.event-row .event-row__venue{color:var(--ink-soft)}
.rows--tight{margin-top:12px}

.filters{display:grid;gap:16px;padding:22px;background:var(--card);border:1px solid var(--line)}
.filters__head,.filters-toggle{display:none}
.filters__fields{display:flex;flex-wrap:wrap;gap:16px}
.filters__city{flex:0 1 320px;min-width:0}
.filters__day{flex:0 1 220px;min-width:0}
.field input[type="date"]{color-scheme:dark}
.filters__row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;border:0}
.filters__row legend{float:left;width:64px;margin-right:8px;padding:0;font-size:15px;color:rgba(255,251,210,.85)}
.filters__actions{display:flex;gap:10px}
.filters__actions .btn{min-width:140px}
/* Со скриптом на десктопе выбор применяется сразу — кнопки не нужны */
.has-filters-js .filters__actions{display:none}

/* Чипс-переключатель: настоящий radio внутри, видна только капсула */
label.chip{position:relative;cursor:pointer}
label.chip input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
label.chip:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--bg)}
label.chip:has(input:focus-visible){outline:2px solid var(--h2);outline-offset:2px}

.picked{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px}
.picked__label{font-size:15px;color:rgba(255,251,210,.85)}
.picked__chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;font-size:15px;color:var(--bg);background:var(--accent);border-radius:999px;text-decoration:none}
.picked__chip:hover{background:var(--ink);color:var(--bg);text-decoration:none}
.picked__chip span{font-size:18px;line-height:1}
.picked__reset{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;font-size:16px;text-decoration:underline}

.found{margin:20px 0 0;font-size:16px;color:var(--ink-soft)}

/* Время сеанса под датой и «ещё N дат» */
.event-row__time{display:block;font-family:var(--body);font-size:15px;color:var(--ink-mute)}
.event-row__more{color:var(--gold)}
.afisha-note{margin-top:20px;text-align:center}

/* Миниатюра мероприятия в строке афиши */
.event-row__media{flex:0 0 132px;aspect-ratio:3/2;overflow:hidden;background:var(--panel-2);border:1px solid var(--line)}
.event-row__media img{display:block;width:100%;height:100%;object-fit:cover}
.event-row--media{padding-block:16px}
.event-row__media--empty{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(130,255,242,.1),transparent 65%),var(--panel)}
.event-row__media--empty svg{width:40px;height:40px;opacity:.75}

@media (max-width:767px){
	/* Телефон: фото на всю ширину, под ним данные, цена напротив кнопки */
	.event-row--media{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;align-items:center;padding-block:20px}
	.event-row--media > *{grid-column:1 / -1}
	.event-row--media .event-row__media{width:100%;margin-bottom:8px}
	.event-row--media .event-row__price{grid-column:1;margin-top:8px;font-size:20px}
	.event-row--media .btn--line{grid-column:2;justify-self:end;margin-top:8px}
}
.empty__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}
.empty .empty__actions{margin:0}

/* =========================================================================
   Карточка события
   ========================================================================= */

.detail--event{margin-top:14px}
.event-head .kicker{font-size:28px}
.event-head h1{margin:6px 0 0;font-size:clamp(34px,5vw,44px);line-height:1.08;text-wrap:pretty}
.rule--gold{max-width:none;margin:16px 0 18px;background:linear-gradient(90deg,var(--gold),rgba(232,201,106,0))}
.entry-content--lead{max-width:none;font-size:18px;line-height:1.7}
.entry-content--lead p:last-child{margin-bottom:0}

.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:0}
.facts__item{padding:18px;background:rgba(1,29,50,.75);border:1px solid rgba(130,255,242,.22)}
.facts dt{margin:0 0 4px;font-size:15px;color:var(--ink-mute)}
.facts dd{margin:0;font-family:var(--disp);font-size:24px;line-height:1.25;color:var(--h2)}

.detail__h2{margin:0 0 12px;font-size:28px}
.program{margin:0;padding:0;list-style:none;border-top:1px solid var(--row)}
.program li{display:flex;flex-wrap:wrap;gap:6px 20px;padding:14px 2px;border-bottom:1px solid var(--row)}
.program__time{flex:0 0 90px;font-family:var(--hand);font-size:22px;color:var(--gold)}
.program__what{flex:1 1 200px;font-size:17px}

/* Билеты — карточки-переключатели */
.tickets{display:grid;gap:10px;margin:0;padding:0;border:0}
.ticket{position:relative;display:block;padding:16px 18px;cursor:pointer;color:var(--ink);background:rgba(0,12,42,.55);border:1px solid rgba(130,255,242,.3)}
.ticket input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.ticket:hover{border-color:var(--h2)}
.ticket:has(input:checked){color:var(--bg);background:var(--accent);border-color:var(--accent)}
.ticket:has(input:focus-visible){outline:2px solid var(--h2);outline-offset:2px}
.ticket__name{display:block;font-size:18px;font-weight:600}
.ticket__note{display:block;margin-top:4px;font-size:15px;opacity:.85}
.ticket__price{display:block;margin-top:8px;font-family:var(--disp);font-size:26px}

.qty{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.qty label{font-size:16px;color:rgba(255,251,210,.85)}
.qty__box{display:flex;align-items:center;border:1px solid rgba(130,255,242,.4)}
.qty__btn{width:48px;height:48px;padding:0;font:inherit;font-size:22px;color:var(--ink);background:transparent;border:0;cursor:pointer}
.qty__btn:hover{background:rgba(130,255,242,.12)}
.qty__input{width:56px;height:48px;padding:0;font:inherit;font-size:19px;text-align:center;color:var(--accent);background:transparent;border:0;-moz-appearance:textfield;appearance:textfield}
.qty__input::-webkit-inner-spin-button,.qty__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

.total{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:14px 0;border-top:1px solid rgba(255,251,210,.15)}
.total span{font-size:17px;color:rgba(255,251,210,.85)}
.total__sum{font-family:var(--disp);font-size:34px;color:var(--accent)}

/* =========================================================================
   Витрина ёлок и карточка товара
   ========================================================================= */

.chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}

.trees{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:28px;margin:0;padding:0;list-style:none}
.tree__link{display:block;height:100%;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none}
.tree__link:hover{background:var(--card-hover);border-color:var(--h1);color:var(--ink);text-decoration:none}
.tree__media{display:block;aspect-ratio:1;overflow:hidden;background:var(--panel-2)}
.tree__media img{display:block;width:100%;height:100%;object-fit:cover}
.tree__media--empty{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(193,247,130,.1),transparent 60%),var(--panel)}
.tree__media--empty svg{width:72px;height:72px;opacity:.7}
.tree__body{display:block;padding:16px 18px 18px}
.tree__title{display:block;font-family:var(--disp);font-size:21px;line-height:1.25;color:var(--h2)}
.tree__size{display:block;margin-top:6px;font-size:16px}
.tree__stock{display:block;margin-top:6px;font-size:15px;color:var(--alert)}
.tree__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.tree__price{font-size:20px;color:var(--accent)}
.tree__more{font-size:15px;color:var(--link)}

.detail--product{margin-top:18px}
.gallery{display:grid;gap:14px}
.gallery__main{margin:0;border:1px solid rgba(232,201,106,.3);background:var(--panel)}
.gallery__main img{display:block;width:100%;height:auto;aspect-ratio:5/6;object-fit:cover}
.gallery__main--empty{display:grid;place-items:center;aspect-ratio:5/6}
.gallery__main--empty svg{width:120px;height:120px;opacity:.6}
.gallery__thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:14px;margin:0;padding:0;list-style:none}
.gallery__thumb{display:block;border:1px solid rgba(232,201,106,.25)}
.gallery__thumb[aria-current="true"],.gallery__thumb:hover{border-color:var(--accent)}
.gallery__thumb img{display:block;width:100%;height:88px;object-fit:cover}

.buy-box__title{margin:0;font-size:36px;line-height:1.15;color:var(--h1)}
.buy-box__lead{margin:10px 0 0;font-size:17px;line-height:1.65}
.buy-box .buy-box__title+.buy-box__price,.buy-box__lead+.buy-box__price{margin-top:18px}
.buy-box__terms{margin:0 0 18px;font-size:15px;color:rgba(255,251,210,.75)}
.buy-box > .btn--go{width:100%}
.buy-box > .lead-form__note{margin:12px 0 0}

.heights{display:grid;gap:10px;margin-bottom:18px}
.heights__label{font-size:15px;color:rgba(255,251,210,.85)}
.heights__list{display:flex;flex-wrap:wrap;gap:8px}
.height{display:inline-flex;align-items:center;min-height:44px;padding:11px 16px;font-size:16px;color:var(--ink);border:1px solid rgba(130,255,242,.4);text-decoration:none}
a.height:hover{border-color:var(--h2);color:var(--h2);text-decoration:none}
.height.is-active{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}
.height.is-disabled{color:rgba(255,251,210,.35);border-color:rgba(255,251,210,.15);cursor:not-allowed}

.panel--specs{padding:22px;background:rgba(1,29,50,.8);border-color:rgba(130,255,242,.22)}
.panel--specs .detail__h2{font-size:24px}
.specs{display:grid;gap:10px;margin:0;font-size:17px}
.specs div{display:flex;justify-content:space-between;gap:16px;padding-bottom:8px;border-bottom:1px solid var(--row)}
.specs div:last-child{padding-bottom:0;border-bottom:0}
.specs dt{color:rgba(255,251,210,.75)}
.specs dd{margin:0;text-align:right}

/* Телефон и планшет: фильтры афиши — кнопка и выезжающая снизу панель */
@media (max-width:1023px){
	.has-filters-js .filters-toggle{
		display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;padding:14px 18px;
		font:inherit;font-size:18px;font-weight:600;color:var(--ink);background:var(--panel-2);border:1px solid rgba(232,201,106,.5);cursor:pointer;
	}
	.has-filters-js .filters{
		display:none;position:fixed;left:0;right:0;bottom:0;z-index:95;max-height:88vh;overflow-y:auto;
		gap:18px;padding:18px 18px 22px;background:var(--panel);
		border:1px solid rgba(232,201,106,.45);border-bottom:0;border-radius:18px 18px 0 0;
		box-shadow:0 -12px 40px rgba(0,0,0,.55);
	}
	.has-filters-js .filters.is-open{display:grid}
	.has-filters-js .filters__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
	.filters__title{font-family:var(--disp);font-size:26px;color:var(--h2)}
	.filters__close{width:44px;height:44px;padding:0;font:inherit;font-size:22px;color:var(--ink);background:transparent;border:1px solid rgba(255,251,210,.3);cursor:pointer}
	.has-filters-js .filters__actions{display:flex}
	.filters__actions .btn{flex:1 1 0;min-height:52px}
	.filters__actions .btn[type="submit"]{flex-grow:2}
	.filters__city{max-width:none}
}

/* =========================================================================
   Гороскоп
   ========================================================================= */

.page-head .lede p{margin:0 0 12px}
.page-head .lede{margin-bottom:28px}

.signs{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:28px;margin:0;padding:0;list-style:none}
.sign{display:grid;justify-items:center;gap:10px;height:100%;padding:22px 16px;text-align:center;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none}
a.sign:hover{background:var(--card-hover);border-color:var(--h2);color:var(--ink);text-decoration:none}
.sign__icon{display:grid;place-items:center;width:96px;height:96px}
.sign__icon img{width:100%;height:100%;transition:transform .3s}
a.sign:hover .sign__icon img{transform:scale(1.06)}
.sign__name{font-family:var(--disp);font-size:22px;color:var(--h2)}
.sign__dates{font-size:15px;color:rgba(255,251,210,.75)}

.sign-head{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:14px}
.sign-head__icon{display:grid;place-items:center;flex:0 0 120px;width:120px;height:120px}
.sign-head__icon img{width:100%;height:100%}
.sign-head__icon svg{width:46px;height:46px}
.zodiac-h{display:flex;align-items:center;gap:16px}
.zodiac-h__icon{flex:0 0 72px;width:72px;height:72px;margin:0}
.sign-head h1{margin:0;font-size:clamp(32px,5vw,42px)}
.sign-head .kicker{margin-top:4px;font-size:24px}
.sign-head+.rule{margin:16px 0 24px}

.side-box{padding:22px;background:rgba(5,38,63,.85);border:1px solid rgba(130,255,242,.28)}
.side-box__title{margin:0 0 12px;font-size:22px}

.tags--links li{padding:0;background:none;border:0}
.tags--links a{display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;font-size:16px;color:var(--ink);background:rgba(0,12,42,.6);border:1px solid rgba(232,201,106,.3);text-decoration:none}
.tags--links a:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}

/* =========================================================================
   Лента статей и статья
   ========================================================================= */

.feed-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 24px;padding:22px 4px;border-bottom:1px solid var(--row);color:var(--ink);text-decoration:none}
.feed-row:hover{background:rgba(5,38,63,.55);color:var(--ink);text-decoration:none}
.feed-row__media{flex:0 0 200px;aspect-ratio:200/130;overflow:hidden;background:var(--panel-2)}
.feed-row__media img{display:block;width:100%;height:100%;object-fit:cover}
.feed-row__main{flex:3 1 260px;min-width:0}
.feed-row__kicker{display:block;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.feed-row__title{display:block;margin-top:6px;font-family:var(--disp);font-size:26px;line-height:1.25}
.feed-row__lead{display:block;margin-top:8px;font-size:17px;line-height:1.6;color:var(--ink-soft)}
.feed-row__more{display:inline-block;margin-top:10px;font-size:17px;color:var(--link)}

.detail--article{margin-top:14px}
.article{min-width:0}
.article .kicker{font-size:28px}
.article h1{margin:6px 0 0;font-size:clamp(34px,5vw,46px);line-height:1.1;text-wrap:pretty}
.article__meta{margin:14px 0 0;font-size:15px;color:rgba(255,251,210,.75)}
.article__photo{margin:22px 0;border:1px solid rgba(232,201,106,.3)}
.article__photo img{display:block;width:100%;height:auto}
.article__tags{margin-top:26px}

.entry-content h2{margin:28px 0 12px;font-size:30px}
.entry-content h3{margin:22px 0 10px;font-size:24px}
.entry-content ul,.entry-content ol{margin:0 0 16px;padding-left:1.4em}
.entry-content li{margin-bottom:6px}
.entry-content blockquote{margin:24px 0;padding:18px 24px;border-left:3px solid var(--gold);background:rgba(5,38,63,.6);font-family:var(--disp);font-size:24px;line-height:1.5}
.entry-content blockquote p{margin:0}
.entry-content img{height:auto}
.entry-content .ad-slot{margin:26px 0}
.sign-head~.detail .entry-content h2{font-size:26px;margin-top:22px}

.side-links{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.side-links li{padding-bottom:12px;border-bottom:1px solid var(--row)}
.side-links li:last-child{padding-bottom:0;border-bottom:0}
.side-links a{font-size:17px;line-height:1.5;color:var(--ink)}
.side-links a:hover{color:var(--h2)}

.promo--side{height:auto;gap:12px;padding:22px;background:rgba(1,29,50,.85);border-color:rgba(232,201,106,.45)}
.promo--side .kicker{font-size:24px}

@media (max-width:767px){
	.feed-row__media{flex-basis:100%}
}

/* =========================================================================
   Реклама, контакты, поиск, 404
   ========================================================================= */

.rate-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--gap)}
.rate-card{display:grid;align-content:start;gap:12px;padding:26px;background:rgba(1,29,50,.8);border:1px solid rgba(232,201,106,.3)}
.rate-card p{margin:0;font-size:17px;line-height:1.6}
.rate-card .kicker{font-size:24px}
.rate-card .rate-card__price{font-family:var(--disp);font-size:40px;line-height:1.1;color:var(--accent)}
.rate-card--hot{background:linear-gradient(160deg,rgba(5,38,63,.95),rgba(1,29,50,.9));border-color:var(--gold);box-shadow:0 0 30px rgba(232,201,106,.15)}
.rate-card__badge{justify-self:start;padding:6px 12px;font-size:14px;color:var(--bg);background:var(--h1)}

.section > h2{margin:0 0 16px}
.table-scroll{overflow-x:auto}
.rates{width:100%;min-width:560px;border-collapse:collapse;font-size:17px}
.rates thead th{padding:14px 16px;font-size:15px;font-weight:400;text-align:left;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,251,210,.75);background:rgba(0,12,42,.5)}
.rates tbody th,.rates td{padding:16px;text-align:left;vertical-align:top;background:rgba(1,29,50,.7);border-bottom:1px solid rgba(255,251,210,.1)}
.rates tbody th{font-weight:400;color:var(--ink)}
.rates__size{font-family:ui-monospace,Consolas,monospace;color:var(--ink-soft)}
.rates__price{color:var(--accent);white-space:nowrap}

/* Товар в партнёрской статье: компактное фото сбоку от текста */
.entry-content .ny-item-title{clear:both}
.entry-content .ny-item{float:left;width:220px;margin:4px 22px 14px 0}
.entry-content .ny-item img{display:block;width:100%;height:auto;border:1px solid rgba(232,201,106,.3)}
.entry-content h2{clear:both}
@media (max-width:767px){
	.entry-content .ny-item{width:140px;margin-right:16px}
}

/* Пример кампании на странице рекламы: каждый формат в настоящем размере */
.showcase{display:grid;gap:28px}
.showcase > h2,.showcase > .lede{margin-bottom:0}
.showcase__who{margin:0;font-size:18px;line-height:1.6}
.showcase__who strong{color:var(--h2);font-weight:400;font-family:var(--disp);font-size:22px}
.showcase .filter{margin:0}
.showcase__item{display:grid;align-content:start;gap:12px;margin:0;min-width:0}
.showcase__item .kicker{font-size:24px}
.showcase__item figcaption{font-size:16px;line-height:1.6;color:var(--ink-soft)}
.showcase__item figcaption a{white-space:nowrap}
.showcase__frame{padding:12px;background:rgba(0,12,42,.5);border:1px dashed rgba(232,201,106,.4)}
.showcase__frame img{display:block;max-width:100%;height:auto;margin:0 auto}
.showcase__frame--side{justify-self:start;max-width:100%}
.showcase__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--gap);align-items:start}
.showcase__grid--tall{grid-template-columns:auto 1fr}
.showcase__card{margin:0;grid-template-columns:1fr}
.showcase__article{color:var(--ink);text-decoration:none}
.showcase__article:hover{color:var(--ink);text-decoration:none}
.showcase__article .card__title{color:var(--h2)}
.showcase__mark{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.showcase__package{display:grid;align-content:start;gap:14px}
.showcase__package .kicker{font-size:26px}
.showcase__package p{margin:0;font-size:17px;line-height:1.6}
.showcase__package .rate-card__price{font-family:var(--disp);font-size:40px;line-height:1.1;color:var(--accent)}
.showcase__package .btn{justify-self:start}
.showcase__list{display:grid;gap:8px;margin:0;padding-left:22px;font-size:17px;line-height:1.55}
@media (max-width:767px){
	.showcase__grid--tall{grid-template-columns:1fr}
}
.section .lead-form__note{margin-top:16px}

.detail--adv{align-items:start}
.detail--adv h2{margin:0 0 8px}
.detail--adv .lede{margin-bottom:18px}
.contact-form{max-width:560px}
.contact-form .btn{justify-self:start}
.field__opt{color:rgba(255,251,210,.6)}

.price-list{display:grid;gap:10px;margin:0 0 16px;padding:0;list-style:none;font-size:17px}
.price-list li{display:flex;justify-content:space-between;gap:14px;padding-bottom:8px;border-bottom:1px solid var(--row)}
.price-list li:last-child{border-bottom:0;padding-bottom:0}
.price-list span{color:var(--accent);white-space:nowrap}
.panel > p{margin:0 0 14px;font-size:16px;color:var(--ink-soft)}

.contact-mail{margin:0 0 8px;font-size:19px}
.side-box p{margin:0 0 10px;font-size:17px;line-height:1.6}
.side-box p:last-child{margin-bottom:0}

.search-box{display:flex;flex-wrap:wrap;gap:12px;max-width:680px}
.search-box input{flex:1 1 260px;min-width:0;min-height:52px;padding:14px 16px;font:inherit;font-size:18px;color:var(--ink);background:rgba(0,12,42,.7);border:1px solid rgba(130,255,242,.35)}
.search-box input:focus{border-color:var(--h2);outline:2px solid rgba(130,255,242,.35);outline-offset:1px}
.search-box + .found{margin-bottom:8px}

.not-found{display:grid;justify-items:center;gap:0;padding:60px 0 20px;text-align:center}
.not-found__code{margin:0;font-family:var(--disp);font-size:120px;line-height:1;color:var(--accent);text-shadow:0 4px 30px rgba(0,12,42,.9)}
.not-found h1{margin:10px 0 0;font-size:40px}
.not-found .lede{max-width:560px;margin:14px 0 24px;font-size:18px}
.not-found .search-box{justify-content:center;width:100%;margin-bottom:22px}

/* =========================================================================
   Тайный Санта
   ========================================================================= */

.santa-new{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--gap);align-items:start}
.santa-new .panel{display:grid;gap:14px}
.santa-new .detail__h2{margin:0}
.santa-new .btn--lg{justify-self:start}
.santa-people{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.santa-people__row{display:flex;gap:8px}
.santa-people__row input{flex:1 1 auto;min-width:0;min-height:48px;padding:12px 14px;font:inherit;font-size:17px;color:var(--ink);background:rgba(0,12,42,.7);border:1px solid rgba(130,255,242,.35)}
.santa-people__row input:focus{border-color:var(--h2);outline:2px solid rgba(130,255,242,.35);outline-offset:1px}
.santa-people__remove{flex:0 0 48px;height:48px;padding:0;font:inherit;font-size:22px;color:var(--ink);background:transparent;border:1px solid rgba(255,251,210,.3);cursor:pointer}
.santa-people__remove:hover{border-color:var(--alert);color:var(--alert)}
.santa-new [data-santa-add]{justify-self:start}

.santa-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto;border:1px solid var(--gold);border-radius:50%;background:var(--panel)}
.santa-icon svg{width:36px;height:36px}

.santa-card{max-width:640px;background:linear-gradient(160deg,rgba(5,38,63,.95),rgba(1,29,50,.9));border:1px solid rgba(232,201,106,.45);box-shadow:0 0 40px rgba(232,201,106,.12)}
.santa-card__closed{position:relative;display:grid;gap:14px;justify-items:center;padding:34px 26px 32px;text-align:center;overflow:hidden}
.santa-card__flap{position:absolute;top:0;left:0;right:0;height:96px;background:rgba(255,251,210,.07);clip-path:polygon(0 0,100% 0,50% 100%)}
.santa-card__closed .santa-icon{position:relative;margin-top:26px}
.santa-card__closed p{margin:0;max-width:420px}
.santa-card__hello{font-family:var(--hand);font-size:28px;line-height:1.2;color:var(--gold)}
.santa-card__open{padding:30px 26px}
.santa-card__open:focus{outline:none}
.santa-card__name{margin:4px 0 0;font-family:var(--disp);font-size:48px;line-height:1.1;color:var(--h1)}
.santa-card__open .rule{margin:16px 0 20px}
.facts--santa{margin-bottom:22px}
.santa-wish{margin:0 0 18px;padding:16px 20px;border-left:3px solid var(--gold);background:rgba(0,12,42,.5);font-family:var(--disp);font-size:22px;line-height:1.5}
.santa-actions{justify-content:flex-start;margin-top:18px}
.santa-wish-form{max-width:640px;margin-top:32px;padding:24px;background:rgba(1,29,50,.7);border:1px solid var(--line)}
.santa-wish-form .detail__h2,.santa-wish-form .lead-form__note{margin:0}
.santa-wish-form .btn{justify-self:start}

.santa-links{display:grid;gap:10px;margin:0 0 18px;padding:0;list-style:none}
.santa-links__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px 16px;background:rgba(1,29,50,.75);border:1px solid var(--line)}
.santa-links__avatar{display:grid;place-items:center;flex:0 0 40px;height:40px;font-family:var(--disp);font-size:20px;color:var(--bg);background:var(--gold);border-radius:50%}
.santa-links__name{flex:0 1 180px;min-width:0;font-family:var(--disp);font-size:22px;color:var(--h2)}
.santa-links__url{flex:1 1 240px;min-width:0;min-height:44px;padding:10px 12px;font:inherit;font-size:14px;color:var(--ink-soft);background:rgba(0,12,42,.6);border:1px solid rgba(130,255,242,.25)}
.santa-links .btn{min-height:44px;padding:10px 16px;font-size:16px}

.santa-invalid{display:grid;gap:14px;justify-items:center;max-width:720px;margin-inline:auto}
.santa-invalid h1{margin:0;font-size:clamp(28px,4vw,36px);color:var(--h2)}
.santa-invalid p{margin:0;max-width:540px}


/* Архив статей */
.archive-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--gap);align-items:start}
.archive-list{display:grid;gap:0;margin:0;padding:0;list-style:none}
.archive-list a{display:flex;gap:16px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--row);color:var(--ink)}
.archive-list li:last-child a{border-bottom:0}
.archive-list a:hover{color:var(--h2);text-decoration:none}
.archive-list__year{flex:0 0 52px;font-family:var(--hand);font-size:24px;color:var(--gold)}

/* =========================================================================
   Подвал
   ========================================================================= */

.site-footer{position:relative;z-index:1;margin-top:56px}
.site-footer__in{padding-top:32px;border-top:1px solid var(--line-strong)}
.site-footer__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--gap)}
.site-footer h3{margin:0 0 12px;font-size:22px}
.site-footer__links{display:grid;gap:8px;margin:0;padding:0;list-style:none;font-size:17px}
.site-footer__links a{display:inline-block;padding-block:2px}
.site-footer__text{margin:0 0 10px;font-size:17px;line-height:1.6}
/* Порталы-партнёры в подвале: серые, в цвете при наведении */
.partners{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 18px;margin:32px 0 0;padding:0;list-style:none}
.partners a{display:block;border-radius:50%}
.partners img{display:block;width:72px;height:72px;border-radius:50%;filter:grayscale(1);opacity:.8;transition:filter .2s,opacity .2s}
.partners a:hover img,.partners a:focus-visible img{filter:none;opacity:1}
/* Тематические строки ссылок и подпись разработчика */
.footer-tags{display:grid;gap:8px;margin-top:28px;font-size:15px;line-height:1.7;color:var(--ink-mute)}
.footer-tags p{margin:0}
.footer-tags__title{color:var(--ink)}
.footer-tags span[aria-hidden]{color:rgba(255,251,210,.4)}
.site-footer__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding-bottom:40px}
.site-footer__bottom .site-footer__fine{margin:0;padding:0}
.webtime{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--ink-mute);text-decoration:none}
.webtime img{display:block;width:97px;height:auto;opacity:.85}
.webtime:hover{color:var(--ink);text-decoration:none}
.webtime:hover img{opacity:1}
.site-footer .rule{margin:26px 0 16px}
.site-footer__fine{margin:0 0 8px;font-size:15px;line-height:1.6;color:var(--ink-mute)}
.site-footer__fine:last-child{padding-bottom:40px}

/* =========================================================================
   Планшет и телефон
   ========================================================================= */

/* Шапка меню и кнопка афиши внутри меню видны только в мобильной панели */
.main-nav__head,.main-nav__cta{display:none}

@media (max-width:1023px){
	.nav-toggle{display:grid}
	.site-header__cta{display:none}
	.site-logo img{width:auto;height:40px;max-width:none}

	/* Открытое меню — эталон «Состояния», блок 05 */
	.main-nav{display:none;position:fixed;inset:0;z-index:90;overflow-y:auto;overscroll-behavior:contain;background:var(--panel)}
	.main-nav.is-open{display:block}
	.main-nav__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(232,201,106,.3)}
	.main-nav__head img{display:block;width:auto;height:40px}
	.main-nav__close{
		display:grid;place-items:center;width:48px;height:48px;padding:0;
		font:inherit;font-size:26px;line-height:1;color:var(--ink);
		background:transparent;border:1px solid rgba(232,201,106,.55);cursor:pointer;
	}
	.main-nav ul{display:grid;gap:0;margin:0;padding:6px 0;border:0}
	.main-nav li > a{
		display:flex;gap:12px;width:100%;min-height:52px;padding:0 16px;
		font-size:18px;white-space:normal;border-bottom:1px solid var(--row);
	}
	.main-nav li > a::before{position:static;flex:0 0 16px;margin:0}
	.main-nav li > a:hover,
	.main-nav .current-menu-item > a,
	.main-nav .current-menu-ancestor > a{box-shadow:none;background:rgba(5,38,63,.6)}
	.main-nav .current-menu-item > a{color:var(--accent)}
	.main-nav__cta{display:block;padding:14px 16px 18px}
	.main-nav__cta .btn{width:100%;min-height:52px}
	body.nav-open{overflow:hidden}

	/* Планшет: свой фон 1024×1000, текст героя под ёлкой */
	.stage__fade{aspect-ratio:1024/1000;background:linear-gradient(180deg,rgba(0,12,42,0) 52%,rgba(0,12,42,.45) 80%,var(--bg) 100%)}
	.hero__spacer{flex-basis:100%;min-height:70vw}
	/* Подложка героя на всю ширину, иначе по бокам торчит снег с фона */
	.hero__card{margin-inline:-16px;padding:22px 36px 28px;background:linear-gradient(180deg,rgba(0,12,42,.92) 0%,var(--bg) 10%,var(--bg) 100%)}
}

@media (max-width:767px){
	/* Телефон: вертикальный фон 780×1100, ёлка по центру */
	.stage__fade{aspect-ratio:780/1100}
	.hero__spacer{min-height:97vw}
	.hero .kicker{font-size:30px}
	.ny-countdown__unit b{font-size:52px}
	.stats__item{border-right:0}
	.event-row__date{flex-basis:100%}
}

/* =========================================================================
   Панель доступности (ТЗ, раздел 7) и её режимы
   ========================================================================= */

.a11y-btn{position:fixed;right:24px;bottom:24px;z-index:80;width:48px;height:48px;padding:0;background:transparent;border:0;border-radius:50%;box-shadow:0 6px 20px rgba(0,0,0,.5);cursor:pointer}
.a11y-btn svg{display:block}
.a11y-btn:hover .a11y-btn__ring{fill:#05263F}
.a11y-btn:focus-visible{outline:2px solid var(--h2);outline-offset:3px}

.a11y-panel{position:fixed;right:24px;bottom:84px;z-index:85;display:grid;gap:16px;width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 120px);overflow-y:auto;padding:20px;background:var(--panel);border:1px solid rgba(232,201,106,.5);box-shadow:0 12px 40px rgba(0,0,0,.6)}
.a11y-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.a11y-panel__title{margin:0;font-size:24px}
.a11y-panel__close{width:44px;height:44px;padding:0;font:inherit;font-size:22px;color:var(--ink);background:transparent;border:1px solid rgba(255,251,210,.3);cursor:pointer}
.a11y-panel__group{display:grid;gap:8px}
.a11y-panel__label{font-size:15px;color:rgba(255,251,210,.85)}
.a11y-panel__sizes{display:flex;gap:8px}
.a11y-panel__sizes button,.a11y-panel__toggles button{min-height:44px;padding:10px 14px;font:inherit;font-size:16px;text-align:left;color:var(--ink);background:rgba(0,12,42,.6);border:1px solid rgba(130,255,242,.35);cursor:pointer}
.a11y-panel__sizes button{flex:1 1 0;text-align:center;font-weight:600}
.a11y-panel__toggles{display:grid;gap:8px}
.a11y-panel button[aria-pressed="true"]{color:var(--bg);background:var(--accent);border-color:var(--accent)}
.a11y-panel__toggles button[aria-pressed="true"]::after{content:" ✓"}
.a11y-panel__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}

/* Размер текста: страница свёрстана в px, поэтому масштабируем целиком */
html.a11y-size-1{zoom:1.15}
html.a11y-size-2{zoom:1.3}

/* Подчеркнуть ссылки */
html.a11y-links a{text-decoration:underline !important;text-underline-offset:3px}

/* Остановить анимацию: снег, спиннеры, переходы */
html.a11y-still .snow{display:none}
html.a11y-still *,html.a11y-still *::before,html.a11y-still *::after{animation:none !important;transition:none !important}

/* Простой шрифт вместо рукописного и декоративного */
html.a11y-font body,html.a11y-font h1,html.a11y-font h2,html.a11y-font h3,html.a11y-font .kicker,
html.a11y-font [class*="__title"],html.a11y-font [class*="__date"],html.a11y-font [class*="__price"],html.a11y-font .stats__num{font-family:Arial,'Segoe UI',sans-serif !important;letter-spacing:0 !important}

/* Высокий контраст: чёрный фон, белый текст, жёлтые ссылки, без полупрозрачности */
html.a11y-contrast{
	--bg:#000;--panel:#000;--panel-2:#000;--ink:#fff;--ink-soft:#fff;--ink-mute:#fff;
	--h1:#fff;--h2:#ffff00;--link:#ffff00;--gold:#ffff00;--accent:#ffff00;
	--line:#fff;--line-strong:#fff;--row:#fff;--card:#000;--card-hover:#000;
}
html.a11y-contrast body{background:#000}
html.a11y-contrast .snow,html.a11y-contrast .stage__bg,html.a11y-contrast .stage__fade{display:none}
html.a11y-contrast .hero__card,html.a11y-contrast .tile--lead,html.a11y-contrast .buy-box,html.a11y-contrast .promo,
html.a11y-contrast .panel,html.a11y-contrast .side-box,html.a11y-contrast .filters,html.a11y-contrast .santa-card,
html.a11y-contrast .rate-card,html.a11y-contrast .empty{background:#000 !important;border-color:#fff !important;box-shadow:none !important}
html.a11y-contrast .hero{min-height:0}
html.a11y-contrast .hero__spacer{display:none}
html.a11y-contrast .hero__card{padding-top:32px}
html.a11y-contrast [style*="rgba"],html.a11y-contrast .lead-form__note,html.a11y-contrast .field label{color:#fff !important}
html.a11y-contrast .field input,html.a11y-contrast .field textarea,html.a11y-contrast .field select{background:#000;border-color:#fff;color:#fff}
html.a11y-contrast .btn{background:#ffff00;border-color:#ffff00;color:#000}
html.a11y-contrast .btn--secondary,html.a11y-contrast .btn--ghost,html.a11y-contrast .btn--line{background:#000;border-color:#ffff00;color:#ffff00}
html.a11y-contrast img{filter:none}
html.a11y-contrast .notice-draft,html.a11y-contrast .notice-draft a{background:#fff;color:#000}

@media (max-width:1023px){
	/* Телефон и планшет: полукруглая вкладка у правого края, под ней запас для кнопок страницы */
	.a11y-btn{right:0;bottom:16px;width:44px;height:44px;padding-left:4px;border:1px solid var(--gold);border-right:0;border-radius:22px 0 0 22px;background:var(--panel);box-shadow:0 4px 16px rgba(0,0,0,.45)}
	.a11y-btn svg{width:30px;height:30px;margin:auto}
	.a11y-btn .a11y-btn__ring{fill:none;stroke:none}
	.site-footer__bottom{padding-bottom:72px}
	.a11y-panel{right:0;left:0;bottom:0;width:auto;max-height:85vh;border-bottom:0;border-radius:18px 18px 0 0}
}

@media (prefers-reduced-motion:reduce){
	.snow{display:none}
	*,*::before,*::after{animation:none !important;transition:none !important}
}
