html {
	width:100%;
	height: 100%;
	font-size:100%;
}

body
{
	height:100%;
	margin:0;
	padding:0;
	font-size: 80.01%;
	font-family: Verdana, Arial, Helvetica, sans-serif;
}

form { margin:0; padding:0;}
form.main-form
{ 
	display: block;
	margin:0; 
	padding:0;
	width:100%;
	height:100%;
}
 
#page-wrapper
{	
	min-height:100%;	  
	margin: 0 auto -85px;
	min-width: 990px;
}

* html #page-wrapper { height: 100%; }

#header { height: 77px; position: relative;}
#header table { width: 80%; height: 77px;}
#header td { padding: 0; vertical-align: middle; text-align: left;}

td#logo { padding-left: 32px;}
td#logo a { outline: none;}
td#slogan { padding-left: 32px; width: 100%;  font-size: 1.2em; font-style: italic; /*font-weight: bold;*/}

#search { width: 23%; position: absolute; right:21px; top: 30px; }
#search div.flat{height: 20px;}							 
#search div.search-box
{
	border: 1px solid; 
	height: 20px;
	overflow:hidden;
	padding:0;
	position: absolute;
	left: 21px;
	right: 61px;
	float: left;
}

* html #search div.search-box { margin-right:-82px;	}

#search div.search-box input
{
	border:1px solid;
	width:98%;
	height: 18px;
	padding:0;
	margin:0;
}

#search input { vertical-align: top;}
#search-button { float: right; width:48px; border: 1px solid;}
#search-button input::-moz-focus-inner { border: 0; padding: 0; }/*Remove button padding in FF*/
#search-button input 
{
	display: block;
	border: none;
	background: none;	
	width:48px;
	padding:0;
	margin:0;
	font-family: Georgia, serif;
	font-size: 12px;
	height: 19px;
	cursor: pointer;
	cursor: hand;
	outline: none;	
}

div.search-item h4 { margin-bottom: 0.4em;}

#top-menu { margin: 0 0 0 32px; padding: 0; list-style-type: none; overflow: hidden; zoom:1;}
#top-menu li { float: left; margin: 0 1.5em 0 0; }
#top-menu a  
{
	display: block; 
	border-bottom-width: 2px;
	border-bottom-style: solid;

	text-decoration: none; 
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 1.2em;
	outline: none;
	padding: 11px 0 7px;	
	margin: 0 16px 3px;
}

#top-menu li.selected a { padding: 11px 16px 10px; margin: 0;}
#top-menu li.selected .r1 { border-left: 1px solid; border-right: 1px solid; }
#top-menu li.selected .r0 { border-left: 1px solid; border-right: 1px solid; }

* html #top-menu .r1 { width: 2px;}
* html #top-menu .r0 { width: 2px;}

#top-menu li.selected .r1 { width: expression(runtimeStyle.width = parentNode.offsetWidth - 4 + 'px'); }
#top-menu li.selected .r0 { width: expression(runtimeStyle.width = parentNode.offsetWidth - 2 + 'px'); }

#breadcrumb  {	padding:0; margin: 0 41px 32px 32px;}
#breadcrumb p { margin: 0 10px;}

#breadcrumb span.bx-breadcrumbs-name { font-size: 0.85em; padding:0 0.4em;}
#breadcrumb a {text-decoration: none;}
#breadcrumb a:hover { text-decoration: underline;}
#breadcrumb b { border-right: 1px solid; border-left: 1px solid;}
#breadcrumb b.top { margin-bottom: 2px;}
#breadcrumb b.bottom { margin-top: 2px;}

#content-wrapper { overflow: hidden; margin: 21px 0 50px; zoom:1;}
#content { float: left; width: 77%; overflow: hidden; }
#sidebar { float: right; width: 23%; overflow: hidden;  }
#sidebar-inner { margin-right: 21px;}

#workarea-wrapper { margin: 0 38px 0 25px;}
#left-menu { float: left; width: 25%; }

ul.left-menu { font-weight: bold; list-style-type: none; margin: 0; padding: 0 0 0 1.5em;}

/* Root */
ul.left-menu a { font-size: 1.1em; outline: none;}
ul.left-menu .selected a { text-decoration: none; }

ul.left-menu ul a { font-size: 0.85em !important; text-decoration: underline !important; outline: none; vertical-align:top; }

ul.left-menu li.current { overflow: hidden; zoom:1; display: block; margin-top: 0.3em;}
ul.left-menu .current i  
{
	padding: 1px 10px 2px 13px; 
	text-decoration: none !important;
	display: block;
	zoom:1;
	font-style:normal;
	font-size: 0.85em !important;
	vertical-align:top;
}

ul.left-menu .current b { border-left:1px solid; border-right:1px solid; }
ul.left-menu ul { font-weight: normal; margin: 0.5em 0 0 -4px; padding: 0; list-style-type: none;}
ul.left-menu ul ul { margin: 0.5em 0 0 1em; }
ul.left-menu li li
{ 
	margin-bottom: 0.7em; 
	padding:0 13px 0;
	text-indent: 0;
	background: url(images/left-menu-arrow.gif) no-repeat 5px 3px;
	list-style-type: none; 
}

ul.left-menu li
{
	behavior:expression( !this.before ? this.before = this.innerHTML = '<span class="dash">&mdash;&nbsp;</span>' + this.innerHTML :'' );
	text-indent:-1.35em;
	background: none;
	padding:0;
	margin-bottom: 1.5em;
}
ul.left-menu li li { behavior: '';}

ul.left-menu li:before { content:'\2014\a0'; }
ul.left-menu li li:before { content:'';}

ul.left-menu li li li { margin-bottom: 0.3em; }

#workarea { float: right; width: 75%; clear:right; }
#workarea-inner { margin-left: 25px;}

#banner 
{ 
	height: 175px; 
	margin: 0 28px 40px 19px; 
	overflow:hidden; 
	position:relative; 
}

#banner-image { height:175px; width: 425px; overflow:hidden; text-decoration: none; display: block; }
#banner-text 
{ 
	padding: 0; 
	font-family: Arial, Helvetica, sans-serif;
	font-size: 2em;
	position: absolute;
	left: 35%;
	top: 0;
	left:0;
	width: 100%;
	height: 175px;
	z-index:10;
	
}

#banner-text td {padding:0;}
#banner-text a { text-decoration: none; display: block;}

#banner-text small { font-size: 0.5em; padding-top: 1em; display: block; padding-left: 30px;}
#banner-text big { font-size: 1.4em; display: block; }
#banner-text span { padding-left: 30px; display:block;}
#banner-overlay
{ 
	z-index:5; 
	height: 175px; 
	width: 100%; 
	position: absolute; 
	top: 0;
	left: 0; 
	outline: none;
	display: block;
	cursor: pointer;
	cursor: hand;
}



#footer, #space-for-footer  { height: 85px; }
#footer { position: relative;}

#copyright { padding:21px 0 0 35px; font-size: 0.85em; width: 49%;}
#copyright p { margin:0;}

#footer-links { margin:0; padding:0; list-style: none;}
#bottom-menu { width:50%; position:absolute; right:25px; top: 20px;  text-align: right;}
#footer-links li { display: inline; padding-left:1.5em;}

/* Navigation */
div.navigation { font-size:100%; line-height:200%; }
span.navigation-title { padding-right:0.65em; font-weight: bold;}
div.navigation a { text-decoration:underline; padding:0.2em 0.3em;}
span.nav-current-page { padding:0.2em 0.3em; }
div.navigation span.arrow { font-size:100%; font-family:Times, serif; }
div.navigation span.ctrl { font-size:85%; }

/*Site Map */
table.map-columns { width: 100%;}
table.map-columns td { vertical-align: top; padding: 0;}
table.map-columns ul { padding:0 0 2em 0; font-weight: bold;}
table.map-columns li { margin: 0 0 1.5em 0 !important;}
table.map-columns li li { margin: 0 0 0.6em 0 !important;}
table.map-columns ul ul { font-weight: normal; padding:0 0 0 1.5em; margin: 0.6em 0}


/* Ask a question */
#support {position: relative; margin:0 0 3em; padding-top: 3px;}
#support-question { position: absolute; width: 30px; height: 30px; top: 0; left:0;}
#support-text { height: 20px; margin-left: 15px; padding-left: 22px; padding-top: 2px; overflow:hidden;}
#support-text a { font-size: 14px; font-weight: bold; text-decoration: none;}
#support b { border-right:1px solid; margin-left: 15px;}

/* Schedule */
#schedule { margin: 0 0 3em; }
#schedule div.schedule { font-size: 0.85em; }
#schedule p { margin: 0 0 1em; }

/* Telephone*/
#telephone  
{
	padding: 0 0 0 37px;
	margin: 0 0 1.5em;
	min-height: 30px;
}

* html #telephone { padding-top: 6px;}

#telephone nobr { font-family: Georgia, serif;  font-size: 1.6em;}

/* Content Block List */
dl.block-list { margin: 0 0 3.2em 0; padding:0; }
dl.block-list dt { margin: 0; padding: 0 0 0.3em; font-size: 1em;}
dl.block-list dd { margin:0 0 1.8em; padding:0; font-size: 0.85em;}

/* Information Box*/
div.information-box .r1 { border-left:1px solid; border-right:1px solid; }
div.information-box .r0 { border-left:1px solid; border-right:1px solid; }
div.information-box-content { font-size: 0.9em; padding: 12px 15px;}

/* News List */
div.news-list { margin: 0 0 2em;}
div.news-item { margin: 0 0 1.3em; }
div.news-date { margin: 0 0 0.5em; }
div.news-title { font-size: 1.2em; margin: 0 0 0.5em; }
a.news-detail-link { display: block; margin: 1em 0 0; outline: none;}

/* Forms */
div.content-form div.form-input input, div.content-form div.form-input textarea, div.content-form div.form-input select 
{ 	
	border:1px solid;  
	border-color: #777 #CCCCCC #CCCCCC #777
}
 
div.content-form div.field label.field-title { font-size: 1.117em; }

/* ASVA LOGISTICA: full-width video hero on the main page */
.asva-home-page #page-wrapper {
	min-width: 0;
}

.asva-home-page #content-wrapper {
	margin: 0;
	overflow: visible;
}

.asva-home-page #content {
	float: none;
	width: 100%;
	overflow: visible;
}

.asva-home-page #sidebar,
.asva-home-page #left-menu,
.asva-home-page #workarea-inner > h5 {
	display: none;
}

.asva-home-page #workarea-wrapper,
.asva-home-page #workarea-inner {
	margin: 0;
}

.asva-home-page #workarea {
	float: none;
	width: 100%;
}

.asva-hero,
.asva-hero * {
	box-sizing: border-box;
}

.asva-hero {
	position: relative;
	width: 100%;
	min-height: clamp(560px, 72vh, 760px);
	overflow: hidden;
	display: flex;
	align-items: center;
	isolation: isolate;
	color: #fff;
	background: #101820;
}

.asva-hero__video {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.asva-hero__shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(8, 18, 27, 0.92) 0%, rgba(8, 18, 27, 0.70) 45%, rgba(8, 18, 27, 0.22) 76%, rgba(8, 18, 27, 0.12) 100%),
		linear-gradient(0deg, rgba(8, 18, 27, 0.34), rgba(8, 18, 27, 0.03) 55%);
}

.asva-hero__inner {
	position: relative;
	z-index: 2;
	width: min(1240px, calc(100% - 64px));
	margin: 0 auto;
	padding: 76px 0;
}

.asva-hero__content {
	max-width: 760px;
}

.asva-hero__eyebrow {
	margin: 0 0 18px;
	color: #f4b942;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.asva-hero__title {
	margin: 0;
	color: #fff;
	font-family: Arial, Helvetica, sans-serif;
	font-size: clamp(40px, 5.2vw, 74px);
	font-weight: 700;
	line-height: 1.04;
	letter-spacing: -0.035em;
}

.asva-hero__text {
	max-width: 670px;
	margin: 24px 0 0;
	color: rgba(255, 255, 255, 0.86);
	font-family: Arial, Helvetica, sans-serif;
	font-size: clamp(18px, 1.6vw, 22px);
	line-height: 1.55;
}

.asva-hero__button {
	display: inline-flex;
	min-height: 54px;
	margin-top: 34px;
	padding: 0 28px;
	align-items: center;
	justify-content: center;
	border: 1px solid #f4b942;
	border-radius: 4px;
	color: #101820 !important;
	background: #f4b942;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none !important;
	transition: transform 0.2s ease, background-color 0.2s ease;
}

.asva-hero__button:hover {
	color: #101820 !important;
	background: #ffc95c;
	transform: translateY(-2px);
}

@media (max-width: 720px) {
	.asva-hero {
		min-height: 620px;
	}

	.asva-hero__shade {
		background: linear-gradient(90deg, rgba(8, 18, 27, 0.90), rgba(8, 18, 27, 0.48));
	}

	.asva-hero__inner {
		width: calc(100% - 32px);
		padding: 56px 0;
	}

	.asva-hero__title {
		font-size: clamp(36px, 11vw, 52px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.asva-hero__video {
		display: none;
	}

	.asva-hero__button {
		transition: none;
	}
}

/* ASVA LOGISTICA: modern two-level header */
.asva-site-header {
	position: relative;
	z-index: 20;
	width: 100%;
	background: #fff;
	font-family: Arial, Helvetica, sans-serif;
	box-shadow: 0 1px 0 rgba(24, 45, 79, 0.08);
}

.asva-header-top {
	display: flex;
	width: min(1380px, calc(100% - 48px));
	min-height: 76px;
	margin: 0 auto;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}

.asva-header-logo {
	display: block;
	flex: 0 0 auto;
	line-height: 0;
}

.asva-header-logo img {
	display: block;
	width: 232px;
	height: auto;
}

.asva-header-contacts {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 20px;
}

.asva-header-email {
	display: inline-flex;
	width: 38px;
	height: 38px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	color: #fff !important;
	background: #3b458d;
	text-decoration: none !important;
	transition: transform 0.2s ease, background-color 0.2s ease;
}

.asva-header-email svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.asva-header-email:hover {
	color: #fff !important;
	background: #2f397d;
	transform: translateY(-2px);
}

.asva-header-phone {
	display: flex;
	align-items: baseline;
	gap: 6px;
	white-space: nowrap;
}

.asva-header-phone span {
	color: #687386;
	font-size: 13px;
}

.asva-header-phone a {
	color: #3b458d !important;
	font-size: 17px;
	font-weight: 700;
	text-decoration: none !important;
}

.asva-header-button {
	display: inline-flex;
	min-height: 44px;
	padding: 0 25px;
	align-items: center;
	justify-content: center;
	border-radius: 5px;
	color: #fff !important;
	background: #3b458d;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
	transition: transform 0.2s ease, background-color 0.2s ease;
}

.asva-header-button:hover {
	color: #fff !important;
	background: #2f397d;
	transform: translateY(-2px);
}

.asva-main-nav {
	display: flex;
	min-height: 54px;
	align-items: center;
	justify-content: center;
	border-top: 1px solid #edf0f5;
	background: #fff;
}

.asva-main-nav #top-menu {
	display: flex;
	width: min(1120px, calc(100% - 48px));
	margin: 0 auto;
	padding: 0;
	align-items: center;
	justify-content: center;
	gap: 34px;
	overflow: visible;
	list-style: none;
}

.asva-main-nav #top-menu li {
	float: none;
	margin: 0;
	padding: 0;
}

.asva-main-nav #top-menu a,
.asva-main-nav #top-menu li.selected a {
	display: block;
	margin: 0;
	padding: 18px 0 15px;
	border: 0;
	border-bottom: 3px solid transparent;
	color: #3b458d !important;
	background: transparent !important;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none !important;
	white-space: nowrap;
}

.asva-main-nav #top-menu a:hover,
.asva-main-nav #top-menu li.selected a {
	border-bottom-color: #e8a500;
	color: #e09a00 !important;
}

.asva-main-nav #top-menu li.selected .r0,
.asva-main-nav #top-menu li.selected .r1 {
	width: auto;
	border: 0;
	background: transparent !important;
}

/* ASVA LOGISTICA: reference-style hero layout */
.asva-hero {
	height: clamp(520px, 58vh, 650px);
	min-height: 520px;
}

.asva-hero__content {
	display: grid;
	max-width: none;
	grid-template-columns: minmax(0, 1.18fr) minmax(330px, 0.82fr);
	align-items: center;
	gap: clamp(48px, 7vw, 104px);
}

.asva-hero__primary {
	max-width: 700px;
}

.asva-hero__benefits {
	display: grid;
	gap: 28px;
}

.asva-benefit {
	display: grid;
	grid-template-columns: 52px 1fr;
	align-items: center;
	gap: 18px;
}

.asva-benefit__icon {
	display: inline-flex;
	width: 52px;
	height: 52px;
	align-items: center;
	justify-content: center;
	border: 2px solid rgba(255, 255, 255, 0.84);
	border-radius: 50%;
	color: #fff;
}

.asva-benefit__icon svg {
	width: 28px;
	height: 28px;
	fill: currentColor;
}

.asva-benefit__text {
	color: #fff;
	font-family: Arial, Helvetica, sans-serif;
	font-size: clamp(17px, 1.4vw, 21px);
	line-height: 1.35;
}

@media (max-width: 980px) {
	.asva-header-top {
		width: calc(100% - 32px);
		gap: 18px;
	}

	.asva-header-logo img {
		width: 205px;
	}

	.asva-header-phone span {
		display: none;
	}

	.asva-main-nav {
		overflow-x: auto;
		justify-content: flex-start;
	}

	.asva-main-nav #top-menu {
		width: max-content;
		min-width: 100%;
		padding: 0 20px;
		justify-content: flex-start;
		gap: 24px;
	}

	.asva-hero {
		height: auto;
		min-height: 640px;
	}

	.asva-hero__content {
		grid-template-columns: 1fr;
		gap: 42px;
	}

	.asva-hero__benefits {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}

	.asva-benefit {
		grid-template-columns: 44px 1fr;
		gap: 12px;
	}

	.asva-benefit__icon {
		width: 44px;
		height: 44px;
	}
}

@media (max-width: 720px) {
	.asva-header-top {
		min-height: 70px;
	}

	.asva-header-logo img {
		width: 180px;
	}

	.asva-header-email,
	.asva-header-phone {
		display: none;
	}

	.asva-header-button {
		min-height: 40px;
		padding: 0 16px;
		font-size: 13px;
	}

	.asva-hero__benefits {
		grid-template-columns: 1fr;
	}

	.asva-benefit__text {
		font-size: 17px;
	}
}





.asva-header-logo {
    display: flex;
    align-items: center;
    gap: 12px;
}

.asva-header-horse {
    display: block;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    object-fit: cover;
    object-position: center;
    border: 0;
    border-radius: 0;
    pointer-events: none;
}

/* ========================================================================== 
   ASVA LOGISTICA — полноэкранная главная страница
   ========================================================================== */

:root {
	--asva-header-height: 78px;
	--asva-footer-height: 58px;
	--asva-sidebar-width: 348px;
	--asva-sidebar-collapsed-width: 72px;
	--asva-blue: #273b91;
	--asva-yellow: #f3b52f;
	--asva-dark: #07121d;
}

.asva-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

body.asva-home-page {
	min-width: 0;
	min-height: 100%;
	overflow: hidden;
	background: var(--asva-dark);
}

.asva-home-page #page-wrapper {
	position: static;
	min-width: 0;
	min-height: 100dvh;
	margin: 0;
}

.asva-home-page #content-wrapper {
	display: none;
}

/* Верхняя панель */
.asva-site-header {
	position: relative;
	z-index: 60;
	width: 100%;
	min-height: var(--asva-header-height);
	box-sizing: border-box;
	background: #fff;
	box-shadow: 0 1px 0 rgba(24, 45, 79, 0.10);
	font-family: Arial, Helvetica, sans-serif;
}

.asva-site-header--overlay {
	position: fixed;
	top: 0;
	left: 0;
	height: var(--asva-header-height);
	background: linear-gradient(180deg, rgba(5, 15, 24, 0.93), rgba(5, 15, 24, 0.76));
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.18);
	backdrop-filter: blur(10px);
}

.asva-header-inner {
	display: flex;
	width: 100%;
	height: var(--asva-header-height);
	padding: 0 clamp(18px, 3vw, 54px);
	box-sizing: border-box;
	align-items: center;
	gap: clamp(24px, 3.5vw, 66px);
}

.asva-header-logo {
	display: inline-flex;
	min-width: 230px;
	align-items: center;
	gap: 10px;
	line-height: 0;
	text-decoration: none;
}

.asva-header-logo img {
	display: block;
	width: 205px;
	height: auto;
}

.asva-site-header--overlay .asva-header-logo img {
	filter: brightness(0) invert(1);
}

.asva-header-horse {
	display: block;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border: 0;
	object-fit: cover;
	pointer-events: none;
}

/* В логотипе уже есть лошадь, поэтому отдельную анимацию не показываем. */
.asva-header-horse {
	display: none !important;
}

.asva-top-menu {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 10px;
}

.asva-top-menu a {
	display: inline-flex;
	min-height: 38px;
	padding: 0 18px;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(39, 59, 145, 0.18);
	border-radius: 6px;
	color: var(--asva-blue) !important;
	background: rgba(255, 255, 255, 0.80);
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none !important;
	white-space: nowrap;
	transition: transform .18s ease, color .18s ease, background-color .18s ease, border-color .18s ease;
}

.asva-site-header--overlay .asva-top-menu a {
	border-color: rgba(255, 255, 255, 0.34);
	color: #fff !important;
	background: rgba(5, 15, 24, 0.36);
}

.asva-top-menu a:hover,
.asva-top-menu a:focus-visible {
	border-color: var(--asva-yellow);
	color: var(--asva-dark) !important;
	background: var(--asva-yellow);
	transform: translateY(-2px);
}

.asva-header-phone {
	margin-left: auto;
	color: var(--asva-blue) !important;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none !important;
	white-space: nowrap;
}

.asva-site-header--overlay .asva-header-phone {
	color: #fff !important;
}

.asva-top-menu-toggle {
	display: none;
	width: 44px;
	height: 44px;
	margin-left: auto;
	padding: 10px;
	border: 1px solid rgba(255, 255, 255, .35);
	border-radius: 6px;
	background: rgba(5, 15, 24, .45);
	cursor: pointer;
}

.asva-top-menu-toggle > span:not(.asva-visually-hidden) {
	display: block;
	height: 2px;
	margin: 4px 0;
	border-radius: 2px;
	background: #fff;
}

/* Фоновый экран */
.asva-home-screen {
	position: fixed;
	inset: 0;
	z-index: 1;
	width: 100%;
	height: 100dvh;
	min-height: 520px;
	box-sizing: border-box;
	overflow: hidden;
	background-color: var(--asva-dark);
	background-image: var(--asva-home-bg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	font-family: Arial, Helvetica, sans-serif;
}

.asva-home-screen__shade {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(3, 11, 18, .54) 0%, rgba(3, 11, 18, .16) 45%, rgba(3, 11, 18, .08) 100%),
		linear-gradient(0deg, rgba(3, 11, 18, .54) 0%, transparent 38%, rgba(3, 11, 18, .18) 100%);
	pointer-events: none;
}

/* Левая панель услуг */
.asva-service-sidebar {
	position: fixed;
	top: calc(var(--asva-header-height) + 12px);
	bottom: calc(var(--asva-footer-height) + 12px);
	left: 12px;
	z-index: 35;
	display: flex;
	width: var(--asva-sidebar-width);
	padding: 12px;
	box-sizing: border-box;
	flex-direction: column;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 10px;
	color: #fff;
	background: rgba(5, 15, 24, .84);
	box-shadow: 0 18px 50px rgba(0, 0, 0, .26);
	backdrop-filter: blur(12px);
	overflow: hidden;
	transition: width .26s ease;
}

.asva-service-sidebar__head {
	display: flex;
	min-height: 40px;
	padding: 0 2px 10px 10px;
	box-sizing: border-box;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, .13);
}

.asva-service-sidebar__title {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: opacity .16s ease;
}

.asva-service-sidebar__toggle {
	display: inline-flex;
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	padding: 0;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 6px;
	color: #fff;
	background: rgba(255, 255, 255, .08);
	cursor: pointer;
	transition: background-color .18s ease, transform .26s ease;
}

.asva-service-sidebar__toggle:hover,
.asva-service-sidebar__toggle:focus-visible {
	background: var(--asva-yellow);
	color: var(--asva-dark);
}

.asva-service-sidebar__toggle svg {
	width: 21px;
	height: 21px;
	fill: currentColor;
}

.asva-service-sidebar__links {
	display: grid;
	min-height: 0;
	margin-top: 10px;
	flex: 1 1 auto;
	grid-template-rows: repeat(8, minmax(0, 1fr));
	gap: 6px;
}

.asva-service-sidebar__links a {
	display: grid;
	min-height: 0;
	padding: 5px 10px;
	box-sizing: border-box;
	grid-template-columns: 38px minmax(0, 1fr);
	align-items: center;
	gap: 11px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 7px;
	color: #fff !important;
	background: rgba(255, 255, 255, .055);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.18;
	text-decoration: none !important;
	transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}

.asva-service-sidebar__links a:hover,
.asva-service-sidebar__links a:focus-visible {
	border-color: rgba(243, 181, 47, .88);
	background: rgba(243, 181, 47, .17);
	transform: translateX(3px);
}

.asva-service-sidebar__number {
	display: inline-flex;
	width: 34px;
	height: 34px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(243, 181, 47, .72);
	border-radius: 50%;
	color: var(--asva-yellow);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .04em;
}

.asva-service-sidebar__label {
	display: block;
	min-width: 0;
	transition: opacity .16s ease;
}

.asva-sidebar-collapsed .asva-service-sidebar {
	width: var(--asva-sidebar-collapsed-width);
}

.asva-sidebar-collapsed .asva-service-sidebar__head {
	padding-left: 4px;
	justify-content: center;
}

.asva-sidebar-collapsed .asva-service-sidebar__title,
.asva-sidebar-collapsed .asva-service-sidebar__label {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.asva-sidebar-collapsed .asva-service-sidebar__toggle {
	transform: rotate(180deg);
}

.asva-sidebar-collapsed .asva-service-sidebar__links a {
	padding: 4px;
	grid-template-columns: 1fr;
	justify-items: center;
	gap: 0;
}

.asva-sidebar-collapsed .asva-service-sidebar__links a:hover {
	transform: none;
}

/* Правая закрывающаяся панель для клиентов */
.asva-client-sidebar {
	position: fixed;
	top: calc(var(--asva-header-height) + 12px);
	right: 12px;
	bottom: calc(var(--asva-footer-height) + 12px);
	z-index: 35;
	display: flex;
	width: var(--asva-sidebar-collapsed-width);
	padding: 12px;
	box-sizing: border-box;
	flex-direction: column;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 10px;
	color: #fff;
	background: rgba(5, 15, 24, .84);
	box-shadow: 0 18px 50px rgba(0, 0, 0, .26);
	backdrop-filter: blur(12px);
	overflow: hidden;
	transition: width .26s ease;
}

.asva-client-sidebar__head {
	display: flex;
	min-height: 40px;
	padding: 0 2px 10px 4px;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
	gap: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, .13);
}

.asva-client-sidebar__title {
	position: absolute;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity .16s ease;
}

.asva-client-sidebar__toggle {
	display: inline-flex;
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	padding: 0;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 6px;
	color: #fff;
	background: rgba(255, 255, 255, .08);
	cursor: pointer;
	transition: background-color .18s ease, transform .26s ease;
}

.asva-client-sidebar__toggle:hover,
.asva-client-sidebar__toggle:focus-visible {
	color: var(--asva-dark);
	background: var(--asva-yellow);
}

.asva-client-sidebar__toggle svg {
	width: 21px;
	height: 21px;
	fill: currentColor;
}

.asva-client-sidebar__links {
	display: grid;
	margin-top: 10px;
	grid-auto-rows: minmax(64px, 72px);
	gap: 6px;
}

.asva-client-sidebar__links a {
	display: grid;
	padding: 5px 4px;
	box-sizing: border-box;
	grid-template-columns: 1fr;
	align-items: center;
	justify-items: center;
	gap: 0;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 7px;
	color: #fff !important;
	background: rgba(255, 255, 255, .055);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.18;
	text-decoration: none !important;
	transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}

.asva-client-sidebar__links a:hover,
.asva-client-sidebar__links a:focus-visible {
	border-color: rgba(243, 181, 47, .88);
	background: rgba(243, 181, 47, .17);
}

.asva-client-sidebar__number {
	display: inline-flex;
	width: 34px;
	height: 34px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(243, 181, 47, .72);
	border-radius: 50%;
	color: var(--asva-yellow);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .04em;
}

.asva-client-sidebar__label {
	position: absolute;
	opacity: 0;
	pointer-events: none;
	transition: opacity .16s ease;
}

.asva-client-sidebar-open .asva-client-sidebar {
	width: 300px;
}

.asva-client-sidebar-open .asva-client-sidebar__head {
	padding-left: 10px;
	justify-content: space-between;
}

.asva-client-sidebar-open .asva-client-sidebar__title,
.asva-client-sidebar-open .asva-client-sidebar__label {
	position: static;
	opacity: 1;
	pointer-events: auto;
}

.asva-client-sidebar-open .asva-client-sidebar__toggle {
	transform: rotate(180deg);
}

.asva-client-sidebar-open .asva-client-sidebar__links a {
	padding: 5px 10px;
	grid-template-columns: 38px minmax(0, 1fr);
	justify-items: stretch;
	gap: 11px;
}

.asva-client-sidebar-open .asva-client-sidebar__links a:hover {
	transform: translateX(-3px);
}

/* Центральные кликабельные карточки */
.asva-center-cards {
	position: fixed;
	top: calc(var(--asva-header-height) + clamp(22px, 4vh, 44px));
	right: calc(var(--asva-sidebar-collapsed-width) + clamp(28px, 4vw, 72px));
	left: calc(var(--asva-sidebar-width) + clamp(28px, 4vw, 72px));
	z-index: 25;
	display: grid;
	width: auto;
	max-width: 1380px;
	padding: 6px 4px 10px;
	box-sizing: border-box;
	margin: 0 auto;
	grid-template-columns: repeat(3, minmax(260px, 1fr));
	gap: clamp(12px, 1.5vw, 20px);
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	transition: left .26s ease;
}

.asva-center-cards::-webkit-scrollbar {
	display: none;
}

.asva-sidebar-collapsed .asva-center-cards {
	left: calc(var(--asva-sidebar-collapsed-width) + clamp(28px, 4vw, 72px));
}

.asva-center-card {
	position: relative;
	display: block;
	min-width: 0;
	aspect-ratio: 1.906 / 1;
	scroll-snap-align: start;
	border: 1px solid rgba(123, 176, 214, .48);
	border-radius: 13px;
	background: #08131d;
	box-shadow: 0 18px 45px rgba(0, 0, 0, .28);
	overflow: hidden;
	text-decoration: none !important;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.asva-center-card::after {
	position: absolute;
	inset: 0;
	border-radius: inherit;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .04);
	content: '';
	pointer-events: none;
}

.asva-center-card img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.asva-center-card__more {
	position: absolute;
	right: 12px;
	bottom: 11px;
	display: inline-flex;
	min-height: 30px;
	padding: 0 12px;
	align-items: center;
	gap: 7px;
	border: 1px solid rgba(243, 181, 47, .72);
	border-radius: 5px;
	color: #fff;
	background: rgba(5, 15, 24, .84);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .05em;
	backdrop-filter: blur(7px);
}

.asva-center-card__more b {
	color: var(--asva-yellow);
	font-size: 15px;
}

.asva-center-card:hover,
.asva-center-card:focus-visible {
	border-color: var(--asva-yellow);
	box-shadow: 0 22px 54px rgba(0, 0, 0, .38), 0 0 0 2px rgba(243, 181, 47, .14);
	transform: translateY(-5px);
}

.asva-center-card:hover .asva-center-card__more,
.asva-center-card:focus-visible .asva-center-card__more {
	color: var(--asva-dark);
	background: var(--asva-yellow);
}

.asva-center-card:hover .asva-center-card__more b,
.asva-center-card:focus-visible .asva-center-card__more b {
	color: var(--asva-dark);
}

/* Две главные кнопки */
.asva-home-actions {
	position: fixed;
	left: calc(var(--asva-sidebar-width) + clamp(38px, 5vw, 94px));
	bottom: calc(var(--asva-footer-height) + clamp(34px, 6vh, 78px));
	z-index: 30;
	display: flex;
	align-items: stretch;
	gap: 12px;
	transition: left .26s ease;
}

.asva-sidebar-collapsed .asva-home-actions {
	left: calc(var(--asva-sidebar-collapsed-width) + clamp(38px, 5vw, 94px));
}

.asva-home-action {
	display: inline-flex;
	min-width: 218px;
	min-height: 58px;
	padding: 10px 22px;
	box-sizing: border-box;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	border: 1px solid transparent;
	border-radius: 7px;
	font-family: Arial, Helvetica, sans-serif;
	text-align: left;
	text-decoration: none !important;
	cursor: pointer;
	box-shadow: 0 12px 28px rgba(0, 0, 0, .24);
	transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}

.asva-home-action span {
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
}

.asva-home-action small {
	margin-top: 3px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	opacity: .76;
}

.asva-home-action--primary {
	color: var(--asva-dark);
	background: var(--asva-yellow);
}

.asva-home-action--secondary {
	border-color: rgba(255, 255, 255, .58);
	color: #fff !important;
	background: rgba(5, 15, 24, .66);
	backdrop-filter: blur(8px);
}

.asva-home-action:hover,
.asva-home-action:focus-visible {
	transform: translateY(-3px);
}

.asva-home-action--primary:hover,
.asva-home-action--primary:focus-visible {
	background: #ffca50;
}

.asva-home-action--secondary:hover,
.asva-home-action--secondary:focus-visible {
	border-color: var(--asva-yellow);
	background: rgba(5, 15, 24, .84);
}

/* Нижняя панель */
#footer.asva-footer {
	position: relative;
	width: 100%;
	height: var(--asva-footer-height);
	box-sizing: border-box;
	font-family: Arial, Helvetica, sans-serif;
}

#footer.asva-footer--overlay {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 60;
	border-top: 1px solid rgba(255, 255, 255, .18);
	color: #fff;
	background: rgba(5, 15, 24, .84);
	backdrop-filter: blur(10px);
}

.asva-footer__inner {
	display: flex;
	width: 100%;
	height: 100%;
	padding: 0 clamp(18px, 3vw, 54px);
	box-sizing: border-box;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.asva-footer__copyright {
	font-size: 11px;
	letter-spacing: .08em;
	white-space: nowrap;
}

.asva-footer__actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.asva-footer__actions a {
	display: inline-flex;
	min-height: 34px;
	padding: 0 15px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(39, 59, 145, .24);
	border-radius: 5px;
	color: var(--asva-blue) !important;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none !important;
}

.asva-footer--overlay .asva-footer__actions a {
	border-color: rgba(255, 255, 255, .3);
	color: #fff !important;
	background: rgba(255, 255, 255, .07);
}

.asva-footer__actions a:hover,
.asva-footer__actions a:focus-visible,
.asva-footer__actions .asva-footer__order {
	border-color: var(--asva-yellow);
	color: var(--asva-dark) !important;
	background: var(--asva-yellow);
}

/* Окно заказа звонка */
.asva-callback-backdrop {
	position: fixed;
	inset: 0;
	z-index: 90;
	visibility: hidden;
	background: rgba(3, 9, 15, .72);
	opacity: 0;
	backdrop-filter: blur(5px);
	transition: opacity .2s ease, visibility .2s ease;
}

.asva-callback-modal {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 100;
	visibility: hidden;
	width: min(430px, calc(100% - 32px));
	padding: 34px;
	box-sizing: border-box;
	border-radius: 12px;
	color: #16202b;
	background: #fff;
	box-shadow: 0 30px 90px rgba(0, 0, 0, .36);
	opacity: 0;
	transform: translate(-50%, -46%) scale(.97);
	transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
	font-family: Arial, Helvetica, sans-serif;
}

.asva-callback-open .asva-callback-backdrop,
.asva-callback-open .asva-callback-modal {
	visibility: visible;
	opacity: 1;
}

.asva-callback-open .asva-callback-modal {
	transform: translate(-50%, -50%) scale(1);
}

.asva-callback-modal__close {
	position: absolute;
	top: 12px;
	right: 12px;
	display: inline-flex;
	width: 36px;
	height: 36px;
	padding: 0;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 50%;
	color: #586574;
	background: #eef1f5;
	cursor: pointer;
}

.asva-callback-modal__close svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.asva-callback-modal__eyebrow {
	margin: 0 0 8px;
	color: #c88700;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.asva-callback-modal h2 {
	margin: 0;
	color: #16202b;
	font-size: 30px;
	line-height: 1.1;
}

.asva-callback-modal__lead {
	margin: 12px 0 22px;
	color: #66717e;
	font-size: 14px;
	line-height: 1.5;
}

.asva-callback-form {
	display: grid;
	gap: 14px;
}

.asva-callback-form__trap {
	position: absolute;
	left: -9999px;
}

.asva-callback-form__field {
	display: grid;
	gap: 6px;
	color: #34404c;
	font-size: 12px;
	font-weight: 700;
}

.asva-callback-form__field input {
	width: 100%;
	height: 46px;
	padding: 0 13px;
	box-sizing: border-box;
	border: 1px solid #cfd5dc;
	border-radius: 6px;
	color: #16202b;
	background: #fff;
	font-size: 15px;
	outline: none;
}

.asva-callback-form__field input:focus {
	border-color: var(--asva-blue);
	box-shadow: 0 0 0 3px rgba(39, 59, 145, .12);
}

.asva-callback-form__consent {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #66717e;
	font-size: 11px;
	line-height: 1.4;
}

.asva-callback-form__submit {
	min-height: 48px;
	border: 0;
	border-radius: 6px;
	color: var(--asva-dark);
	background: var(--asva-yellow);
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
}

.asva-callback-form__submit:disabled {
	opacity: .6;
	cursor: wait;
}

.asva-callback-form__status {
	min-height: 17px;
	margin: 0;
	font-size: 12px;
	line-height: 1.4;
}

.asva-callback-form__status.is-success { color: #147339; }
.asva-callback-form__status.is-error { color: #b42318; }

@media (max-width: 1180px) {
	.asva-header-inner { gap: 20px; }
	.asva-header-logo { min-width: 205px; }
	.asva-header-logo img { width: 175px; }
	.asva-top-menu a { padding: 0 13px; font-size: 13px; }
	.asva-header-phone { display: none; }
	.asva-center-cards {
		top: calc(var(--asva-header-height) + 14px);
		max-width: 450px;
		grid-template-columns: repeat(3, 100%);
		gap: 10px;
	}
}

@media (max-width: 820px) {
	:root {
		--asva-header-height: 68px;
		--asva-footer-height: 54px;
		--asva-sidebar-width: min(86vw, 340px);
		--asva-sidebar-collapsed-width: 64px;
	}

	.asva-header-inner { padding: 0 14px; }
	.asva-header-logo { min-width: 0; }
	.asva-header-logo img { width: 160px; }
	.asva-header-horse { width: 38px; height: 38px; flex-basis: 38px; }
	.asva-top-menu-toggle { display: block; }
	.asva-top-menu {
		position: fixed;
		top: calc(var(--asva-header-height) + 8px);
		right: 12px;
		display: grid;
		visibility: hidden;
		width: min(260px, calc(100vw - 24px));
		padding: 10px;
		gap: 7px;
		border: 1px solid rgba(255, 255, 255, .22);
		border-radius: 9px;
		background: rgba(5, 15, 24, .94);
		box-shadow: 0 18px 50px rgba(0, 0, 0, .3);
		opacity: 0;
		transform: translateY(-8px);
		transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
	}
	.asva-top-menu-open .asva-top-menu { visibility: visible; opacity: 1; transform: none; }
	.asva-top-menu a { width: 100%; color: #fff !important; background: rgba(255, 255, 255, .06); }
	.asva-service-sidebar { top: calc(var(--asva-header-height) + 8px); bottom: calc(var(--asva-footer-height) + 8px); left: 8px; padding: 8px; }
	.asva-client-sidebar { top: calc(var(--asva-header-height) + 8px); right: 8px; bottom: calc(var(--asva-footer-height) + 8px); padding: 8px; }
	.asva-client-sidebar-open .asva-client-sidebar { width: min(78vw, 300px); }
	.asva-service-sidebar__head { min-height: 36px; padding-bottom: 7px; }
	.asva-service-sidebar__links { margin-top: 7px; gap: 4px; }
	.asva-service-sidebar__links a { padding: 3px 7px; font-size: 12px; }
	.asva-service-sidebar__number { width: 29px; height: 29px; font-size: 10px; }
	.asva-home-actions,
	.asva-sidebar-collapsed .asva-home-actions {
		right: 14px;
		bottom: calc(var(--asva-footer-height) + 18px);
		left: auto;
		flex-direction: column;
		gap: 8px;
	}
	.asva-home-action { min-width: 190px; min-height: 50px; padding: 7px 14px; }
	.asva-home-action span { font-size: 13px; }
	.asva-home-action small { font-size: 10px; }
	.asva-footer__inner { padding: 0 12px; gap: 8px; }
	.asva-footer__copyright { font-size: 9px; }
	.asva-footer__actions { gap: 6px; }
	.asva-footer__actions a { min-height: 30px; padding: 0 9px; font-size: 10px; }
	.asva-center-cards,
	.asva-sidebar-collapsed .asva-center-cards {
		top: calc(var(--asva-header-height) + 10px);
		right: calc(var(--asva-sidebar-collapsed-width) + 14px);
		left: calc(var(--asva-sidebar-collapsed-width) + 14px);
		max-width: 440px;
	}
	.asva-center-card__more { right: 8px; bottom: 7px; min-height: 25px; padding: 0 8px; font-size: 9px; }
}

@media (max-height: 700px) {
	.asva-service-sidebar__links a { font-size: 12px; }
	.asva-service-sidebar__number { width: 28px; height: 28px; }
	.asva-service-sidebar__head { min-height: 34px; padding-bottom: 6px; }
	.asva-service-sidebar__links { margin-top: 6px; gap: 4px; }
	.asva-home-actions { bottom: calc(var(--asva-footer-height) + 22px); }
	.asva-center-cards { max-width: 320px; gap: 8px; }
}

@media (max-width: 540px) {
	.asva-header-logo img { width: 132px; }
	.asva-header-horse { display: none; }
	.asva-home-screen { background-position: 52% center; }
	.asva-home-actions { right: 10px; }
	.asva-home-action { min-width: 172px; }
	.asva-center-cards,
	.asva-sidebar-collapsed .asva-center-cards {
		right: 76px;
		left: 76px;
	}
	.asva-footer__copyright { max-width: 90px; white-space: normal; line-height: 1.2; }
}

@media (prefers-reduced-motion: reduce) {
	.asva-service-sidebar,
	.asva-client-sidebar,
	.asva-center-cards,
	.asva-center-card,
	.asva-service-sidebar__toggle,
	.asva-client-sidebar__toggle,
	.asva-home-actions,
	.asva-home-action,
	.asva-top-menu,
	.asva-callback-backdrop,
	.asva-callback-modal {
		transition: none !important;
	}
}


/* Планшет и уменьшенное окно браузера: все 6 карточек остаются видимыми. */
@media (min-width: 821px) and (max-width: 1180px) {
	.asva-center-cards,
	.asva-sidebar-collapsed .asva-center-cards {
		width: auto;
		max-width: none;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		overflow: visible;
		scroll-snap-type: none;
	}
}

/* Телефон: один вертикальный столбик между двумя свёрнутыми меню. */
@media (max-width: 820px) {
	:root {
		--asva-sidebar-collapsed-width: 48px;
	}

	html {
		height: auto;
		overflow-x: hidden;
		overflow-y: auto;
	}

	body.asva-home-page {
		height: auto;
		min-height: 100%;
		overflow-x: hidden;
		overflow-y: auto;
	}

	.asva-home-page #page-wrapper {
		min-height: 100%;
		overflow: visible;
	}

	.asva-home-screen {
		position: relative;
		inset: auto;
		width: 100%;
		height: auto;
		min-height: 100vh;
		padding:
			calc(var(--asva-header-height) + 15px)
			12px
			calc(var(--asva-footer-height) + 20px);
		overflow: visible;
		background: none;
	}

	/* Отдельный неподвижный слой сохраняет фон на всём экране. */
	.asva-home-screen::before {
		position: fixed;
		inset: 0;
		z-index: 0;
		content: "";
		background-color: var(--asva-dark);
		background-image: var(--asva-home-bg);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
		pointer-events: none;
	}

	.asva-home-screen__shade {
		position: fixed;
	}

	/* Уменьшаем свёрнутые панели, чтобы карточкам осталось больше места. */
	.asva-sidebar-collapsed .asva-service-sidebar,
	.asva-client-sidebar {
		width: var(--asva-sidebar-collapsed-width);
		padding: 5px;
	}

	.asva-service-sidebar__toggle,
	.asva-client-sidebar__toggle {
		width: 34px;
		height: 34px;
		flex: 0 0 34px;
	}

	/* Карточки не заходят под левую и правую панели. */
	.asva-center-cards,
	.asva-sidebar-collapsed .asva-center-cards {
		position: relative;
		top: auto;
		right: auto;
		left: auto;
		z-index: 25;
		display: grid;
		width: auto;
		max-width: none;
		margin-top: 0;
		margin-right: calc(var(--asva-sidebar-collapsed-width) + 8px);
		margin-bottom: 0;
		margin-left: calc(var(--asva-sidebar-collapsed-width) + 8px);
		padding: 0;
		grid-template-columns: minmax(0, 1fr);
		gap: 14px;
		overflow: visible;
		scroll-snap-type: none;
	}

	.asva-center-card {
		width: 100%;
		min-width: 0;
		aspect-ratio: 1.906 / 1;
		scroll-snap-align: none;
	}

	/* Две основные кнопки также располагаются между панелями. */
	.asva-home-actions,
	.asva-sidebar-collapsed .asva-home-actions {
		position: relative;
		right: auto;
		bottom: auto;
		left: auto;
		width: auto;
		margin-top: 18px;
		margin-right: calc(var(--asva-sidebar-collapsed-width) + 8px);
		margin-bottom: 12px;
		margin-left: calc(var(--asva-sidebar-collapsed-width) + 8px);
		flex-direction: column;
		gap: 10px;
	}

	.asva-home-action {
		width: 100%;
		min-width: 0;
	}
}




