/*
 * Ledi.ru — современная версия «солнечной» гаммы старого сайта:
 * небесно-голубая шапка, медовая полоса меню, кремовые страницы, тёмно-синие заголовки, янтарные акценты.
 */
@import url('/static/css/fonts.css');

:root {
	/* небо (шапка) */
	--sky-900: #00387f;
	--sky-700: #1a5fb4;
	--sky-500: #3d8fdc;
	--sky-200: #bcdcf6;
	/* солнце: жёлтые и медовые тона старого сайта */
	--sun-500: #f0b63c;
	--sun-400: #fbce5b;      /* старое меню */
	--sun-200: #fdd367;
	--sun-100: #fbe6ad;      /* старые панели */
	--honey: #fbebb6;
	--page: #ffe8a4;         /* фон под картинкой-полосой */
	--sheet: #ffffe6;        /* светло-жёлтая колонка с текстом */
	--surface: #fffdf0;      /* карточки */
	/* коричневые: текст, ссылки, подзаголовки */
	--ink: #472700;          /* текст абзацев */
	--ink-soft: #7a5418;
	--heading: #3b480e;      /* заголовки — тёмно-оливковые */
	--heading-2: #995400;    /* подзаголовки и ссылки */
	--amber: #995400;
	--amber-dark: #c66d12;
	--line: #eec696;         /* старые рамки */
	--shadow: 0 1px 2px rgba(120, 70, 0, .1), 0 4px 14px rgba(120, 70, 0, .1);
	--shadow-hover: 0 2px 4px rgba(120, 70, 0, .12), 0 10px 24px rgba(120, 70, 0, .16);
	--radius: 12px;
	--radius-sm: 8px;
	--width: 1200px;
	--font-text: 'Golos Text', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
	--font-head: 'Lora', Georgia, 'Times New Roman', serif;
	--font-script: 'Marck Script', 'Segoe Script', cursive;
	color-scheme: light;
}

/* --- основа ------------------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0; color: var(--ink); font: 400 17px/1.65 var(--font-text);
	/* как на старом сайте: голубая полоса с узором переходит в жёлтый */
	background: var(--page) url('/static/img/bg-main.jpg') repeat-x top / auto 780px;
}
.sheet {
	max-width: calc(var(--width) + 64px); margin: 0 auto; min-height: 100vh;
	background: linear-gradient(180deg, var(--sheet), #fff8d2 900px, var(--sheet));
	box-shadow: 0 0 0 1px rgba(0, 56, 127, .15), 0 10px 40px rgba(0, 40, 90, .25);
	display: flex; flex-direction: column;
}
.sheet > main { flex: 1; }
a { color: var(--amber); text-decoration-color: color-mix(in srgb, currentColor 35%, transparent); text-underline-offset: 3px; }
a:hover { color: var(--amber-dark); text-decoration-color: currentColor; }
img { max-width: 100%; height: auto; }
h1, h2, h3 { font-family: var(--font-head); color: var(--heading); line-height: 1.25; font-weight: 700; }
h2, h3 { color: var(--heading-2); }
h1 { font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.5rem); margin: .2em 0 .45em; letter-spacing: -.01em; }
h2 { font-size: clamp(1.3rem, 1.1rem + .7vw, 1.6rem); margin: 1.8em 0 .7em; }
h3 { font-size: 1.15rem; margin: 1.4em 0 .5em; }
.container { width: 100%; max-width: var(--width); margin: 0 auto; padding: 0 20px; }
.muted { color: var(--ink-soft); }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
:focus-visible { outline: 3px solid var(--sun-500); outline-offset: 2px; border-radius: 4px; }

/* --- шапка: небо ---------------------------------------------------------- */
.sky {
	background:
		radial-gradient(1200px 260px at 15% -40%, rgba(255, 255, 255, .55), transparent 60%),
		radial-gradient(500px 200px at 95% 120%, rgba(255, 232, 164, .45), transparent 70%),
		linear-gradient(120deg, var(--sky-700), var(--sky-500) 55%, #7fbdee);
	color: #fff;
}
.sky-row { display: flex; align-items: center; gap: 24px; padding-top: 14px; padding-bottom: 14px; }
.logo { display: inline-flex; align-items: baseline; gap: 2px; color: #fff; text-decoration: none; line-height: 1; }
.logo:hover { color: #fff; }
.logo-mark { font: 400 2.9rem/1 var(--font-script); text-shadow: 0 2px 10px rgba(5, 40, 90, .35); }
.logo-tld { font: 400 1.6rem/1 var(--font-script); color: var(--sun-200); }
.logo-tag { margin-left: 12px; font-size: .8rem; letter-spacing: .04em; opacity: .85; align-self: center; max-width: 9em; line-height: 1.2; }
.search { margin-left: auto; position: relative; flex: 0 1 360px; }
.search input {
	width: 100%; padding: 10px 44px 10px 16px; font: inherit; font-size: .95rem; color: var(--ink);
	border: 0; border-radius: 999px; background: rgba(255, 255, 255, .95); box-shadow: 0 2px 10px rgba(5, 40, 90, .2);
}
.search button {
	position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; border: 0;
	border-radius: 50%; background: var(--sun-400); color: var(--amber-dark); cursor: pointer; display: grid; place-items: center;
}
.search button svg { width: 18px; height: 18px; }

/* --- полоса разделов: солнце ------------------------------------------- */
.sunbar {
	background: linear-gradient(180deg, var(--sun-200), var(--sun-400));
	border-bottom: 1px solid color-mix(in srgb, var(--sun-500) 60%, transparent);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6);
	position: sticky; top: 0; z-index: 10;
}
.sunbar-row { display: flex; gap: 2px; overflow-x: auto; scrollbar-width: none; padding-top: 6px; padding-bottom: 6px; }
.sunbar-row::-webkit-scrollbar { display: none; }
.sunbar a {
	display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; padding: 4px 12px 4px 5px; border-radius: 999px;
	color: var(--heading-2); text-decoration: none; font-weight: 700; font-size: .93rem; white-space: nowrap;
}
.sunbar a img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px rgba(255, 255, 255, .8); }
.sunbar a.plain { padding-left: 12px; }
@media (min-width: 1100px) { .sunbar-row { justify-content: space-between; } }
.sunbar a:hover { background: rgba(255, 255, 255, .55); color: var(--amber-dark); }
.sunbar { background: linear-gradient(180deg, #fde59a, var(--sun-400)); }
.sunbar a.active { background: var(--surface); color: var(--heading); box-shadow: var(--shadow); }

/* --- содержимое --------------------------------------------------------- */
main { padding: 22px 0 64px; min-height: 60vh; }
.breadcrumbs { font-size: .85rem; color: var(--ink-soft); display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.breadcrumbs a { color: var(--ink-soft); }
.breadcrumbs .sep { opacity: .5; }
.meta { color: var(--ink-soft); font-size: .9rem; display: flex; flex-wrap: wrap; gap: 6px 14px; margin: -.2em 0 1.2em; }
.notice { background: var(--sun-100); border: 1px solid var(--line); border-left: 4px solid var(--sun-500); padding: 10px 14px; border-radius: var(--radius-sm); font-size: .92rem; }
.tags { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.tag, .tags a { display: inline-block; padding: 3px 12px; border-radius: 999px; background: var(--sun-100); border: 1px solid var(--line); text-decoration: none; font-size: .88rem; color: var(--amber-dark); }
.tags a:hover { background: var(--sun-200); }
.section-title { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 2.2em 0 .9em; }
.section-title h2 { margin: 0; }
.section-title a { font-size: .92rem; white-space: nowrap; }

/* страница с боковой колонкой */
.layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 40px; align-items: start; }
.layout > aside { position: sticky; top: 64px; }
@media (max-width: 1000px) { .layout { grid-template-columns: 1fr; } .layout > aside { position: static; } }

/* текст статьи */
.prose { max-width: 72ch; font-size: 1.04rem; overflow-wrap: break-word; }
.prose p { margin: 0 0 1em; }
.prose h2, .prose h3 { margin-top: 1.6em; }
.prose img { border-radius: var(--radius-sm); }
.prose img[align=right], .prose img[style*="float: right"], .prose img[style*="float:right"] { float: right; margin: 4px 0 14px 22px; max-width: 45%; }
.prose img[align=left], .prose img[style*="float: left"], .prose img[style*="float:left"] { float: left; margin: 4px 22px 14px 0; max-width: 45%; }
.prose table { border-collapse: collapse; display: block; max-width: 100%; overflow-x: auto; margin: 1em 0; }
.prose td, .prose th { border: 1px solid var(--line); padding: 6px 10px; vertical-align: top; }
.prose ul, .prose ol { padding-left: 1.3em; }
.prose blockquote { margin: 1.2em 0; padding: .4em 1.2em; border-left: 4px solid var(--sun-400); background: var(--sun-100); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; }
.prose::after { content: ""; display: block; clear: both; }

/* --- карточки ------------------------------------------------------------ */
.cards { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 20px; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); }
.card {
	position: relative; display: flex; flex-direction: column; background: var(--surface); border-radius: var(--radius);
	border: 1px solid var(--line); box-shadow: var(--shadow); overflow: hidden; transition: transform .15s ease, box-shadow .15s ease;
}
.card:hover { transform: translateY(-2px); box-shadow: var(--shadow-hover); }
.card-img { aspect-ratio: 16 / 10; background: linear-gradient(135deg, var(--sun-200), var(--honey)); overflow: hidden; }
.card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.card:not(:has(.card-img)) { border-top: 4px solid var(--sun-400); }
.card:not(:has(.card-img)) .card-body { padding-top: 16px; }
.card-body { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.card-kicker { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: var(--amber); font-weight: 600; }
.card h3 { margin: 0; font-size: 1.06rem; line-height: 1.35; }
.card h3 a { color: var(--heading-2); text-decoration: none; }
.card h3 a::after { content: ""; position: absolute; inset: 0; }   /* вся карточка — ссылка */
.card p { margin: 0; color: var(--ink-soft); font-size: .9rem; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.card time { font-size: .82rem; color: var(--ink-soft); }

/* рубрики — плитки без картинок */
.tiles { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.tiles a {
	display: flex; align-items: center; justify-content: space-between; gap: 10px; height: 100%; padding: 14px 16px;
	background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-sm); text-decoration: none;
	color: var(--heading-2); font-weight: 600; transition: background .15s, border-color .15s;
}
.tiles a::after { content: "→"; color: var(--amber); font-weight: 400; }
.tiles a:hover { background: var(--sun-100); border-color: var(--sun-400); }
.tiles small { display: block; font-weight: 400; color: var(--ink-soft); font-size: .82rem; }

/* компактный список (сонник, имена, товары) */
.list { list-style: none; margin: 0 0 24px; padding: 0; }
.list.columns { columns: 3 220px; column-gap: 28px; }
.list li { break-inside: avoid; padding: 5px 0; border-bottom: 1px dashed var(--line); display: flex; justify-content: space-between; gap: 12px; }
.list a { text-decoration: none; color: var(--ink); }
.list a:hover { color: var(--amber); }
.list .count { color: var(--ink-soft); font-size: .85rem; }

/* медиа-список (новости, поиск) */
.media { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 14px; }
.media li { position: relative; display: grid; grid-template-columns: 140px 1fr; gap: 16px; align-items: start; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 12px; box-shadow: var(--shadow); }
.media li.noimg { grid-template-columns: 1fr; }
.media .thumb { aspect-ratio: 4 / 3; border-radius: var(--radius-sm); overflow: hidden; background: var(--sun-100); }
.media .thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.media h3 { margin: 0 0 4px; font-size: 1.05rem; }
.media h3 a { color: var(--heading-2); text-decoration: none; }
.media h3 a::after { content: ""; position: absolute; inset: 0; }
.media p { margin: 0; color: var(--ink-soft); font-size: .92rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.media time, .media .kicker { font-size: .82rem; color: var(--ink-soft); }
@media (max-width: 560px) { .media li { grid-template-columns: 96px 1fr; gap: 12px; } }

/* боковая колонка */
.aside-box { background: linear-gradient(180deg, var(--sun-100), var(--honey)); border: 1px solid var(--line); border-radius: var(--radius); padding: 16px 18px; margin-bottom: 20px; }
.aside-box h2 { font-size: 1.1rem; margin: 0 0 10px; }
.mini { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.mini li { position: relative; display: grid; grid-template-columns: 56px 1fr; gap: 10px; align-items: center; }
.mini li.noimg { grid-template-columns: 1fr; }
.mini img { width: 56px; height: 56px; object-fit: cover; border-radius: 8px; display: block; }
.mini a { color: var(--ink); text-decoration: none; font-size: .92rem; line-height: 1.35; }
.mini a::after { content: ""; position: absolute; inset: 0; }
.mini li:hover a { color: var(--amber); }
.medals { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; text-align: center; }
.medals a { text-decoration: none; color: var(--ink-soft); font-size: .72rem; line-height: 1.2; }
.medals img { width: 48px; height: 48px; border-radius: 50%; display: block; margin: 0 auto 4px; box-shadow: 0 0 0 2px var(--sun-200); }

/* --- главная ------------------------------------------------------------- */
.hero {
	position: relative; overflow: hidden; border-radius: 22px; padding: clamp(24px, 4vw, 44px);
	background:
		radial-gradient(420px 420px at 100% 0%, rgba(255, 255, 255, .7), transparent 60%),
		linear-gradient(135deg, var(--sun-200), var(--sun-400) 70%, var(--sun-500));
	box-shadow: var(--shadow);
}
.hero::after {   /* солнце */
	content: ""; position: absolute; right: -60px; top: -60px; width: 240px; height: 240px; border-radius: 50%;
	background: radial-gradient(circle, #fff7d6 0 35%, rgba(255, 247, 214, .0) 36%), repeating-conic-gradient(from 0deg, rgba(255, 255, 255, .5) 0 6deg, transparent 6deg 18deg);
	opacity: .7; pointer-events: none;
}
.hero h1 { font: 400 clamp(2.4rem, 1.6rem + 3vw, 3.6rem)/1.05 var(--font-script); color: var(--sky-900); margin: 0 0 .25em; }
.hero p { max-width: 36em; margin: 0 0 1.2em; color: var(--ink); font-size: 1.05rem; }
.hero .search { margin: 0; max-width: 520px; flex: none; }
.hero .search input { padding: 13px 52px 13px 20px; font-size: 1rem; }

.sections-grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 900px) { .sections-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.section-card { position: relative; display: flex; gap: 14px; align-items: flex-start; background: linear-gradient(180deg, var(--surface), var(--sun-100)); border: 1px solid var(--line); border-radius: var(--radius); padding: 16px; box-shadow: var(--shadow); height: 100%; }
.section-card img { width: 64px; height: 64px; border-radius: 50%; flex: none; box-shadow: 0 0 0 3px var(--sun-200); }
.section-card h3 { margin: 2px 0 6px; font: 400 1.75rem/1 var(--font-script); }
.section-card h3 a { color: var(--sky-900); text-decoration: none; }
.section-card ul { list-style: none; margin: 0; padding: 0; font-size: .85rem; line-height: 1.45; }
.section-card ul a { color: var(--ink-soft); text-decoration: none; }
.section-card ul a:hover { color: var(--amber); }
@media (max-width: 560px) { .section-card { flex-direction: column; align-items: center; text-align: center; } .section-card ul { display: none; } }

.collections { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.collections a {
	position: relative; display: block; padding: 22px 20px; border-radius: var(--radius); text-decoration: none; color: #fff;
	min-height: 120px; box-shadow: var(--shadow); overflow: hidden; background: linear-gradient(135deg, var(--sky-700), var(--sky-500));
}
.collections li:nth-child(2) a { background: linear-gradient(135deg, #6a4fb3, #9b7fe0); }
.collections li:nth-child(3) a { background: linear-gradient(135deg, var(--amber), var(--sun-500)); }
.collections li:nth-child(4) a { background: linear-gradient(135deg, #2e8b73, #5cc2a2); }
.collections strong { display: block; font: 400 2rem/1.1 var(--font-script); }
.collections span { font-size: .88rem; opacity: .9; }
.collections a::after { content: ""; position: absolute; right: -30px; bottom: -30px; width: 110px; height: 110px; border-radius: 50%; background: rgba(255, 255, 255, .15); }

/* --- раздел ------------------------------------------------------------- */
.section-hero {
	display: flex; gap: 22px; align-items: center; padding: 22px 26px; border-radius: 20px; margin: 10px 0 8px;
	background: radial-gradient(360px 200px at 100% 0%, rgba(255, 255, 255, .7), transparent 70%), linear-gradient(120deg, var(--sun-200), var(--sun-400));
	box-shadow: var(--shadow);
}
.section-hero img { width: 92px; height: 92px; border-radius: 50%; box-shadow: 0 0 0 4px rgba(255, 255, 255, .8); flex: none; }
.section-hero h1 { font: 400 clamp(2.4rem, 1.8rem + 2.5vw, 3.4rem)/1 var(--font-script); color: var(--sky-900); margin: 0; }
.section-hero .tags { margin-top: 10px; }
.section-hero .tags a { background: rgba(255, 255, 255, .7); }
@media (max-width: 560px) { .section-hero { padding: 16px; gap: 14px; } .section-hero img { width: 64px; height: 64px; } }
.about { margin-top: 32px; font-size: .9rem; color: var(--ink-soft); border-top: 1px solid var(--line); padding-top: 14px; }

/* --- пагинация --------------------------------------------------------- */
.pager { display: flex; flex-wrap: wrap; gap: 6px; margin: 28px 0; justify-content: center; }
.pager a, .pager span { min-width: 40px; text-align: center; padding: 7px 12px; border-radius: 999px; background: var(--surface); border: 1px solid var(--line); text-decoration: none; color: var(--ink); }
.pager a:hover { border-color: var(--sun-500); }
.pager .current { background: var(--sun-400); border-color: var(--sun-500); color: var(--sky-900); font-weight: 600; }

/* --- формы (поиск, фильтры) -------------------------------------------- */
.search-big { display: flex; gap: 10px; margin: 8px 0 20px; flex-wrap: wrap; }
.search-big input { flex: 1 1 260px; padding: 12px 18px; font: inherit; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--ink); }
.search-big button, .btn {
	padding: 12px 22px; font: inherit; font-weight: 600; border: 0; border-radius: 999px; cursor: pointer;
	background: linear-gradient(180deg, var(--sun-400), var(--sun-500)); color: var(--sky-900); box-shadow: 0 2px 6px rgba(150, 100, 10, .25);
}

/* --- каталог фирм ------------------------------------------------------- */
.badge { display: inline-block; padding: 1px 9px; border-radius: 999px; background: var(--sun-100); border: 1px solid var(--line); font-size: .78rem; margin-right: 6px; color: var(--amber-dark); }
.firm-filter { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 12px 0; }
.firm-filter input, .firm-filter select { padding: 9px 14px; font: inherit; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--ink); max-width: 100%; }
.firm-filter input[type=search] { flex: 1 1 220px; }
.firm-filter button { padding: 9px 20px; font: inherit; font-weight: 600; border: 0; border-radius: 999px; background: var(--sun-400); color: var(--sky-900); cursor: pointer; }
.alphabet { display: flex; flex-wrap: wrap; gap: 4px; margin: 10px 0 20px; }
.alphabet a { min-width: 2em; text-align: center; padding: 3px 7px; border-radius: 8px; background: var(--surface); border: 1px solid var(--line); text-decoration: none; color: var(--ink); font-size: .9rem; }
.alphabet a:hover { border-color: var(--sun-500); }
.alphabet a.current { background: var(--sun-400); border-color: var(--sun-500); color: var(--sky-900); font-weight: 600; }
.firm-cards { list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 14px; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); }
.firm-cards li { display: flex; flex-direction: column; gap: 3px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 14px 16px; font-size: .92rem; box-shadow: var(--shadow); border-top: 3px solid var(--sun-400); }
.firm-cards .name { font-weight: 600; font-size: 1.02rem; text-decoration: none; color: var(--heading-2); }
.firm-cards .addr, .firm-cards .metro { color: var(--ink-soft); }
.firm-cards .site { overflow-wrap: anywhere; }
dl.firm { display: grid; grid-template-columns: 140px 1fr; gap: 10px 20px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 18px 20px; box-shadow: var(--shadow); }
dl.firm dt { font-weight: 600; color: var(--heading-2); }
dl.firm dd { margin: 0; }
@media (max-width: 560px) { dl.firm { grid-template-columns: 1fr; gap: 2px; } dl.firm dd { margin-bottom: 10px; } }

/* --- подвал: жёлтый с коричневым текстом ----------------------------------- */
.site-footer { background: linear-gradient(180deg, var(--sun-200), var(--sun-400)); color: var(--ink); padding: 32px 0 22px; font-size: .92rem; border-top: 1px solid var(--line); }
.site-footer a { color: var(--ink); text-decoration: none; }
.site-footer a:hover { color: var(--heading-2); text-decoration: underline; }
.footer-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 28px; }
.footer-grid h2 { color: var(--heading-2); font: 700 .8rem/1.2 var(--font-text); text-transform: uppercase; letter-spacing: .08em; margin: 0 0 10px; }
.footer-grid ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 5px; }
.footer-logo { font: 400 2.4rem/1 var(--font-script); color: var(--sky-900); }
.footer-bottom { margin-top: 24px; padding-top: 14px; border-top: 1px solid rgba(120, 70, 0, .2); font-size: .82rem; color: var(--ink-soft); }
@media (max-width: 800px) { .footer-grid { grid-template-columns: 1fr 1fr; } }

/* --- телефон ------------------------------------------------------------- */
@media (max-width: 640px) {
	body { font-size: 16px; }
	.container { padding: 0 16px; }
	.sky-row { flex-wrap: wrap; gap: 10px; padding-top: 10px; padding-bottom: 12px; }
	.logo-mark { font-size: 2.3rem; }
	.logo-tag { display: none; }
	.search { flex: 1 1 100%; order: 3; }
	.prose img[align], .prose img[style*="float"] { float: none !important; display: block; margin: 10px auto; max-width: 100%; }
	.cards { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
	.card-body { padding: 10px 12px 12px; }
	.card h3 { font-size: .98rem; }
	.card p { display: none; }
}
