/*!
Theme Name: Fintech & Banking
Theme URI: http://underscores.me/
Author: Ilyas Yakubov
Author URI: http://underscores.me/
Description: Custom theme for Fintech & Banking, built on Underscores
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: fintech-banking
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Fintech & Banking is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* =========================================================
   Fix: эмодзи (⚠️ и т.п.) обрезаются/ломаются внутри кастомных
   веб-шрифтов (Inter/Manrope с Google Fonts) — у них нет цветных
   emoji-глифов, и браузер иногда пытается нарисовать «свой» плоский
   вариант вместо честного фолбэка на системный emoji-шрифт.
   Явно закрепляем emoji-диапазоны за системными шрифтами через
   тот же font-family, чтобы фолбэк точно срабатывал.
   ========================================================= */
@font-face{
  font-family:'Inter';
  src:local('Apple Color Emoji');
  unicode-range:U+1F300-1FAFF,U+2600-27BF,U+2190-21FF,U+2B00-2BFF,U+FE0F,U+200D;
}
@font-face{
  font-family:'Inter';
  src:local('Segoe UI Emoji');
  unicode-range:U+1F300-1FAFF,U+2600-27BF,U+2190-21FF,U+2B00-2BFF,U+FE0F,U+200D;
}
@font-face{
  font-family:'Inter';
  src:local('Noto Color Emoji');
  unicode-range:U+1F300-1FAFF,U+2600-27BF,U+2190-21FF,U+2B00-2BFF,U+FE0F,U+200D;
}
@font-face{
  font-family:'Manrope';
  src:local('Apple Color Emoji');
  unicode-range:U+1F300-1FAFF,U+2600-27BF,U+2190-21FF,U+2B00-2BFF,U+FE0F,U+200D;
}
@font-face{
  font-family:'Manrope';
  src:local('Segoe UI Emoji');
  unicode-range:U+1F300-1FAFF,U+2600-27BF,U+2190-21FF,U+2B00-2BFF,U+FE0F,U+200D;
}
@font-face{
  font-family:'Manrope';
  src:local('Noto Color Emoji');
  unicode-range:U+1F300-1FAFF,U+2600-27BF,U+2190-21FF,U+2B00-2BFF,U+FE0F,U+200D;
}

/* =========================================================
   Fintech & Banking — дизайн-система Главной (home-prototype-left.html)
   Вставить в КОНЕЦ style.css темы, после стандартных стилей _s.
   ========================================================= */

:root{
  --pink:#f8a0c8;
  --mint:#9be8c8;
  --sky:#6fd6ea;
  --navy:#12232b;
  --navy-deep:#173c4a;
  --ink-soft:#4c5c63;
  --paper:#fbfcfc;
  --card:#ffffff;
  --line:#e7edee;
  --radius:20px;
}

body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  color:var(--navy);
  background:var(--paper);
  line-height:1.55;
  padding-top:80px;
}
body:has(#navCheck:checked){padding-top:300px;}
h1,h2,h3,.logotype{font-family:'Manrope',sans-serif;}
.wrap{max-width:1160px;margin:0 auto;padding:0 32px;}

/* header */
/* height:80px + display:flex(stretch) — раньше высота #masthead была
   "по контенту" (~77.5px), а body{padding-top}/.mobile-nav{top}/
   .search-panel{top} везде захардкожены на 80px в расчёте на высоту
   шапки. Разница ~2.5px давала постоянный маленький зазор между шапкой и
   остальным контентом (виден и в свёрнутом виде, не только при открытой
   панели поиска). Явная height:80px делает шапку РЕАЛЬНО той высоты, на
   которую рассчитаны все остальные offset'ы — stretch растягивает
   .nav-row на всю высоту, а её собственный align-items:center по-прежнему
   центрирует лого/меню внутри. */
#masthead{position:fixed;top:0;left:0;right:0;z-index:50;height:80px;display:flex;background:rgba(251,252,252,0.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.nav-row{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;max-width:1160px;width:100%;margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;}
.brand img{display:block;height:30px;width:auto;}
.links{display:flex;gap:20px;font-size:14.5px;font-weight:500;color:var(--ink-soft);white-space:nowrap;list-style:none;margin:0;padding:0;}
.links li{list-style:none;}
.links a{color:inherit;text-decoration:none;}
.links a:hover{color:var(--navy);}
.nav-right{display:flex;align-items:center;gap:14px;}
.nav-check{display:none;}
.menu-toggle{display:none;cursor:pointer;padding:10px 8px;flex-shrink:0;}
.menu-toggle span{display:block;width:20px;height:2px;background:var(--navy);border-radius:2px;}
.menu-toggle span + span{margin-top:5px;}
.mobile-nav li{list-style:none;}
.mobile-nav a{display:block;padding:12px 0;font-size:15.5px;font-weight:600;color:var(--navy);border-bottom:1px solid var(--line);text-decoration:none;}
.mobile-nav li:last-child a{border-bottom:none;}
.tg-icon{width:16px;height:16px;flex-shrink:0;}
.cta-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--navy);color:#fff;font-weight:600;font-size:14.5px;
  padding:11px 20px;border-radius:999px;white-space:nowrap;text-decoration:none;
}
.cta-btn.ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy);}
.cta-btn.ghost.light{color:#fff;border-color:rgba(255,255,255,0.5);}
.cta-btn.ghost.light:hover{border-color:#fff;}
.cta-btn.grad{background:linear-gradient(120deg,var(--pink),var(--sky));color:#12232b;}

/* hero */
.hero{position:relative;overflow:hidden;padding:72px 0 56px;}
.hero-blob{
  position:absolute;top:-160px;right:-140px;width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle at 38% 30%, var(--pink) 0%, var(--mint) 45%, var(--sky) 100%);
  opacity:0.55;filter:blur(2px);
}
.hero-inner{position:relative;max-width:1160px;text-align:left;}
.eyebrow{display:inline-block;font-size:13.5px;font-weight:700;letter-spacing:.02em;color:var(--navy-deep);
  background:rgba(155,232,200,0.35);padding:6px 14px;border-radius:999px;margin-bottom:22px;}
.hero h1{font-size:46px;font-weight:800;line-height:1.12;margin:0 0 20px;letter-spacing:-0.01em;max-width:680px;}
.hero p.lead{font-size:18px;color:var(--ink-soft);max-width:560px;margin:0 0 32px;}
.hero-ctas{display:flex;gap:14px;margin-bottom:44px;flex-wrap:wrap;}
.stats-row{display:flex;gap:36px;flex-wrap:wrap;padding-top:28px;border-top:1px solid var(--line);}
.stat b{display:block;font-size:26px;font-weight:800;font-family:'Manrope',sans-serif;}
.stat span{font-size:13.5px;color:var(--ink-soft);}

.front-page section{padding:64px 0;scroll-margin-top:16px;}
.section-head{max-width:620px;margin-bottom:36px;}
.section-head .kicker{font-size:13px;font-weight:700;color:var(--navy-deep);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px;}
.section-head h2{font-size:30px;font-weight:800;margin:0 0 10px;}
.section-head p{color:var(--ink-soft);font-size:15.5px;margin:0;}
.section-head-link{display:inline-block;margin-left:10px;font-weight:600;color:var(--navy-deep);white-space:nowrap;}

/* offers */
.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.offer-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;}
.offer-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;font-size:20px;}
.offer-card h3{font-size:18px;margin:0 0 10px;}
.offer-card p{font-size:14.5px;color:var(--ink-soft);margin:0 0 22px;flex-grow:1;}
.offer-card .cta-btn{align-self:flex-start;}

/* intent (сегментация Главной "с чего начать") */
.intent-grid{grid-template-columns:repeat(4,1fr);}
.intent-card{text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease;}
.intent-card:hover{border-color:var(--navy-deep);transform:translateY(-2px);}
.intent-card .arrow{margin-top:auto;padding-top:4px;font-size:13.5px;font-weight:600;color:var(--navy-deep);}
@media (max-width:1100px){
	.intent-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
	.intent-grid{grid-template-columns:1fr;}
}

/* posts */
.post-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.post-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;min-height:190px;text-decoration:none;color:inherit;}
.post-tag{display:inline-block;align-self:flex-start;font-size:12px;font-weight:700;color:var(--navy-deep);background:rgba(111,214,234,0.18);padding:4px 10px;border-radius:999px;margin-bottom:14px;}
.post-card h3{font-size:15.5px;font-weight:700;margin:0;line-height:1.4;}
.post-card .arrow{margin-top:auto;padding-top:16px;font-size:13.5px;font-weight:600;color:var(--navy-deep);}

/* categories */
/* 12.07.2026: grid-auto-flow:column + grid-template-rows вместо построчного
   auto-flow — чтобы карточки читались сверху вниз, потом слева направо
   (сначала весь левый столбец, потом следующий), а не построчно слева
   направо. Так это работает одинаково на 3 колонках (десктоп) и 2 колонках
   (планшет/мобильный, см. медиа-запросы ниже) без ручной транспонировки
   порядка в PHP — там теперь просто прямой порядок чтения, см.
   fintech_banking_ordered_categories() в functions.php. Число строк
   (grid-template-rows) нужно держать синхронно с количеством карточек:
   сейчас 15 карточек → 5 строк на 3 колонках, 8 строк на 2 колонках. Если
   карточек станет больше/меньше — поправить repeat(N,auto) в обоих местах. */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:column;grid-template-rows:repeat(5,auto);gap:16px;}
.cat-card{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px 20px;text-decoration:none;color:inherit;}
.cat-thumb{width:56px;height:56px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:24px;}
.cat-card span{font-size:15px;font-weight:600;}

/* projects (dark) */
.projects{background:var(--navy-deep);color:#fff;border-radius:28px;margin:0 32px;padding:56px 40px;max-width:1096px;margin-left:auto;margin-right:auto;}
.projects .section-head p{color:rgba(255,255,255,0.7);}
.projects .section-head .kicker{color:var(--mint);}
.proj-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.proj-card{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:16px;padding:22px;}
.proj-card b{display:block;font-size:22px;font-weight:800;font-family:'Manrope',sans-serif;margin-bottom:6px;}
.proj-card .label{font-size:14.5px;font-weight:600;margin-bottom:10px;}
.proj-card p{font-size:13.5px;color:rgba(255,255,255,0.65);margin:0 0 18px;}
.proj-card a{font-size:13.5px;font-weight:700;color:#fff;border-bottom:1.5px solid var(--mint);padding-bottom:2px;text-decoration:none;}

/* footer */
/* margin-top убран: перед футером и так уже есть свой нижний отступ у
   контента (у .front-page section — padding-bottom:64px, у .content-area
   на остальных шаблонах — padding-bottom:80px), плюс собственный
   padding-top:56px здесь же. Со старым margin-top:64px три отступа
   складывались и перед футером получалось ~184px пустоты. */
.site-footer{padding:56px 0 32px;border-top:1px solid var(--line);}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;}
.footer-col-brand .brand{display:inline-flex;margin-bottom:14px;}
.footer-blurb{font-size:14px;line-height:1.6;color:var(--ink-soft);max-width:340px;margin:0 0 16px;}
.footer-social-link{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--navy-deep);}
.footer-col-title{font-size:12.5px;font-weight:700;color:var(--navy-deep);text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;}
.footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px;color:var(--ink-soft);list-style:none;margin:0;padding:0;}
.footer-links li{list-style:none;}
.footer-links a{color:inherit;text-decoration:none;}
.footer-links a:hover{color:var(--navy);}
.footer-bottom{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);}
.footer-copy{font-size:13px;color:var(--ink-soft);}
@media (max-width:820px){
	.footer-top{grid-template-columns:1fr 1fr;}
	.footer-col-brand{grid-column:1 / -1;}
}
@media (max-width:600px){
	.footer-top{grid-template-columns:1fr;gap:32px;}
}

@media (max-width:900px){
  .offer-grid,.post-grid,.proj-grid{grid-template-columns:repeat(2,1fr);}
  .cat-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(8,auto);}
  .hero h1{font-size:34px;}
  .projects{margin:0 16px;padding:40px 24px;}
}
@media (max-width:900px){
  /* Было 820px — с добавлением иконки поиска в .nav-right шапке стало
     тесно уже при 820-880px (лого/меню наезжали на иконку поиска и
     Telegram-кнопку). Порог сдвинут до 900px, чтобы был запас. */
  .links{display:none;}
  .menu-toggle{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;}
}
@media (max-width:600px){
  .offer-grid,.post-grid,.proj-grid{grid-template-columns:1fr;}
  /* 1 колонка — возвращаем обычный построчный auto-flow, иначе
     grid-auto-flow:column с унаследованными 8 строками из 900px-медиа
     запроса начнёт создавать «призрачную» вторую колонку. */
  .cat-grid{grid-template-columns:1fr;grid-auto-flow:row;grid-template-rows:none;}
}
@media (max-width:480px){
  .header-cta{width:40px;height:40px;padding:0;border-radius:50%;justify-content:center;gap:0;}
  .header-cta .header-cta-text{display:none;}
}

/* =========================================================
   Fix: реальное «Главное меню» (База знаний/Компании/Сервисы
   с вложенными подменю) вместо плоских 4 пунктов прототипа.
   Вставить в КОНЕЦ style.css, ПОСЛЕ style-additions.css —
   правила ниже переопределяют .links/.mobile-nav из того файла.
   ========================================================= */

/* ---------- Десктоп: выпадающие подменю ---------- */
.links{position:relative;align-items:center;}
.links li{position:relative;}
.links > li > a{display:block;padding:8px 0;}

.links .sub-menu{
  display:none;
  position:absolute;top:100%;left:0;
  flex-direction:column;
  min-width:240px;
  max-height:60vh;overflow-y:auto;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:14px;
  padding:10px;
  box-shadow:0 12px 32px rgba(18,35,43,0.12);
  gap:0;
  z-index:60;
}
.links li:hover > .sub-menu,
.links li:focus-within > .sub-menu{display:flex;}

.links .sub-menu li{width:100%;}
.links .sub-menu a{
  display:block;padding:8px 12px;border-radius:8px;
  font-size:14px;font-weight:500;white-space:nowrap;
}
.links .sub-menu a:hover{background:rgba(111,214,234,0.15);}

/* Третий уровень (Финтехи → EMI/CASP/Крипто без лицензии) — было flyout вправо,
   но родитель (.sub-menu «База знаний») со скроллом (overflow-y:auto для
   длинного списка «Компании») обрезал flyout, вылезающий за left:100%.
   Проще и надёжнее — показывать сразу отступом внутри списка. */
.links .sub-menu .sub-menu{
  display:block;
  position:static;
  min-width:0;
  max-height:none;
  overflow:visible;
  background:none;
  border:none;
  box-shadow:none;
  padding:2px 0 2px 14px;
  margin:0;
}
.links .sub-menu .sub-menu a{font-size:13.5px;color:var(--ink-soft);}

/* ---------- Hover-эффект и подсветка активного пункта меню ---------- */
/* WP сам добавляет current-menu-item/current_page_item (и *-ancestor —
   для родителя, если открыт вложенный пункт) к <li> — достаточно просто
   стилизовать эти классы, без правок в PHP. */
.links > li > a{position:relative;transition:color .15s ease;}

/* Индикатор наведения и текущей страницы — неяркая серая точка под
   пунктом (раньше была полоска-подчёркивание — по просьбе Ильяса
   07.07.2026 заменили на точку и для hover, и для активного пункта). */
.links > li > a::before{
  content:'';position:absolute;left:50%;bottom:-3px;
  width:5px;height:5px;border-radius:50%;
  background:#a3adb2;transform:translateX(-50%) scale(0);
  transition:transform .15s ease;
}
.links > li > a:hover::before,
.links > li.current-menu-item > a::before,
.links > li.current-menu-ancestor > a::before,
.links > li.current_page_item > a::before,
.links > li.current_page_ancestor > a::before{transform:translateX(-50%) scale(1);}

.links > li.current-menu-item > a,
.links > li.current-menu-ancestor > a,
.links > li.current_page_item > a,
.links > li.current_page_ancestor > a{color:var(--navy);font-weight:700;}

.links .sub-menu li.current-menu-item > a,
.links .sub-menu li.current_page_item > a,
.links .sub-menu li.current-menu-ancestor > a,
.links .sub-menu li.current_page_ancestor > a{
  color:var(--navy);font-weight:700;background:rgba(111,214,234,0.15);
}

/* ---------- Мобильное меню: полноэкранная панель вместо push-down ---------- */
body:has(#navCheck:checked){padding-top:80px;} /* больше не раздвигаем страницу */

.mobile-nav{
  display:none;
  position:fixed;top:80px;left:0;right:0;
  /* Раньше была фиксированная height (не max-height) — все подменю были
     всегда развёрнуты, контент реально занимал весь экран. Теперь пункты
     свёрнуты по умолчанию (details/summary), контент стал короче height
     оставляла под собой пустое поле фона на весь экран. max-height вместо
     height: панель растёт по контенту и включает скролл, только если
     раскрытые пункты не помещаются на экран. */
  max-height:calc(100vh - 80px);
  max-height:calc(100dvh - 80px);
  margin:0;
  padding:8px 24px 24px;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  background:var(--paper);
  list-style:none;
  z-index:49;
}
.nav-check:checked ~ .mobile-nav{display:block;}

.mobile-nav li{list-style:none;}
.mobile-nav > li > a{font-size:16px;font-weight:700;}
.mobile-nav .sub-menu{padding-left:16px;}
.mobile-nav .sub-menu a{font-size:14.5px;font-weight:500;color:var(--ink-soft);padding:10px 0;}

/* ---------- Сворачиваемые подменю (details/summary, без JS) ---------- */
/* Пункты с детьми (База знаний/Компании/Сервисы/Финтехи) рендерятся кастомным
   Walker'ом (Fintech_Banking_Mobile_Nav_Walker) как <details><summary> —
   свёрнуты по умолчанию, разворачиваются тапом по summary. Раньше все ~15
   пунктов «База знаний» были всегда развёрнуты и меню было слишком длинным. */
.mobile-nav details{border-bottom:1px solid var(--line);}
.mobile-nav li:last-child > details{border-bottom:none;}
.mobile-nav details summary{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:12px 0;cursor:pointer;list-style:none;
}
.mobile-nav details summary::-webkit-details-marker{display:none;}
.mobile-nav details summary::marker{content:'';}
/* flex:1 НЕ ставим на <a> внутри summary: если ссылка растянута на всю
   строку, тап в любом месте строки (не только по тексту) активирует
   переход по ссылке вместо разворачивания — проверено вживую (тап по
   «Финтехи» уводил на страницу рубрики вместо раскрытия EMI/CASP/...).
   Ссылка занимает только свою фактическую ширину, остальная часть строки
   (клик мимо текста) — обычный клик по summary, разворачивает список. */
.mobile-nav details summary a{padding:0;border-bottom:none;flex:0 0 auto;}
.mobile-nav details summary span:not(.details-chevron){flex:1;}
.mobile-nav > li > details > summary,
.mobile-nav > li > details > summary a{font-size:16px;font-weight:700;color:var(--navy);}
.mobile-nav .sub-menu details > summary,
.mobile-nav .sub-menu details > summary a{font-size:14.5px;font-weight:500;color:var(--ink-soft);padding:10px 0;}
.mobile-nav details .details-chevron{
  flex-shrink:0;width:16px;height:16px;color:var(--ink-soft);
  transition:transform .15s ease;
}
.mobile-nav details[open] > summary .details-chevron{transform:rotate(180deg);}
.mobile-nav details .sub-menu{padding-left:16px;margin:0;border-top:1px solid var(--line);padding-top:4px;}

/* Подсветка активного пункта — те же current-menu-item/current_page_item
   классы, что и у десктопного меню. */
.mobile-nav > li.current-menu-item > a,
.mobile-nav > li.current-menu-item > details > summary a,
.mobile-nav > li.current-menu-ancestor > a,
.mobile-nav > li.current-menu-ancestor > details > summary a,
.mobile-nav > li.current_page_item > a,
.mobile-nav > li.current_page_item > details > summary a,
.mobile-nav > li.current_page_ancestor > a,
.mobile-nav > li.current_page_ancestor > details > summary a{color:var(--navy-deep);}
.mobile-nav .sub-menu li.current-menu-item > a,
.mobile-nav .sub-menu li.current-menu-item > details > summary a,
.mobile-nav .sub-menu li.current_page_item > a,
.mobile-nav .sub-menu li.current_page_item > details > summary a,
.mobile-nav .sub-menu li.current-menu-ancestor > a,
.mobile-nav .sub-menu li.current-menu-ancestor > details > summary a,
.mobile-nav .sub-menu li.current_page_ancestor > a,
.mobile-nav .sub-menu li.current_page_ancestor > details > summary a{color:var(--navy-deep);font-weight:700;}
.mobile-nav .sub-menu .sub-menu{padding-left:16px;}

/* =========================================================
   Fix: WP admin-bar (чёрная полоса сверху для залогиненных)
   перекрывает fixed-хедер сайта. Видно только Ильясу/клиенту
   в админке — обычным посетителям сайта не мешает.
   Вставить в КОНЕЦ style.css, ПОСЛЕ nav-dropdown-fix.css.

   ВАЖНО: WP core сам добавляет html{margin-top:32px} (46px на
   мобильном) когда показан admin-bar — это уже сдвигает весь
   normal-flow контент вниз. Поэтому padding-top у body НЕ нужно
   увеличивать на высоту admin-bar — это даёт двойной отступ
   (баг был именно в этом: 32px лишнего зазора между хедером и
   первым блоком). padding-top тела остаётся как в обычном
   режиме (80px = высота хедера) — увеличивать нужно только
   top у fixed-элементов (#masthead, .mobile-nav), т.к. они
   позиционируются от реального вьюпорта, а не от html/body.
   ========================================================= */

body.admin-bar #masthead{top:32px;}
body.admin-bar .mobile-nav{top:112px;max-height:calc(100vh - 112px);max-height:calc(100dvh - 112px);}
body.admin-bar .search-panel{top:112px;}

@media screen and (max-width:782px){
  body.admin-bar #masthead{top:46px;}
  body.admin-bar .mobile-nav{top:126px;max-height:calc(100vh - 126px);max-height:calc(100dvh - 126px);}
  body.admin-bar .search-panel{top:126px;}
}

/* =========================================================
   Поиск в шапке: иконка-переключатель + выпадающая панель с
   формой (тот же checkbox-приём без JS, что и у мобильного
   меню — .nav-check/.mobile-nav). Разметка формы — дефолтная
   get_search_form(), стили под неё уже заданы ниже в блоке
   "Форма поиска" (.search-form/.search-field/.search-submit).
   Вставить в КОНЕЦ style.css.
   ========================================================= */

.search-check{display:none;}
.search-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:50%;flex-shrink:0;
  color:var(--navy);cursor:pointer;
}
.search-toggle:hover{background:rgba(18,35,43,0.06);}

.search-panel{
  display:none;
  position:fixed;top:80px;left:0;right:0;z-index:55;
  background:var(--card);border-bottom:1px solid var(--line);
  box-shadow:0 12px 32px rgba(18,35,43,0.10);
  padding:20px 0;
}
.search-check:checked ~ .search-panel{display:block;}
.search-panel .wrap{max-width:640px;}
.search-panel .search-form{max-width:none;margin:0;}

/* =========================================================
   Fix: браузер подсвечивает уже посещённые ссылки (:visited)
   поверх наших цветов кнопок — фиолетовый текст на Telegram-CTA.
   Вставить в КОНЕЦ style.css, последним блоком.
   ========================================================= */

.cta-btn:visited{color:#fff;}
.cta-btn.ghost:visited{color:var(--navy);}
.cta-btn.ghost.light:visited{color:#fff;}
.cta-btn.grad:visited{color:#12232b;}
.links a:visited,
.mobile-nav a:visited,
.footer-links a:visited,
.post-card:visited,
.cat-card:visited,
.proj-card a:visited{color:inherit;}

/* =========================================================
   Fintech & Banking — архивы (рубрика/тег/поиск), одиночный
   пост, 404. Продолжение дизайн-системы Главной (токены и
   компоненты — см. style-additions.css).
   Вставить в КОНЕЦ style.css, после всех предыдущих блоков.
   ========================================================= */

.content-area{padding-top:56px;padding-bottom:80px;}

/* ---------- Хлебные крошки ---------- */
.breadcrumbs{max-width:760px;margin:0 auto 20px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;color:var(--ink-soft);}
.breadcrumb-item a{color:var(--ink-soft);text-decoration:none;}
.breadcrumb-item a:hover{color:var(--navy-deep);text-decoration:underline;}
.breadcrumb-item [aria-current="page"]{color:var(--navy);font-weight:600;}
.breadcrumb-sep{color:var(--line);}

/* ---------- Шапка архива (рубрика/тег/поиск) ---------- */
.archive-header{max-width:760px;margin:0 auto 48px;text-align:left;}
.archive-header .kicker{font-size:13px;font-weight:700;color:var(--navy-deep);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px;}
.archive-header h1{font-size:36px;font-weight:800;margin:0 0 12px;line-height:1.15;}
.archive-header .archive-description{color:var(--ink-soft);font-size:16px;margin:0 0 10px;}
.archive-header .archive-count{font-size:13.5px;color:var(--ink-soft);}

/* ---------- Табы-фильтр по рубрикам (хаб статей) ---------- */
.rubric-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 40px;}
.rubric-tab{
  display:inline-flex;align-items:center;padding:9px 16px;border-radius:999px;
  border:1.5px solid var(--line);font-size:14px;font-weight:600;color:var(--ink-soft);
  white-space:nowrap;
}
.rubric-tab:hover{border-color:var(--navy-deep);color:var(--navy);}
.rubric-tab.is-active{background:var(--navy);border-color:var(--navy);color:#fff;}
@media (max-width:600px){
  .rubric-tabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:4px;margin-left:-32px;margin-right:-32px;padding-left:32px;padding-right:32px;}
}

/* ---------- Сетка карточек архива ---------- */
.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:48px;}
.archive-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;text-decoration:none;color:inherit;}
.archive-card .archive-card-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px;}
.archive-card .post-tag{margin-bottom:0;align-self:auto;}
.archive-card h2{font-size:18px;font-weight:700;margin:0 0 10px;line-height:1.35;}
.archive-card .archive-card-excerpt{font-size:14.5px;color:var(--ink-soft);margin:0 0 18px;flex-grow:1;}
.archive-card .archive-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--ink-soft);padding-top:14px;border-top:1px solid var(--line);}
.archive-card .archive-card-meta .arrow{font-weight:600;color:var(--navy-deep);}

/* ---------- Пагинация ---------- */
.pagination,
.navigation.pagination{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:24px;}
.pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:40px;height:40px;padding:0 12px;border-radius:999px;
  border:1.5px solid var(--line);color:var(--navy);font-weight:600;font-size:14px;
  text-decoration:none;
}
.pagination .page-numbers.current{background:var(--navy);border-color:var(--navy);color:#fff;}
.pagination .page-numbers.dots{border:none;}

/* ---------- Форма поиска ---------- */
/* WP оборачивает <input class="search-field"> в <label> (стандартная
   разметка get_search_form()) — реальный flex-элемент внутри .search-form
   это <label>, а не сам инпут. flex:1 на .search-field раньше ни на что не
   влиял: инпут не растягивался, оставался на ширине min-width (220px) и
   вся группа "поле+кнопка" прижималась к левому краю центрированного
   max-width:480px блока — на 404 это было особенно заметно рядом с
   реально центрированными заголовком/кнопкой "На Главную". Даём flex:1
   самому <label>, а инпут внутри него растягиваем на 100% — так поле
   реально заполняет доступную ширину и во всех местах, где переиспользуется
   .search-form (404, "ничего не найдено", выпадающая панель в шапке). */
.search-form{display:flex;gap:10px;max-width:480px;margin:0 auto;flex-wrap:wrap;}
.search-form label{flex:1;display:flex;min-width:220px;}
.search-form .search-field{
  flex:1;width:100%;min-width:0;padding:12px 18px;border-radius:999px;
  border:1.5px solid var(--line);font-family:inherit;font-size:15px;color:var(--navy);
}
.search-form .search-field:focus{outline:none;border-color:var(--sky);}
.search-form .search-submit{
  background:var(--navy);color:#fff;font-weight:600;font-size:14.5px;
  padding:11px 24px;border-radius:999px;border:none;cursor:pointer;
}

.no-results{max-width:480px;margin:0 auto;text-align:center;}
.no-results p{color:var(--ink-soft);margin-bottom:24px;}
.no-results .search-form{margin-bottom:0;}

/* ---------- 404 ---------- */
.error-404{max-width:480px;margin:64px auto;text-align:center;}
.error-404 .error-code{font-family:'Manrope',sans-serif;font-size:72px;font-weight:800;color:var(--navy);line-height:1;margin-bottom:12px;}
.error-404 h1{font-size:26px;font-weight:800;margin:0 0 14px;}
.error-404 p{color:var(--ink-soft);margin:0 0 28px;}
.error-404 .search-form{margin-bottom:28px;}

/* ---------- Одиночный пост ---------- */
.single-post{max-width:760px;margin:0 auto;}
.single-post .entry-header{margin-bottom:28px;}
.single-post .entry-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;}
.single-post .entry-title{font-size:32px;font-weight:800;line-height:1.2;margin:0 0 16px;}
.single-post .entry-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:13.5px;color:var(--ink-soft);padding-bottom:24px;border-bottom:1px solid var(--line);}
.single-post .entry-content{font-size:16.5px;line-height:1.75;color:var(--navy);}
.single-post .entry-content p{margin:0 0 20px;}
.single-post .entry-content img,
.single-post .entry-content .tg-post-image{border-radius:16px;margin:8px 0 20px;object-fit:contain;background:#f5f5f5;max-height:480px;width:auto;max-width:100%;}
.single-post .entry-content a{color:var(--navy-deep);text-decoration:underline;text-underline-offset:2px;}
.single-post .entry-footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--line);display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.single-post .entry-footer .entry-footer-label{font-size:13px;color:var(--ink-soft);margin-right:4px;}
.single-post .entry-footer a.post-tag{text-decoration:none;}

/* ---------- Кнопка "Оригинал в Telegram" (после текста, до меток) ---------- */
.original-tg-wrap{display:flex;justify-content:flex-start;margin:8px 0 24px;}
.original-tg-btn{font-size:13.5px;padding:9px 18px;}

/* ---------- CTA-подписка в конце поста ---------- */
.post-subscribe-cta{
	background:var(--navy-deep);color:#fff;border-radius:var(--radius);
	padding:32px 36px;margin-top:32px;
	display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
}
.post-subscribe-text h3{font-size:20px;font-weight:800;margin:0 0 8px;}
.post-subscribe-text p{font-size:14.5px;color:rgba(255,255,255,0.7);margin:0;max-width:420px;}
.post-subscribe-ctas{display:flex;gap:12px;flex-wrap:wrap;flex-shrink:0;}
@media (max-width:600px){
	.post-subscribe-cta{padding:26px 24px;}
	.post-subscribe-ctas{width:100%;}
	.post-subscribe-ctas .cta-btn{flex:1;justify-content:center;}
}

/* ---------- Статичная страница (page.php) — та же типографика, что у поста ---------- */
.static-page .post-thumbnail{margin:0 0 28px;}
.static-page .post-thumbnail img{border-radius:16px;}
.static-page .entry-footer{justify-content:flex-end;}
.static-page .edit-link a{color:var(--ink-soft);font-size:13.5px;}

/* ---------- "Другие рубрики" в конце архива ---------- */
.other-rubrics{margin-top:16px;padding-top:32px;border-top:1px solid var(--line);}
.other-rubrics-label{font-size:13px;font-weight:700;color:var(--navy-deep);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;text-align:center;}
.other-rubrics .rubric-tabs{margin-bottom:0;}

/* ---------- Похожие посты (конец single.php) ---------- */
.related-posts{margin-top:56px;}
.related-posts .section-head{max-width:100%;margin-bottom:24px;}
.related-posts .related-grid{margin-bottom:0;}

.post-navigation{max-width:760px;margin:40px auto 0;}
.post-navigation .nav-links{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.post-navigation .nav-previous,
.post-navigation .nav-next{flex:1;min-width:220px;}
.post-navigation a{
  display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;
  padding:16px 20px;text-decoration:none;color:inherit;font-size:14px;font-weight:600;
}
.post-navigation .nav-next{text-align:right;}
.post-navigation a:hover{border-color:var(--sky);}

@media (max-width:900px){
  .archive-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
  .archive-grid{grid-template-columns:1fr;}
  .archive-header h1{font-size:28px;}
  .single-post .entry-title{font-size:26px;}
}


/* =========================================================
   Fix: слишком большой отступ у списков внутри контента поста.
   Вставить в КОНЕЦ style.css, последним блоком.
   ========================================================= */

.single-post .entry-content ul,
.single-post .entry-content ol{
  margin:0 0 20px;
  padding-left:22px;
}
.single-post .entry-content li{
  margin-bottom:8px;
  padding-left:4px;
}
.single-post .entry-content li:last-child{margin-bottom:0;}
.single-post .entry-content ul ul,
.single-post .entry-content ol ol,
.single-post .entry-content ul ol,
.single-post .entry-content ol ul{margin:8px 0 0;}

/* =========================================================
   Fix: подпись "Метки:" в одну строку с плашками (не над ними —
   отдельной строкой было визуально хуже), но с нормальным
   вертикальным выравниванием + неточное название
   "Компании и сервисы" заменено на нейтральное "Метки:"
   (среди меток есть и концепты вроде IBAN/SEPA/EMI).
   ========================================================= */

.single-post .entry-footer{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
.single-post .entry-footer .entry-footer-label{
  flex-shrink:0;
  font-size:14.5px;
  font-weight:700;
  color:var(--navy-deep);
  white-space:nowrap;
  line-height:1;
}
.single-post .entry-footer .entry-footer-tags{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.single-post .entry-footer .entry-footer-tags .post-tag,
.single-post .entry-tags .post-tag{
  align-self:auto;
  margin-bottom:0;
}

/* Fix: дефолтное правило _s `.site-main .post-navigation{margin:0 0 1.5em;}`
   (специфичность — 2 класса) перебивало наш отступ `.post-navigation{margin:40px auto 0}`
   (1 класс) — та же специфичность здесь, побеждает по порядку (мы позже). */
.site-main .post-navigation{
  margin:40px auto 0;
}

/* =========================================================
   Комментарии — были не стилизованы вовсе (дефолт _s).
   ========================================================= */

.comments-area{
  max-width:760px;
  margin:48px auto 0;
  padding-top:40px;
  border-top:1px solid var(--line);
}

.comments-title{
  font-family:'Manrope',sans-serif;
  font-size:24px;
  font-weight:800;
  margin:0 0 24px;
  color:var(--navy);
}

.comment-list{list-style:none;margin:0 0 32px;padding:0;}
.comment-list .comment,
.comment-list .pingback{margin-bottom:16px;}
.comment-list .children{list-style:none;margin:16px 0 0;padding:0 0 0 32px;}

.comment-body{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:16px;
  padding:20px 22px;
}
.comment-author{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.comment-author .avatar{border-radius:999px;}
.comment-author .fn{font-style:normal;font-weight:700;font-size:14.5px;color:var(--navy);}
.comment-author .says{display:none;}
.comment-metadata{font-size:12.5px;color:var(--ink-soft);margin-bottom:10px;}
.comment-metadata a{color:inherit;}
.comment-content p{font-size:15px;line-height:1.6;margin:0 0 10px;color:var(--navy);}
.comment-content p:last-child{margin-bottom:0;}
.reply{margin-top:10px;}
.comment-reply-link{
  display:inline-flex;font-size:13px;font-weight:600;color:var(--navy-deep);
  background:rgba(111,214,234,0.18);padding:4px 12px;border-radius:999px;text-decoration:none;
}

.comment-navigation .nav-links{display:flex;justify-content:space-between;gap:16px;margin-bottom:20px;}

.no-comments{color:var(--ink-soft);font-size:14.5px;margin:0 0 32px;}

/* Форма ответа */
.comment-respond{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:28px 28px 24px;
}
.comment-reply-title{
  font-family:'Manrope',sans-serif;
  font-size:20px;
  font-weight:800;
  margin:0 0 6px;
  color:var(--navy);
}
.comment-notes,
.logged-in-as{font-size:14px;color:var(--ink-soft);margin:0 0 18px;}
.logged-in-as a{color:var(--navy-deep);}
.comment-form p{margin:0 0 16px;}
.comment-form label{display:block;font-size:13.5px;font-weight:700;color:var(--navy);margin-bottom:8px;}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea{
  width:100%;
  font-family:inherit;
  font-size:15px;
  color:var(--navy);
  border:1.5px solid var(--line);
  border-radius:14px;
  padding:12px 16px;
  background:var(--paper);
}
.comment-form input:focus,
.comment-form textarea:focus{outline:none;border-color:var(--sky);}
.comment-form textarea{resize:vertical;}
.form-submit{margin-bottom:0 !important;}
.comment-form .form-submit input[type="submit"]{
  background:var(--navy);color:#fff;font-weight:600;font-size:14.5px;
  padding:11px 24px;border-radius:999px;border:none;cursor:pointer;
}
.comment-form .form-submit input[type="submit"]:hover{background:var(--navy-deep);}
.comment-form-cookies-consent{display:flex;align-items:center;gap:8px;}
.comment-form-cookies-consent label{display:inline;margin:0;font-weight:500;font-size:13.5px;color:var(--ink-soft);}

/* =========================================================
   Страница "О нас" (page-about.php)
   ========================================================= */
.about-topics{margin:56px 0 0;}

@media (max-width:600px){
  .about-topics{margin:40px 0 0;}
}