/**
 * Theme Name:     Astra Child
 * Author:         Brainstorm Force
 * Template:       astra
 * Text Domain:	   astra-child
 * Description:    The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
 */


/* ===== Anchor Bullets UI ===================================== */
:root {
  --ab-color: #0b2c57;      /* темно-синий как на скрине */
  --ab-bg: #0b2c57;         /* фон плашки */
  --ab-text: #fff;
  --ab-gap: 10px;
  --ab-size: 14px;          /* диаметр точки */
  --ab-ring: 2px;           /* толщина обводки активного */
  --ab-right: 16px;         /* отступ от правого края */
  --ab-left: 16px;          /* отступ от левого края (если side=left) */
  --ab-z: 1000;
}

.ab-nav {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  z-index: var(--ab-z);
  pointer-events: none; /* кликаются только ссылки */
}
.ab-right { right: var(--ab-right); }
.ab-left  { left:  var(--ab-left); }

.ab-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex; 
  flex-direction: column;
  gap: var(--ab-gap);
}

.ab-item { display: block; }

.ab-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  pointer-events: auto;
  outline: none;
}
.ab-dot {
  width: var(--ab-size);
  height: var(--ab-size);
  border-radius: 50%;
  background: var(--ab-color);
  display: block;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}
/* Активный — «кольцо» как на скрине */
.ab-link.active .ab-dot {
  background: #fff;
  border: var(--ab-ring) solid var(--ab-color);
  box-shadow: 0 0 0 3px rgba(11,44,87,.18);
}
.ab-link:hover .ab-dot,
.ab-link:focus-visible .ab-dot { transform: scale(1.15); }

/* Плашка с названием слева от точки */
.ab-label {
  position: absolute;
  right: calc(100% + 10px);
  white-space: nowrap;
  background: var(--ab-bg);
  color: var(--ab-text);
  font-size: 12px;
  line-height: 1;
  padding: 10px 16px;
  border-radius: 999px;
  transform: translateX(8px);
  opacity: 0;
  transition: transform .18s ease, opacity .18s ease;
  pointer-events: none;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.15));
}
.ab-left .ab-label {
  left: calc(100% + 10px);
  right: auto;
  transform: translateX(-8px);
}

/* «Хвостик» у плашки */
.ab-label::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: 7px solid transparent;
}
.ab-right .ab-label::after {
  right: -4px;
  border-left-color: var(--ab-bg);
}
.ab-left .ab-label::after {
  left: -4px;
  border-right-color: var(--ab-bg);
}

/* Показываем название при hover/focus */
.ab-link:hover .ab-label,
.ab-link:focus-visible .ab-label {
  opacity: 1;
  transform: translateX(0);
}

/* Скрыть на мобилках (опционально) */
@media (max-width: 767.98px) {
  .ab-hide-mobile { display: none; }
}




/*********************Дополнительные стили*************************/
.elementor-element-23b4aa4{
	width: 255px;
}

.elementor-element.elementor-element-7423b1c.elementor-widget.elementor-widget-text-editor a{
	color: #FFFFFF;
}

.elementor-element.elementor-element-b3843b1.elementor-widget.elementor-widget-text-editor a{
	color: #FFFFFF 
}

.hfe-scroll-to-top-wrap.hfe-scroll-to-top-hide{
	display: none !important;
}

.hfe-scroll-to-top-button{
	display: none;
}



.wpcf7-form {
  max-width: 420px;
  margin: 0 auto;
  padding: 30px;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  font-family: sans-serif;
}

.wpcf7-form label {
  display: block;
  margin-bottom: 6px;
  font-weight: bold;
  color: #333;
		font-family: Montserrat;

}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="tel"] {
  width: 100%;
  padding: 10px;
  margin-bottom: 0px;
  border: 1px solid #ccc;
  border-radius: 0px;
  font-size: 14px;
	margin-top: 10px;
	height: 45px;
	background-color: #FAFAFA
	
}

.wpcf7-form .consent-checkbox {
  display: flex;
  align-items: center;
  font-weight: normal;
  margin-bottom: 10px;
}

.wpcf7-form .consent-checkbox input[type="checkbox"] {
  margin-right: 10px;
}

.wpcf7-form .small-text {
  font-size: 12px;
  color: #666;
  margin-bottom: 20px;
	
}

.wpcf7-form .small-text a {
  color: #2b6eb0;
  text-decoration: underline;
		font-family: Montserrat;
}

.wpcf7-submit.submit-btn {
  display: block;
  width: 100%;
  padding: 12px 0;
  background-color: #0056b3;
  color: #fff;
  text-align: center;
  font-size: 16px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.wpcf7-submit.submit-btn:hover {
  background-color: #004091;
}

.simple-text{
	margin-top: -20px !important;
	font-family: Montserrat;
}

.small-text{
	font-family: Montserrat;
	color: #065CA7 !important;
	font-size: 13px !important;
	padding-bottom: 25px;
}

.small-text a{
	color: #065CA7 !important;
}

.wpcf7-form {
  max-width: 420px;
  margin: 0 auto;
  padding: 20px;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  font-family: sans-serif;
}

.wpcf7-form label {
  display: block;
	margin-bottom: 6px;
  font-weight: bold;
  color: #333;
}

.wpcf7-form select,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="tel"] {
  width: 100%;
  padding: 10px;
  margin-bottom: 0px;
  border: 1px solid #ccc;
  border-radius: 0px;
  font-size: 14px;
}

.wpcf7-form .wpcf7-checkbox {
  margin-bottom: 20px;
}

.wpcf7-form .wpcf7-checkbox label {
  display: inline-block;
  margin-right: 0px;
  font-weight: normal;
}

.wpcf7-form .consent-checkbox {
  display: flex;
  align-items: center;
  font-weight: normal;
  margin-bottom: 10px;

}

.wpcf7-form .consent-checkbox input[type="checkbox"] {
  margin-right: 10px;
}

.wpcf7-form .small-text {
  font-size: 12px;
  color: #666;
  margin-bottom: 20px;
}

.wpcf7-form .small-text a {
  color: #2b6eb0;
  text-decoration: underline;
}

.wpcf7-submit.submit-btn {
  display: block;
  width: 100%;
  padding: 12px 0;
  background-color: #0056b3;
  color: #fff;
  text-align: center;
  font-size: 16px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.wpcf7-submit.submit-btn:hover {
  background-color: #004091;
}

.wpcf7-list-item-label {
		font-size: 10px !important;
}

.wpcf7-list-item-label p{
	margin-bottom: 0px !important;
} 

.wpcf7-list-item.first{
	margin: 0px !important;
}

.wpcf7-form-control-wrap span{
	padding-top: 10px !important;
}

.wpcf7-form-control-wrap{
	padding-top: 10px !important;
}

select{
	height: 45px;
}

.simple-text{
	margin: 0px !important;
}
.consent-checkbox_1 .wpcf7-list-item-label{
	font-size: 14px !important;
}

.wpcf7 form>div, .wpcf7 form>p {
    margin-bottom: 1.5em;
}

.simple-text {
	height: 65px;
}


.consent-checkbox_1{
	height: 30px !important;
}

label{
	margin-bottom: 0px !important
}

label br{
	display: none;
}

.pum-overlay{
	backdrop-filter: saturate(180%) blur(20px);
}

.wpcf7-spinner{
	position: absolute;
}

.wpcf7-response-output{
	border-color: #065CA7 !important;
	font-family: Montserrat;
	font-size: 14px;
}

.chaty-widget .on-hover-text{
	display: none !important;
}







.my-centered-slider .swiper {
  overflow: hidden  !important;

}
@media only screen and (min-width: 1024px) {
/* общий стиль для слайдов (неактивные) */
.my-centered-slider .swiper-slide {
  transform: scale(0.95) !important;
  opacity: 0.5;
  transition: transform 0.38s cubic-bezier(.2,.9,.3,1), opacity 0.28s;
  transform-origin: center center;
  z-index: 1;
  pointer-events: none; /* чтобы кликабельным был только активный слайд */
}

/* активный центральный слайд */
.my-centered-slider .swiper-slide.swiper-slide-next {
  transform: scale(1) !important;
  opacity: 1;
  z-index: 5;
  pointer-events: auto;	
}

.my-centered-slider .swiper-slide.swiper-slide .custom-block{
	display: none;
}

.my-centered-slider .swiper-slide.swiper-slide-next .custom-block{
	display: block !important;
}
}


@media only screen and (max-width: 1024px) {
	.my-centered-slider .swiper-slide, .my-centered-slider .swiper-slide.swiper-slide-next {
  transform: scale(0.95) !important;
  opacity: 0.5;
  transition: transform 0.38s cubic-bezier(.2,.9,.3,1), opacity 0.28s;
  transform-origin: center center;
  z-index: 1;
  pointer-events: none; /* чтобы кликабельным был только активный слайд */
}

/* активный центральный слайд */
.my-centered-slider .swiper-slide.swiper-slide-active {
  transform: scale(1) !important;
  opacity: 1;
  z-index: 5;
  pointer-events: auto;	
}
	.my-centered-slider .swiper-slide.swiper-slide .custom-block{
	display: none;
}

.my-centered-slider .swiper-slide.swiper-slide-active .custom-block{
	display: block !important;
}
	
	.my-centered-slider .swiper-slide{
		height: 480px !important;
	}
}

.my-centered-slider p{
	margin: 0px !important;
	padding-top: 20px;
}

		.elementor-element-732283b .swiper-slide{
		height: auto !important;
	}




/* Привести в чуство SVG */
.white-icon svg path,
.white-icon svg circle,
.white-icon svg rect,
.white-icon svg line
{
    fill: #fff !important;
    stroke: none !important;
}
.blue-icon svg path,
.blue-icon svg circle,
.blue-icon svg rect,
.blue-icon svg line
{
	fill: #3562AB !important;
	stroke: none !important;
}

.elementor-element-940ea77 .white-icon svg path,
.elementor-element-940ea77 .white-icon svg circle,
.elementor-element-940ea77 .white-icon svg rect,
.elementor-element-940ea77 .white-icon svg line,
.elementor-element-940ea77 .white-icon svg polyline
{
	fill:none !important;
	stroke:#FFFFFF !important;
	stroke-width:3.2563 !important;
	stroke-linecap:round !important;
	stroke-linejoin:round !important;
	stroke-miterlimit:10 !important;
}