@font-face {
	font-family: 'Montserrat';
	src: url('../fonts/Montserrat-Variable.woff2') format('woff2');
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
}

:root {
	--color-bg: #f6f8f4;
	--color-surface: #ffffff;
	--color-muted: #eef3ee;
	--color-ink: #17201c;
	--color-text: #26352f;
	--color-soft: #5e6e66;
	--color-primary: #1f6b55;
	--color-primary-dark: #113a29;
	--color-accent: #b75f3a;
	--color-sun: #e4b64a;
	--color-border: #d8e1db;
	--shadow-soft: 0 16px 42px rgba(20, 54, 42, 0.12);
	--shadow-dark: 0 0 8px -1px #00000021;
	--shadow-light: 0 0 8px -1px #ffffff21;
	--radius: 8px;
	--container: 1350px;
	--font-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Montserrat, Arial, sans-serif;
	--font-montserrat: 'Montserrat', sans-serif;
}

/**
 * Переменные для коэффициента и базовой величины
 */
:root {
	--ratio: 1.2;
	--base: 1;
	--base-em: calc(var(--base) * 1em);
	--base-px: calc(var(--base) * 16px);
}
/**
 * Переменные градаций шкалы
 */
:root {
	--ms0: 1;
	--ms1: var(--ratio);                    /* 1.2   */
	--ms2: calc(var(--ratio) * var(--ms1)); /* 1.44  */
	--ms3: calc(var(--ratio) * var(--ms2)); /* 1.728 */
	--ms4: calc(var(--ratio) * var(--ms3)); /* 2.074 */
	--ms5: calc(var(--ratio) * var(--ms4)); /* 2.488 */
	--ms6: calc(var(--ratio) * var(--ms5)); /* 2.986 */
	--ms7: calc(var(--ratio) * var(--ms6)); /* 3.583 */
}

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

html {
	scroll-behavior: smooth;
	/*user-select: none;*/
}

body {
	margin: 0;
	background: var(--color-bg);
	color: var(--color-text);
	font-family: var(--font-base);
	font-size: 16px;
	line-height: 1.65;
	letter-spacing: 0;
}

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

a {
	color: var(--color-primary);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

/*a:hover,*/
/*a:focus {*/
/*	color: var(--color-accent);*/
/*}*/

button,
input,
textarea,
select {
	font: inherit;
}

button {
	cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	font-family: 'Montserrat', sans-serif;
}
h6 { font-size: calc(var(--base-em) / var(--ms1)); }
h5 { font-size: calc(var(--base-em) * var(--ms0)); }
h4 { font-size: calc(var(--base-em) * var(--ms2)); }
h3 { font-size: calc(var(--base-em) * var(--ms3)); }
h2 { font-size: calc(var(--base-em) * var(--ms4)); }
h1 { font-size: calc(var(--base-em) * var(--ms5)); }

h3, h2 { line-height: calc(var(--base) * var(--ms1)); }
h1 { line-height: calc(var(--base) * var(--ms0)); }

.container {
	width: min(calc(100% - 32px), var(--container));
	margin-inline: auto;
}
ul, li{
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.container.narrow {
	--container: 820px;
}

.hero-buttons{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 20px;
}
.screen-reader-text,
.skip-link {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.skip-link:focus {
	position: fixed;
	top: 12px;
	left: 12px;
	z-index: 1000;
	width: auto;
	height: auto;
	padding: 10px 14px;
	clip: auto;
	background: var(--color-surface);
	color: var(--color-ink);
	border: 2px solid var(--color-primary);
	border-radius: var(--radius);
}

.site-header {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index: 200;
	padding-top: 20px;
}
.admin-bar .site-header{
	padding-top: 52px;
}
.header-styled{
	position: relative;
	background: var(--color-surface);
	border-radius: 50px;
	padding: 0 20px;
	box-shadow: 0px 0px 11px 0px #00000024;
}

.topbar {
	background: var(--color-primary-dark);
	color: #ffffff;
	font-size: 14px;
}

.topbar a,
.topbar button {
	color: #ffffff;
}

.topbar-inner,
.topbar-actions,
.masthead,
.site-brand,
.nav-list,
.hero-meta,
.row-meta,
.poll-result-top,
.work-card-footer {
	display: flex;
	align-items: center;
}

.topbar-inner {
	min-height: 42px;
	justify-content: space-between;
	gap: 16px;
}

.topbar-actions {
	gap: 10px;
	flex-wrap: wrap;
}

.plain-toggle {
	display: inline-flex;
	gap: 6px;
	align-items: center;
	padding: 0;
	background: transparent;
	border: 0;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}
.plain-toggle .icon{
	width: 24px;
	height: 24px;
	fill: var(--color-primary);
}

.masthead {
	height: 85px;
	min-height: 85px;
	justify-content: space-between;
	gap: 24px;
}

.site-brand {
	gap: 12px;
	color: var(--color-ink);
	text-decoration: none;
}

.site-brand img,
.brand-mark {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	flex: 0 0 auto;
}

.brand-mark {
	display: grid;
	place-items: center;
	background: var(--color-primary);
	color: #ffffff;
	font-size: 28px;
	font-weight: 800;
}

.site-brand strong {
	display: block;
	font-size: 21px;
	line-height: 1.1;
	color: var(--color-ink);
}

.site-brand small {
	display: block;
	color: var(--color-soft);
	font-size: 13px;
	line-height: 1.25;
}

.primary-nav {
	min-width: 0;
}

.nav-list {
	gap: 8px;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav-list a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 8px 11px;
	border-radius: var(--radius);
	color: var(--color-ink);
	text-decoration: none;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 14px;
}

.nav-list a:hover,
.nav-list a:focus {
	background: var(--color-muted);
	color: var(--color-primary-dark);
}

.hero,
.page-hero {
	background: var(--color-primary-dark);
	color: #ffffff;
}

.hero {
	padding: 64px 0 42px;
	padding-top: 130px;
}

.page-hero {
	padding: 48px 0;
}

a {
	color: #ffffff;
}

.hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
	gap: 40px;
	align-items: center;
}

.hero h1,
.page-hero h1 {
	max-width: 850px;
	margin: 0;
	color: #ffffff;
	font-size: clamp(40px, 7vw, 72px);
	line-height: 1.02;
	letter-spacing: 0;
}

.page-hero h1 {
	font-size: clamp(34px, 5vw, 54px);
}

.hero-lede,
.page-hero p {
	max-width: 720px;
	margin: 20px 0 0;
	color: rgba(255, 255, 255, 0.86);
	font-size: 20px;
	line-height: 1.55;
}

.eyebrow {
	margin: 0 0 0px;
	color: var(--color-accent);
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0;
	font-family: 'Montserrat', sans-serif;
}

.hero .eyebrow,
.page-hero .eyebrow {
	color: var(--color-sun);
}

.hero-meta {
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 26px;
}

.hero-meta span,
.meta-pill {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}

.hero-meta span {
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
}

.meta-pill {
	background: var(--color-muted);
	color: var(--color-primary-dark);
}

.quick-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.action-tile {
	display: grid;
	min-height: 112px;
	align-content: space-between;
	padding: 18px;
	background: #ffffff;
	color: var(--color-ink);
	border: 1px solid rgba(255, 255, 255, 0.4);
	border-radius: var(--radius);
	text-decoration: none;
	box-shadow: var(--shadow-soft);
}

.action-tile:hover,
.action-tile:focus {
	color: var(--color-ink);
	transform: translateY(-2px);
}

.action-tile .dashicons {
	width: 32px;
	height: 32px;
	color: var(--color-accent);
	font-size: 32px;
}

.action-tile strong {
	font-size: 18px;
}

.service-strip {
	padding: 22px 0 58px;
	background: var(--color-bg);
}

.service-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.service-widget {
	min-height: 180px;
	overflow: hidden;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: var(--shadow-soft);
}

.service-widget iframe {
	display: block;
	width: 100%;
	min-height: 220px;
	border: 0;
}

.service-widget.is-placeholder {
	display: grid;
	align-content: center;
	justify-items: start;
	gap: 8px;
	padding: 24px;
	background: var(--color-surface);
}

.service-widget .dashicons {
	width: 34px;
	height: 34px;
	color: var(--color-primary);
	font-size: 34px;
}

.section {
	padding: 58px 0;
}

.section-muted {
	background: var(--color-muted);
}

/*.section-contact {*/
/*	background: #f4f0e8;*/
/*}*/

.section-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
}

.section-heading.compact {
	margin-bottom: 16px;
}

.section-heading h2,
.info-panel h2,
.three-column h2,
.site-footer h2 {
	margin: 0;
	color: var(--color-ink);
	font-size: 32px;
	line-height: 1.18;
}

.text-link {
	font-weight: 800;
}

.card-grid,
.work-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.content-card,
.work-card,
.info-panel,
.form-panel {
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: var(--shadow-dark);
}

.card-media {
	display: grid;
	place-items: center;
	position: relative;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: #dfe9e3;
	color: var(--color-primary);
	text-decoration: none;
	border-radius: var(--radius) var(--radius) 0 0;
}
.card-media:before{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.20);
}

.card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.card-media .dashicons {
	width: 42px;
	height: 42px;
	font-size: 42px;
}

.card-body {
	padding: 18px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.card-body h2,
.card-body h3 {
	margin: 0 0 8px;
	font-size: 22px;
	line-height: 1.25;
}

.card-body h2 a,
.card-body h3 a,
.document-row h3 a {
	color: var(--color-ink);
	text-decoration: none;
	font-family: 'Montserrat', sans-serif;
}

.card-body p,
.info-panel p,
.three-column p {
	margin: 0;
	color: var(--color-soft);
}

.card-meta,
.row-meta {
	color: var(--color-soft);
	font-size: 14px;
}

.split-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
	gap: 26px;
	align-items: start;
}

.stack-list {
	display: grid;
	gap: 12px;
}

.document-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: center;
	padding: 16px;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
}

.document-row h3 {
	margin: 0 0 8px;
	font-size: 19px;
	line-height: 1.3;
}

.row-meta {
	gap: 8px;
	flex-wrap: wrap;
}

.row-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 150px;
}

.access-label,
.vote-state {
	color: var(--color-soft);
	font-size: 14px;
	font-weight: 700;
}

.vote-state.is-voted {
	color: var(--color-primary);
}

.info-panel,
.form-panel {
	padding: 24px;
}

.three-column {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px;
}

.button,
button.button,
input[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 10px 16px;
	border: 1px solid transparent;
	border-radius: var(--radius);
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
}

.button-primary,
button.button-primary,
input[type="submit"] {
	background: var(--color-accent);
	color: #ffffff;
}

.button-secondary,
button.button-secondary {
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--color-surface);
	color: var(--color-primary-dark);
	border-color: var(--color-border);
	font-weight: 500;
}

.button:hover,
.button:focus,
button.button:hover,
button.button:focus {
	filter: brightness(0.96);
}

.prose {
	font-size: 18px;
}

.prose > *:first-child {
	margin-top: 0;
}

.prose h2,
.prose h3 {
	color: var(--color-ink);
	line-height: 1.25;
}

.featured-figure {
	margin: 0 0 26px;
	overflow: hidden;
	border-radius: var(--radius);
}

.single-layout .container.narrow {
	padding: 38px 0 54px;
}

.document-viewer {
	margin-top: 26px;
	padding: 18px;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
}

.document-viewer h2 {
	margin: 0 0 14px;
	font-size: 22px;
}

.document-viewer iframe {
	display: block;
	width: 100%;
	min-height: 72vh;
	border: 1px solid var(--color-border);
	border-radius: 6px;
	background: #ffffff;
}

.protected-content {
	-webkit-user-select: none;
	user-select: none;
}

.notice {
	margin: 16px 0;
	padding: 14px 16px;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-left: 4px solid var(--color-primary);
	border-radius: var(--radius);
}

.notice-error {
	border-left-color: #b3261e;
}

.notice-success {
	border-left-color: var(--color-primary);
}

.notice-access {
	border-left-color: var(--color-accent);
}

.feedback-form p,
.poll-form p {
	margin: 0 0 14px;
}

.feedback-form label,
.poll-form legend {
	display: block;
	margin-bottom: 6px;
	color: var(--color-ink);
	font-weight: 800;
}

.form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="number"],
input[type="date"],
textarea,
select {
	width: 100%;
	min-height: 44px;
	padding: 10px 12px;
	background: #ffffff;
	color: var(--color-ink);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
}

textarea {
	min-height: 140px;
	resize: vertical;
}

.form-consent label,
.choice-row {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-weight: 600;
}

.hidden-field {
	display: none;
}

.poll-form fieldset {
	margin: 0 0 18px;
	padding: 0;
	border: 0;
}

.choice-row {
	min-height: 44px;
	padding: 12px;
	margin-bottom: 8px;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
}

.poll-results {
	display: grid;
	gap: 12px;
	margin-top: 24px;
}

.poll-result-top {
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 6px;
}

.poll-bar {
	height: 12px;
	overflow: hidden;
	background: var(--color-muted);
	border-radius: 999px;
}

.poll-bar span {
	display: block;
	height: 100%;
	background: var(--color-primary);
}

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

.work-card-footer {
	justify-content: space-between;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 16px;
}

.inline-vote-form {
	margin: 0;
}

.vote-box {
	margin-top: 24px;
}

.contact-list {
	display: grid;
	gap: 14px;
	margin: 20px 0 0;
}

.contact-list div {
	display: grid;
	gap: 2px;
}

.contact-list dt {
	color: var(--color-soft);
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
}

.contact-list dd {
	margin: 0;
	color: var(--color-ink);
	font-size: 18px;
	font-weight: 400;
}



.empty-state {
	padding: 24px;
	background: var(--color-surface);
	border: 1px dashed var(--color-border);
	border-radius: var(--radius);
	color: var(--color-soft);
}

.pagination-wrap {
	margin-top: 28px;
}

.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	margin-right: 6px;
	padding: 6px 10px;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	text-decoration: none;
}

.site-footer {
	background: #17201c;
	color: rgba(255, 255, 255, 0.76);
}

.footer-grid {
	display: grid;
	grid-template-columns: 1.1fr 0.7fr 1fr;
	gap: 30px;
	padding: 42px 0;
}

.site-footer h2 {
	color: #ffffff;
	font-size: 20px;
}

.site-footer a {
	color: #ffffff;
}

.footer-menu {
	display: grid;
	gap: 8px;
	margin: 14px 0 0;
	padding: 0;
	list-style: none;
}

.footer-bottom {
	padding: 16px 0;
	background: rgba(0, 0, 0, 0.18);
	font-size: 14px;
}

body.accessibility-mode {
	filter: grayscale(1);
}

/*body.accessibility-mode .hero,*/
/*body.accessibility-mode .page-hero,*/
/*body.accessibility-mode .topbar,*/
/*body.accessibility-mode .site-footer {*/
/*	background: #000000;*/
/*	color: #ffffff;*/
/*}*/

/*body.accessibility-mode .button,*/
/*body.accessibility-mode .meta-pill,*/
/*body.accessibility-mode .action-tile {*/
/*	border: 2px solid #000000;*/
/*	box-shadow: none;*/
/*}*/

/*body.accessibility-mode a:focus,*/
/*body.accessibility-mode button:focus,*/
/*body.accessibility-mode input:focus,*/
/*body.accessibility-mode textarea:focus,*/
/*body.accessibility-mode select:focus {*/
/*	outline: 3px solid #000000;*/
/*	outline-offset: 3px;*/
/*}*/

.custom-logo{
	width: 100px;
	height: auto;
}
.snt-header--logo{
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.snt-header--logo-wrap{
	display: flex;
	align-items: center;
	gap: 10px;
}
.snt-header--logo strong{
	color: var(--color-primary);
	font-size: 20px;
	line-height: 1;
}
.snt-user{
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px;
	border-radius: 25px !important;
	height: 40px;
	background-color: var(--color-primary);
	text-decoration: none;
	color: #fff;
}
.snt-user span{
	transition: color .1s ease-in;
	font-weight: 500;
}
.plain-toggle{
	text-decoration: none;
}

.snt-button {
	position: relative;
	isolation: isolate;

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;

	padding: 14px 26px;
	border-radius: 10px;
	border: 0;

	color: #fff;
	text-decoration: none;
	font-size: 15px;
	font-weight: 500;
	font-family: 'Montserrat', sans-serif;
	line-height: 1;

	background: linear-gradient(180deg, #15925f 0%, #087345 100%);

	box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.35),
			inset 0 -10px 18px rgba(0, 0, 0, 0.16),
			0 4px 10px rgba(0, 80, 45, 0.28);

	overflow: hidden;
	cursor: pointer;

	transition:
			transform 0.18s ease,
			box-shadow 0.18s ease,
			filter 0.18s ease;
}

/* внутренняя плавающая белая дымка */
.snt-button::before {
	content: "";
	position: absolute;
	inset: -55%;
	z-index: -1;

	/*background:*/
	/*		radial-gradient(*/
	/*				ellipse at 25% 40%,*/
	/*				rgba(255, 255, 255, 0.38),*/
	/*				rgba(255, 255, 255, 0.14) 28%,*/
	/*				rgba(255, 255, 255, 0) 55%*/
	/*		),*/
	/*		radial-gradient(*/
	/*				ellipse at 70% 65%,*/
	/*				rgba(255, 255, 255, 0.22),*/
	/*				rgba(255, 255, 255, 0.08) 30%,*/
	/*				rgba(255, 255, 255, 0) 58%*/
	/*		),*/
	/*		linear-gradient(*/
	/*				120deg,*/
	/*				rgba(255, 255, 255, 0) 20%,*/
	/*				rgba(255, 255, 255, 0.18) 45%,*/
	/*				rgba(255, 255, 255, 0.04) 62%,*/
	/*				rgba(255, 255, 255, 0) 80%*/
	/*		);*/

	filter: blur(12px);
	opacity: 0.75;
	transform: translate3d(-4%, -2%, 0) rotate(0deg);

	animation: sntButtonSmoke 6s ease-in-out infinite alternate;
	pointer-events: none;
}

/* мягкий верхний стеклянный слой */
.snt-button::after {
	content: "";
	position: absolute;
	inset: 2px;
	z-index: 0;

	border-radius: inherit;

	background:
			linear-gradient(
					180deg,
					rgba(255, 255, 255, 0.24),
					rgba(255, 255, 255, 0.08) 42%,
					rgba(255, 255, 255, 0) 78%
			);

	opacity: 0.75;
	pointer-events: none;
}

.snt-button > * {
	position: relative;
	z-index: 2;
}

.snt-button .icon {
	width: 20px;
	height: 20px;
	fill: #fff;

	transition:
			transform 0.18s ease,
			filter 0.18s ease;
}

/* наведение */
.snt-button:hover {
	transform: translateY(-2px);
	filter: brightness(1.04);

	box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.45),
			inset 0 -10px 18px rgba(0, 0, 0, 0.12),
			0 8px 18px rgba(0, 90, 55, 0.36);
}

.snt-button:hover::before {
	opacity: 0.95;
	animation-duration: 3.2s;
}


/* нажатие */
.snt-button:active {
	transform: translateY(1px) scale(0.98);

	box-shadow:
			inset 0 3px 8px rgba(0, 0, 0, 0.24),
			inset 0 1px 0 rgba(255, 255, 255, 0.18),
			0 2px 5px rgba(0, 70, 40, 0.22);
}

.snt-button:active::before {
	opacity: 0.55;
	transform: scale(0.96);
}

.snt-button:focus-visible {
	outline: 3px solid rgba(21, 146, 95, 0.35);
	outline-offset: 4px;
}

@keyframes sntButtonSmoke {
	0% {
		transform: translate3d(-6%, -3%, 0) rotate(0deg) scale(1);
	}

	35% {
		transform: translate3d(4%, 2%, 0) rotate(8deg) scale(1.06);
	}

	70% {
		transform: translate3d(8%, -4%, 0) rotate(-6deg) scale(1.02);
	}

	100% {
		transform: translate3d(-2%, 5%, 0) rotate(10deg) scale(1.08);
	}
}


/* Листочки, которые создаются через JS */
.snt-leaf {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9999;

	width: var(--leaf-size, 9px);
	height: calc(var(--leaf-size, 9px) * 1.55);

	pointer-events: none;

	background: linear-gradient(135deg, #d9f3b0 0%, #7fc35a 45%, #2d8f46 100%);
	border-radius: 100% 0 100% 0;

	box-shadow:
			inset 1px 1px 2px rgba(255, 255, 255, 0.45),
			0 2px 5px rgba(0, 70, 35, 0.2);

	transform:
			translate3d(var(--start-x), var(--start-y), 0)
			rotate(var(--start-rotate));

	animation: sntLeafWind var(--leaf-duration, 1200ms) ease-out forwards;
}

/* прожилка листочка */
.snt-leaf::before {
	content: "";
	position: absolute;
	left: 48%;
	top: 8%;
	width: 1px;
	height: 82%;

	background: rgba(255, 255, 255, 0.45);
	transform: rotate(-18deg);
	transform-origin: top;
}

@keyframes sntLeafWind {
	0% {
		opacity: 0;
		transform:
				translate3d(var(--start-x), var(--start-y), 0)
				rotate(var(--start-rotate))
				scale(0.6);
	}

	12% {
		opacity: 1;
	}

	45% {
		transform:
				translate3d(
						calc(var(--start-x) + var(--mid-x)),
						calc(var(--start-y) + var(--mid-y)),
						0
				)
				rotate(calc(var(--start-rotate) + var(--mid-rotate)))
				scale(1);
	}

	100% {
		opacity: 0;
		transform:
				translate3d(
						calc(var(--start-x) + var(--end-x)),
						calc(var(--start-y) + var(--end-y)),
						0
				)
				rotate(calc(var(--start-rotate) + var(--end-rotate)))
				scale(0.45);
	}
}




.snt-button-white {
	position: relative;
	isolation: isolate;

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;

	padding: 14px 26px;
	border-radius: 10px;
	border: 1px solid rgba(8, 115, 69, 0.14);

	color: #252525;
	text-decoration: none;
	font-size: 15px;
	font-weight: 500;
	font-family: 'Montserrat', sans-serif;
	line-height: 1;

	background: linear-gradient(180deg, #ffffff 0%, #f5faf7 100%);

	box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.95),
			inset 0 -10px 18px rgba(8, 115, 69, 0.05),
			0 4px 10px rgba(0, 80, 45, 0.16);

	overflow: hidden;
	cursor: pointer;

	transition:
			transform 0.18s ease,
			box-shadow 0.18s ease,
			filter 0.18s ease,
			border-color 0.18s ease;
}

/* внутренняя плавающая дымка */
.snt-button-white::before {
	content: "";
	position: absolute;
	inset: -55%;
	z-index: 0;

	background:
			radial-gradient(
					ellipse at 25% 40%,
					rgba(8, 115, 69, 0.16),
					rgba(8, 115, 69, 0.07) 28%,
					rgba(8, 115, 69, 0) 55%
			),
			radial-gradient(
					ellipse at 70% 65%,
					rgba(21, 146, 95, 0.12),
					rgba(21, 146, 95, 0.05) 30%,
					rgba(21, 146, 95, 0) 58%
			);
			/*linear-gradient(*/
			/*		120deg,*/
			/*		rgba(255, 255, 255, 0) 20%,*/
			/*		rgba(255, 255, 255, 0.75) 45%,*/
			/*		rgba(8, 115, 69, 0.06) 62%,*/
			/*		rgba(255, 255, 255, 0) 80%*/
			/*);*/

	filter: blur(12px);
	opacity: 0.9;

	animation: sntButtonWhiteSmoke 6s ease-in-out infinite alternate;
	pointer-events: none;
}

/* мягкий стеклянный слой */
.snt-button-white::after {
	content: "";
	position: absolute;
	inset: 2px;
	z-index: 1;

	border-radius: inherit;

	background:
			linear-gradient(
					180deg,
					rgba(255, 255, 255, 0.95),
					rgba(255, 255, 255, 0.34) 42%,
					rgba(255, 255, 255, 0) 78%
			);

	opacity: 0.85;
	pointer-events: none;
}

.snt-button-white > * {
	position: relative;
	z-index: 2;
}

.snt-button-white .icon {
	width: 20px;
	height: 20px;
	fill: currentColor;
	color: currentColor;

	transition:
			transform 0.18s ease,
			filter 0.18s ease;
}

.snt-button-white .icon * {
	fill: currentColor;
}

/* наведение */
.snt-button-white:hover {
	transform: translateY(-2px);
	filter: brightness(1.02);
	border-color: rgba(8, 115, 69, 0.22);

	box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 1),
			inset 0 -10px 18px rgba(8, 115, 69, 0.04),
			0 8px 18px rgba(0, 80, 45, 0.22);
}

.snt-button-white:hover::before {
	opacity: 1;
	animation-duration: 3.2s;
}

.snt-button-white:hover .icon {
	transform: translateX(4px);
}

/* нажатие */
.snt-button-white:active {
	transform: translateY(1px) scale(0.98);

	box-shadow:
			inset 0 3px 8px rgba(0, 80, 45, 0.12),
			inset 0 1px 0 rgba(255, 255, 255, 0.8),
			0 2px 5px rgba(0, 70, 40, 0.12);
}

.snt-button-white:active::before {
	opacity: 0.65;
	transform: scale(0.96);
}

.snt-button-white:focus-visible {
	outline: 3px solid rgba(8, 115, 69, 0.22);
	outline-offset: 4px;
}

@keyframes sntButtonWhiteSmoke {
	0% {
		transform: translate3d(-6%, -3%, 0) rotate(0deg) scale(1);
	}

	35% {
		transform: translate3d(4%, 2%, 0) rotate(8deg) scale(1.06);
	}

	70% {
		transform: translate3d(8%, -4%, 0) rotate(-6deg) scale(1.02);
	}

	100% {
		transform: translate3d(-2%, 5%, 0) rotate(10deg) scale(1.08);
	}
}




.snt-button--full-width{
	width: 100%;
}
.snt-icon-button{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid rgb(219 219 219);
	background: -webkit-linear-gradient(180deg, #f2f2f2, #c9c9c9);
	background: linear-gradient(180deg, #ffffff, #d2d2d2 70%);
	box-shadow: 0 0 0 0 transparent;
	transition: ease .2s;
	cursor: pointer;
}
.snt-icon-button:hover{
	transform: translateY(-2px);
	box-shadow: 0 3px 3px 2px #0000003d;
}
.search-button .icon{
	width: 20px;
	height: 20px;
}
.index-baner{
	position: relative;
	background-position: top;
	background-repeat: no-repeat;
	background-size: contain;
	background-attachment: fixed;
}
.index-baner:before{
	content: "";
	position: absolute;
	background: rgba(0, 0, 0, 0.2);
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.hero-grid{
	position: relative;
	z-index: 2;
}
@media (max-width: 980px) {
	.masthead,
	.topbar-inner,
	.hero-grid,
	.split-layout,
	.three-column,
	.footer-grid {
		grid-template-columns: 1fr;
	}

	.masthead,
	.topbar-inner {
		align-items: flex-start;
		flex-direction: column;
		padding: 14px 0;
	}

	.primary-nav,
	.nav-list {
		width: 100%;
		justify-content: flex-start;
	}

	.hero-grid,
	.split-layout,
	.three-column,
	.footer-grid {
		display: grid;
	}

	.card-grid,
	.work-grid,
	.service-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Виджет погоды Ахсау */
.service-widget-weather.ahsau-weather {
	position: relative;
	overflow: hidden;
	padding: 28px;
	border-radius: 8px;
	color: #fff;
	background:
			linear-gradient(135deg, rgba(7, 43, 48, 0.98), rgba(14, 73, 77, 0.94)),
			radial-gradient(circle at 85% 15%, rgba(255, 255, 255, 0.18), transparent 34%);
	box-shadow: 0 24px 55px rgba(14, 45, 42, 0.18);
	border: 1px solid rgba(255, 255, 255, 0.12);
}

.service-widget-weather.ahsau-weather::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
			linear-gradient(to top, rgba(0, 0, 0, 0.2), transparent 60%),
			url("data:image/svg+xml,%3Csvg width='900' height='360' viewBox='0 0 900 360' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 270L130 135L240 230L380 80L540 245L670 125L900 290V360H0Z' fill='%23ffffff' fill-opacity='.07'/%3E%3Cpath d='M0 310L180 190L310 285L470 145L630 300L760 210L900 320V360H0Z' fill='%23ffffff' fill-opacity='.05'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right top;
	background-size: cover;
	pointer-events: none;
}

.ahsau-weather > * {
	position: relative;
	z-index: 2;
}

.ahsau-weather__top,
.ahsau-weather__main,
.ahsau-weather__title,
.ahsau-weather__tomorrow {
	display: flex;
}

.ahsau-weather__top {
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 12px;
}

.ahsau-weather__title {
	align-items: center;
	gap: 14px;
}

.ahsau-weather__title strong {
	display: block;
	font-size: 20px;
	line-height: 1.2;
	color: #fff;
}

.ahsau-weather__title span {
	display: block;
	margin-top: 4px;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.68);
}

.ahsau-weather__icon {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	border-radius: 15px;
	font-size: 28px;
	background: rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(8px);
}

.ahsau-weather__badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 12px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	background: rgba(255, 255, 255, 0.13);
	white-space: nowrap;
}

.ahsau-weather__badge::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #5ee08a;
	box-shadow: 0 0 0 4px rgba(94, 224, 138, 0.16);
}

.ahsau-weather__main {
	align-items: center;
	gap: 28px;
	margin-bottom: 15px;
}

.ahsau-weather__temp {
	font-size: clamp(64px, 8vw, 64px);
	line-height: 0.9;
	font-weight: 800;
	letter-spacing: -0.07em;
}

.ahsau-weather__desc strong {
	display: block;
	font-size: 16px;
	color: #fff;
}

.ahsau-weather__desc span {
	font-size: 15px;
	color: rgba(255, 255, 255, 0.74);
}

.ahsau-weather__tomorrow {
	align-items: center;
	gap: 14px;
	padding: 5px 15px;
	margin-bottom: 10px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.1);
}

.ahsau-weather__tomorrow-icon {
	font-size: 28px;
}

.ahsau-weather__tomorrow strong {
	display: block;
	margin-bottom: 3px;
	font-size: 15px;
	color: #fff;
}

.ahsau-weather__tomorrow span {
	color: rgba(255, 255, 255, 0.74);
	font-size: 14px;
}

.ahsau-weather__hours {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(62px, 1fr));
	gap: 10px;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.ahsau-weather__hour {
	min-width: 0;
	text-align: center;
}

.ahsau-weather__hour-time {
	display: block;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.74);
}

.ahsau-weather__hour-icon {
	display: block;
	font-size: 23px;
}

.ahsau-weather__hour strong {
	display: block;
	font-size: 15px;
	color: #fff;
}

.ahsau-weather__meta {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(95px, 1fr));
	gap: 12px;
}

.ahsau-weather__meta-item {
	min-width: 0;
	padding: 12px 10px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.08);
}

.ahsau-weather__meta-item span {
	display: block;
	font-size: 20px;
}

.ahsau-weather__meta-item strong {
	display: block;
	font-size: 14px;
	color: #fff;
	white-space: nowrap;
}

.ahsau-weather__meta-item small {
	display: block;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.62);
}
.card-body--categories{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	position: absolute;
	bottom: 15px;
	right: 15px;
	flex-direction: column;
	margin-bottom: 0;
}
.card-body--cat{
	color: #fff;
	padding: 3px 10px;
	border-radius: 15px;
	text-decoration: none;
	font-weight: 500;
	font-size: 12px;
	backdrop-filter: blur(6px);
	text-shadow: 0px 0px 3px #00000054;
}
.card-body--info{
	margin-bottom: 15px;
}
.card-meta{
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	/*justify-content: space-between;*/
}
.content-card{
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.card-media{
	position: relative;
	min-height: 260px;
}
.card-meta--date{
	display: flex;
	align-items: center;
	gap: 5px;
	background-color: #efefef;
	padding: 5px 8px;
	border-radius: 15px;
	font-size: 12px;
	font-weight: 500;
	width: max-content;
}
.card-meta--date span{
	color: var(--color-soft);
}
.card-meta--date .icon{
	width: 20px;
	height: 20px;
}
.card-meta--date .icon-eye4{
	fill: #a2a9ac;
}
.card-meta--role{
	display: flex;
	align-items: center;
	gap: 5px;
	background-color: #efefef;
	padding: 5px 8px;
	border-radius: 15px;
	font-size: 12px;
	font-weight: 500;
}
.card-meta--role .icon{
	width: 15px;
	height: 15px;
	fill: #a2a9ac;
}
.card-category--list{
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 15px;
}
.card-category--item{
	color: #fff;
	background: #474d50;
	padding: 5px 15px;
	border-radius: 20px;
	text-decoration: none;
	font-weight: 500;
	font-size: 14px;
	cursor: pointer;
}
.info-panel--title{
	color: var(--color-ink);
	font-size: 30px;
	line-height: 1.18;
	font-weight: 700;
	margin-bottom: 10px;
}
.info-panel--desc{
	display: block;
	margin-bottom: 10px !important;
}
.split-layout--full{
	display: flex;
}
.split-layout--full .docum-section--wrap{
	width: 100%;
}
.split-layout--full .stack-list{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.info-panel{
	position: sticky;
	top: 50px;
}
.form-wrapper{
	display: flex;
	/*background-color: #e2e7e2;*/
	box-shadow: 0 10px 24px rgba(23, 32, 28, 0.06);
}
.form-left--side{
	padding: 28px;
	background-color: var(--color-primary);
	border-radius: 8px 0px 0px 8px;

}
.form-right--side{
	padding: 28px;
	background-color: #e2e7e2;
	border-radius: 0px 8px 8px 0px;
}
.split-layout--container{
	width: 50%;
}
.form-ajax--block{
	width: 50%;
}
.email-link{
	color: var(--color-ink);
}
.form-ajax-grid{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 15px;
	margin-bottom: 20px;
}
.grid-select{
	grid-column: 1 / 3;
}
.grid-textarea{
	grid-column: 1 / 3;
}
.form-grid--item:nth-child(3){
	grid-column: 1 / 3;
}
.form-grid--item .input-label{
	font-size: 14px;
	font-weight: 500;
}
.form-grid--item input{
	border-radius: 24px;
	height: 50px;
}
.form-grid--item textarea{
	border-radius: 24px;
}
button.snt-button{
	border:none;
	min-width: 200px
}
.section-contact h2{
	color: #fff;
}
.section-contact .contact-list dt{
	color: #dfdfdf;
}
.section-contact .contact-list dd{
	color: #fff;
}
.section-contact .email-link{
	color: #fff;
}
@media (max-width: 900px) {
	.service-widget-weather.ahsau-weather {
		padding: 22px;
	}

	.ahsau-weather__main {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
	}
}
.snt-honeypot {
	position: absolute;
	left: -9999px;
	opacity: 0;
	visibility: hidden;
}

.form-error {
	margin-top: 6px;
	font-size: 13px;
	color: #d63638;
}

input.form-error,
textarea.form-error {
	border-color: #d63638;
}

.form-result {
	margin-top: 15px;
}

.form-result.success {
	color: #008a20;
}

.form-result.error {
	color: #d63638;
}

.snt-button.is-loading {
	opacity: 0.7;
	pointer-events: none;
}

.custom-select {
	position: relative;
	width: 100%;
}

.custom-select select {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	pointer-events: none;
}

.custom-select__button {
	position: relative;
	width: 100%;
	min-height: 50px;
	padding: 0 48px 0 18px;
	border: 1px solid #d8d8d8;
	border-radius: 24px;
	background: #fff;
	color: #222;
	font-size: 16px;
	line-height: 1.3;
	text-align: left;
	cursor: pointer;
}

.custom-select__button::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 18px;
	width: 9px;
	height: 9px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translateY(-65%) rotate(45deg);
	transition: transform 0.2s ease;
	opacity: 0.6;
}

.custom-select.is-open .custom-select__button::after {
	transform: translateY(-35%) rotate(225deg);
}

.custom-select__dropdown {
	position: absolute;
	z-index: 20;
	left: 0;
	right: 0;
	top: calc(100% + 6px);
	max-height: 220px;
	overflow-y: auto;
	padding: 6px;
	border: 1px solid #d8d8d8;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-6px);
	transition: 0.2s ease;
}

.custom-select.is-open .custom-select__dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.custom-select__option {
	display: block;
	width: 100%;
	padding: 12px 14px;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: #222;
	font-size: 15px;
	text-align: left;
	cursor: pointer;
}

.custom-select__option:hover,
.custom-select__option.is-selected {
	background: #f1f1f1;
}

.custom-select select.form-error + .custom-select__button {
	border-color: #d63638;
}

.section-gallery {
	position: relative;
}

.mansory-bg {
	margin: 60px 0 60px 0;
	background: #f7f8f4; /* поставь сюда свой реальный фон */
}

.container-full {
	width: 100%;
	max-width: calc(100% - 145px);
	margin-right: auto;
	margin-left: auto;
}

.masonry-container {
	position: relative;
	overflow: visible;
}

/* Именно этот блок обрезает галерею */
.masonry-viewport {
	position: relative;
	overflow: hidden;
	max-height: calc(100dvh - 125px);
	transition: max-height 0.7s ease;

	-webkit-mask-image: linear-gradient(
			to bottom,
			#000 0%,
			#000 calc(100% - 180px),
			rgba(0, 0, 0, 0) 100%
	);
	mask-image: linear-gradient(
			to bottom,
			#000 0%,
			#000 calc(100% - 180px),
			rgba(0, 0, 0, 0) 100%
	);
}

.masonry-container.active .masonry-viewport {
	-webkit-mask-image: none;
	mask-image: none;
}

/* Когда раскрыто — убираем fade */
.masonry-container.active .masonry-viewport {
	-webkit-mask-image: none;
	mask-image: none;
	/*overflow: visible;*/
}

.grid-wrapper {
	columns: 300px;
	transform-origin: top;
	transform: perspective(1000px) rotateX(-25deg);
	transition: transform 0.4s ease;
}

.masonry-container.active .grid-wrapper {
	transform: perspective(1000px) rotateX(0deg);
}

.grid-wrapper > a {
	display: block;
	cursor: pointer;
	margin-bottom: 1rem;
}

.grid-wrapper > a > img {
	width: 100%;
	height: 100%;
	max-height: 520px;
	object-fit: cover;
	border-radius: 5px;
}

.grid-wrapper .lazy-js {
	display: block;
	opacity: 0;
	transform-origin: center center;
	will-change: transform, opacity;
	border: none;
	user-select: none;
}
.grid-wrapper a[data-fancybox="gallery"],
.grid-wrapper a[data-fancybox="gallery"]:focus,
.grid-wrapper a[data-fancybox="gallery"]:active,
.grid-wrapper a[data-fancybox="gallery"]:focus-visible {
	outline: none !important;
	box-shadow: none !important;
	border-color: transparent !important;
	-webkit-tap-highlight-color: transparent;
}
.grid-wrapper .lazy-js:active{
	border: none !important;
	user-select: none !important;
}
.grid-wrapper .lazy-js img {
	transition: ease 0.3s;
}

.grid-wrapper .lazy-js img:hover {
	scale: 0.9;
	opacity: 1;
}

/* Кнопка теперь не режется overflow */
.grid-masonry__more {
	position: sticky;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 5;
	bottom: 25px;
	cursor: pointer;
}

.gallery-video {
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 5px;
	background: #000;
}

.gallery-video video {
	display: block;
	width: 100%;
	height: 100%;
	max-height: 520px;
	object-fit: cover;
	border-radius: 5px;
}

.gallery-video__play {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 64px;
	height: 64px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.85);
	z-index: 2;
}

.gallery-video__play::before {
	content: "";
	position: absolute;
	left: 25px;
	top: 19px;
	width: 0;
	height: 0;
	border-top: 13px solid transparent;
	border-bottom: 13px solid transparent;
	border-left: 20px solid #111;
}
.grid-wrapper .gallery-video{
	transition: ease 0.3s;
}
.grid-wrapper .gallery-video:hover{
	scale: 0.9;
	opacity: 1;
}

@media (max-width: 520px) {
	.ahsau-weather__top {
		flex-direction: column;
	}

	.ahsau-weather__badge {
		align-self: flex-start;
	}

	.ahsau-weather__meta {
		grid-template-columns: 1fr;
	}
}
.article-main__wrapper{
	display: flex;
	gap: 28px;
}
.article-main__sidebar{
	display: flex;
	flex-direction: column;
	width: 28.5%;
	min-width: calc(28.5% - 15px);
}
.article-main__content{
	width: 71.5%;
	min-width: calc(71.5% - 15px);
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.article-content{
	background-color: #fff;
	padding: 42px 35px;
	word-break: break-word;
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: var(--shadow-dark);
}
.article-content h1:first-child,.article-content h2:first-child,.article-content h3:first-child,.article-content h4:first-child,.article-content h6:first-child,.article-content h6:first-child{
	padding-top: 0;
}
.article-content h1,.vacancy-hidden__content h1 {
	font-size: calc(var(--base-em) * var(--ms4));
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	padding-top: calc(var(--base-px)* var(--ms1));
	padding-bottom: calc(var(--base-px) / var(--ms1));
	line-height: 1.15;
	letter-spacing: -0.03em;
}
.article-content h2,.vacancy-hidden__content h2 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	padding-top: calc(var(--base-px)* var(--ms1));
	padding-bottom: calc(var(--base-px) / var(--ms1));
	line-height: 1.15;
	letter-spacing: -0.03em;
}
.article-content h3,.vacancy-hidden__content h3 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	padding-top: calc(var(--base-px)* var(--ms1));
	padding-bottom: calc(var(--base-px) / var(--ms1));
	line-height: 1.15;
	letter-spacing: -0.03em;
}
.article-content h4,.vacancy-hidden__content h4 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	padding-top: calc(var(--base-px)* var(--ms1));
	padding-bottom: calc(var(--base-px) / var(--ms1));
	line-height: 1.15;
	letter-spacing: -0.03em;
}
.article-content h5,.vacancy-hidden__content h5 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	padding-top: calc(var(--base-px)* var(--ms1));
	padding-bottom: calc(var(--base-px) / var(--ms1));
	line-height: 1.15;
	letter-spacing: -0.03em;
}
.article-content p,.vacancy-hidden__content p {
	font-size: calc(var(--base-em) * var(--ms0));
	line-height: 1.6;
	color: #3d3c3c;
	padding-bottom: calc(var(--base-px) * var(--ms0));
	letter-spacing: -0.01em;
	margin: 0;
}
.article-content ul,.vacancy-hidden__content ul{
	display: list-item;
}
.article-content ol, .article-content ul,.vacancy-hidden__content ol,.vacancy-hidden__content ul{
	padding-bottom: calc(var(--base-px) * var(--ms0));
}
.article-content li,.vacancy-hidden__content li {
	display: block;
	font-size: calc(var(--base-px) * var(--ms0));
	line-height: 1.6;
	letter-spacing: -0.01em;
	color: #3d3c3c;
	padding-left: 17px;
	position: relative;
}
.article-content li[aria-level='1'] ul,.vacancy-hidden__content li[aria-level='1'] ul{
	padding-left: 20px;
}
.article-content li strong,.article-content li span,.article-content ol  a,.vacancy-hidden__content li strong,.vacancy-hidden__content li span,.vacancy-hidden__content ol  a{
	display: contents;
}
.article-content a:not([class]),.vacancy-hidden__content a:not([class]){
	color: #e01f2b;
	border-bottom: 1px solid #e01f2b;
	display: contents;
}
.article-content a:not([class]):hover,.vacancy-hidden__content a:not([class]):hover{
	color: #F68D0C;
	border-bottom-color: #F68D0C;
}
.article-content blockquote{
	font-style: italic;
	border-left: 3px solid #e01f2b;
	margin: 2em 0;
	padding: 1em;
}
.article-content blockquote p{padding-bottom:0;}
.article-content ul li:before,.vacancy-hidden__content li:before,.author-data__bottom li:before {
	content: '';
	display: inline-block;
	border: 3px solid #ff1f1f;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	min-width: 10px;
	margin-right: 12px;
	margin-top: 7px;
	position: absolute;
	left: 0;
}


.article-content ol{
	list-style: decimal;
	padding-left: 20px;
}
.article-content ol li {
	display: list-item;
	list-style-type: decimal;
	padding-left: 5px;
}
.article-content ol li::marker{
	color: #ff1f1f;
	font-weight: bold;
}

.article-content__widget {
	display: flex;
	flex-direction: column;
	position: sticky;
	top: 130px;
	padding: 24px;
	gap: 16px;
	background: #fff;
	margin-bottom: 20px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: var(--shadow-dark);
}
.admin-bar .article-content__widget{
	top: 152px;
}
.article-content__widget:last-child{
	margin-bottom: 0;
}
.article-content__widget.widget_custom_html{
	padding: 0;
	gap: 0;
}
.post-hero-baner{
	position: relative;
	margin-bottom: 28px;
	padding-top: 130px;
	height: 405px;
	overflow: hidden;
}
.post-hero-baner p{
	font-size: calc(var(--base-em) * var(--ms0));
	margin-bottom: 10px;
}
.post-baner--thumbnail{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	object-fit: cover;
	height: 100%;
	object-position: center;
	mask-image: linear-gradient(to left, var(--color-primary-dark) 0%, var(--color-primary-dark) calc(100% - 700px), rgba(0, 0, 0, 0) 90%);
	width: 60%;
}
.page-baner--data{
	position: relative;
	z-index: 1;
}
.article-widget__content{
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	cursor: pointer;
}
.article-widget__content-title{
	font-family: 'Montserrat', sans-serif;
	font-size: calc(var(--base-em) * var(--ms2));
	font-weight: 700;
	color: #373737;
	letter-spacing: -0.03em
}
.article-widget__content-arrow{
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #e4e4e4;
	border-radius: 50%;
	width: 32px;
	height: 32px;
	cursor: pointer;
}
.article-widget__content-arrow .icon{
	width: 10px;
	height: 10px;
	fill: #374349;
	transition: ease 0.2s;
	transform: rotate(180deg);
}
.article-widget__content.active .icon{
	transform: rotate(0deg);
}
.article-content__list, .article-content__tap{
	margin-bottom: 16px;
}
.article-content__item-depth1{
	font-size: calc(var(--base-em) * var(--ms0));
	line-height: 1.3;
	color: #1c1c1c;
	font-family: 'Montserrat', sans-serif;
	cursor: pointer;
	display: block;
	margin-bottom: 8px;
	letter-spacing: -.01em;
	text-decoration: none;
}
.article-content__item-depth2, .article-content__item-depth3, .article-content__item-depth4, .article-content__item-depth5, .article-content__item-depth6{
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: calc(var(--base-em) * var(--ms0));
	line-height: 1.3;
	color: #6b6b6b;
	cursor: pointer;
	letter-spacing: -.01em;
	text-decoration: none;
}
.article-content__item-depth2{
	margin-bottom: 10px;
}
.article{
	margin-bottom: 28px;
}
.post-meta--flex{
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.uzor{
	width: 400px;
	height: auto;
	bottom: 0;
	top: 0;
	position: absolute;
	left: 0;
	filter: drop-shadow(7px 0px 7px black) opacity(0.7);
}
.blog-s--wrapper{
	display: flex;
	justify-content: space-between;
	gap: 28px;
}
.blog-wrap--left{
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 71.5%;
	min-width: calc(71.5% - 15px);
}
.blog-wrap--right{
	display: flex;
	flex-direction: column;
	width: 28.5%;
	min-width: calc(28.5% - 15px);
}
.blog-last--article{
	display: flex;
	gap: 20px;
	background-color: #fff;
	border-radius: var(--radius);
	padding: 15px;
	box-shadow: var(--shadow-dark);
	border: 1px solid var(--color-border);
}
.blog-last--image{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 35%;
	min-width: 35%;
	height: auto;
	background-color: #dfe9e3;
	color: var(--color-primary);
	text-decoration: none;
	border-radius: var(--radius);
}
.blog-last--image:before{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.20);
	border-radius: var(--radius);
}
.blog-last--image img{
	width: 100%;
	height: 100%;
	border-radius: var(--radius);
	object-fit: cover;
	object-position: center;
}
.card-blog--categories{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
}
.blog-last--title{
	font-family: var(--font-montserrat);
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
	color: #000;
}
.blog-last--desc{
	margin: 8px 0;
	font-size: 16px;
	color: #000;
}
.blog-info--bottom{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.blog-last--attr{
	display: flex;
	align-items: center;
	gap: 10px;
}
.blog-last--info{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.blog-info--top{
	text-decoration: none;
}
.blog-categories--item{
	display: flex;
	justify-content: space-between;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: var(--shadow-dark);
	background-color: #fff;
	padding: 10px 20px;
	text-decoration: none;
	gap: 15px;
}
.blog-cat--left .icon{
	width: 55px;
	height: 55px;
	fill: #15925f;
}
.blog-cat--name{
	font-family: var(--font-montserrat);
	font-weight: 700;
	color: #000;
	font-size: 17px;
}
.blog-cat--desc{
	font-family: var(--font-montserrat);
	font-size: 14px;
	color: #5a5a5a;
	line-height: 1.4;
}
.blog-cat--count{
	display: flex;
	justify-content: center;
	align-items: center;
	color: #15925f;
	width: max-content;
	min-width: 30px;
	background-color: rgba(21, 146, 95, 0.3);
	font-weight: 700;
	font-family: var(--font-montserrat);
	border-radius: var(--radius);
	padding: 0px 8px;
}
.blog-cat--left{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 25%;
}
.blog-cat--right{
	width: 75%;
}
.blog-categories--swiper{
	padding: 5px;
	margin: -5px;
	overflow: hidden;
	margin-bottom: 10px;
}
.swiper-pagination--wrap{
	width: 100%;
	display: flex;
	justify-content: center;
}
.swiper-pagination{
	display: flex;
	gap: 5px;
}
.swiper-pagination .swiper-pagination-bullet-active{
	background-color: #15925f;
}
.section-title{
	color: var(--color-ink);
	font-size: 32px;
	line-height: 1.18;
	font-weight: 700;
	font-family: 'Montserrat', sans-serif;
}
.section-title span{
	color: #5a5a5a;
}
.blog-tags--title{
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}
.blog-tags--title .icon{
	width: 20px;
	height: 20px;
}
.blog-tags--title span{
	color: #000;
	font-size: 16px;
	font-weight: 700;
	font-family: var(--font-montserrat);
}
.blog-tags--list{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.blog-tags--item{
	display: flex;
	align-items: center;
	background-color: #efefef;
	font-family: var(--font-montserrat);
	padding: 5px 8px;
	border-radius: 15px;
	font-size: 13px;
	font-weight: 500;
	color: #000;
	width: max-content;
	text-decoration: none;
	transition: ease .2s;
	box-shadow: 0 0 3px 0px #0000006e;
}
.blog-tags--item:hover{
	background-color: var(--color-primary);
	color: #fff;
	box-shadow: 0 0 0 0 transparent;
}
@media (max-width: 680px) {
	.container {
		width: min(calc(100% - 24px), var(--container));
	}

	.hero,
	.page-hero,
	.section {
		padding: 36px 0;
	}

	.hero h1,
	.page-hero h1 {
		font-size: 38px;
	}

	.hero-lede,
	.page-hero p,
	.prose {
		font-size: 17px;
	}

	.quick-actions,
	.card-grid,
	.work-grid,
	.service-grid,
	.form-grid {
		grid-template-columns: 1fr;
	}

	.section-heading,
	.document-row {
		display: grid;
		grid-template-columns: 1fr;
	}

	.row-actions {
		justify-content: flex-start;
		min-width: 0;
	}

	.action-tile {
		min-height: 86px;
	}

	.card-body h2,
	.card-body h3,
	.section-heading h2,
	.info-panel h2,
	.three-column h2 {
		font-size: 26px;
	}
}
