*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    text-decoration: none;
    font-family: Inter;
}
a{
    color: #1E1E1E;
}


.blue_header_48{
    font-weight: 700;font-size: 48px; color: #1B41AA;
}
.blue_header_54{
    font-weight: 700;font-size: 54px; color: #1B41AA;
}
.blue_text_25_500{
    font-weight: 500;
    font-size: 25px;
    color: #1B41AA;
}

.grey_text_20{
    font-size: 20px; color: #898989;
}
.grey_text_24{
    font-size: 24px; color: #898989;
}
.grey_text_700_24{
   font-size: 24px; font-weight: 700; color: #898989;
}
.black_text_24_500{
    font-size: 24px; font-weight: 500;
}


.flex_space-between{
    display: flex; justify-content: space-between; width: 100%;
}

.flex_space-between_10{
    display: flex; justify-content: space-between; gap: 10px;
}

.main_title{
    font-size: 70px; font-weight: 700; color: #1B41AA;
}





.blue_btn{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 20px;
    width: 100%;
    background: #153BA4; 
    color: #fff; 
    border-radius: 20px;
}
.blue_btn:hover{
    background: #021E6C;
}


.filter_submit_btn{
	width: 80%;
	font-size: 18px;
	display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 30px;	
    background: #153BA4; 
    color: #fff; 
    border-radius: 20px;
	border: 0;
	margin: 15px auto;
	cursor: pointer;
}








.container{
    margin: 0 auto;
    max-width: 1920px;
    box-sizing: border-box;
    background: #FAFAFA;
    /*background: linear-gradient(270deg, #638BFA 0%, #10359E 100%);*/
}
.sub_container{
    background: linear-gradient(270deg, #638BFA 0%, #10359E 100%);
	margin-top: -1px;
}
.content{
    max-width: 1440px;
    width: 80%;
    margin: 0 auto;
}

/*header*/

.header{
    font-weight: 400;
    font-size: 20px;
    background: #fff;
    position: relative;
}
.header_content{
	display: flex;
	flex-direction: column;
	gap: 50px;
	padding: 30px;
}
.header_menu{
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
}
.header_menu_navigation{
    display: flex;
    gap: 52px;
}
.header_menu_navigation a:hover{
    color: #1B41AA;
}
.header_menu img{
    width: 24px;
    margin-right: 8px;
}
.header_menu_number{
    margin: 0;
    display: flex;
    align-items: center;
}
.search_bar_div{
	display: flex;
	gap: 10px;
	max-width: 950px;
    width: 100%;
	position: relative;
}
.btn_form_submit{
	right: 5px;
	top: 0;
	font-size: 18px;
	height: 100%;
	display: flex;
    align-items: center;
    justify-content: center;
    padding: 0px 30px;	
    background: #153BA4; 
    color: #fff; 
    border-radius: 20px;
	border: 0;
	cursor: pointer;
}
.header_search{
    display: flex;
    gap: 25px;
	max-height: 55px;
}
.header_search a{
	flex-shrink: 0;
}
.img_logo{
    width: 100%;
    max-width: 180px;
}
.mobile_logo_div{
	display: none;
	text-align: center;
}
.mobile_logo{
	width: 100%;
    max-width: 250px;
}
.search_bar{
    border: 2px solid #B3B3B3;
    font-family: Inter;
    font-weight: 400;
    font-size: 20px;
    width: 100%;
    height: 55px;
    border-radius: 10px;
    background-image: url('/templates/Default/images/magnifier.png');
    background-position: top 15px left 12px;
    background-repeat: no-repeat;
    background-size: 24px;
    padding-left: 56px;
}
.search_bar::placeholder{
    color:#898989;
}
.search_bar:hover{
    border: 2px solid #939393
}
.search_bar:focus {
    border: 2px solid #1B41AA;
    outline: none;
}
.img_magnifier{
    max-width: 24px;
    width: 100%;
    margin-right: 20px;
}
.functions{
    display: flex;
    gap: 28px;
	align-items: center;
}
.functions svg{
    fill: #898989;
}
.functions svg:hover{
    fill: #1B41AA;
}

/*  Бургер меню   */
.burger_btn{
	width: 35px;
	height: 35px;
	display: none;
	flex-direction: column;
	justify-content: space-around;
	cursor: pointer;
	background: transparent;
	position: fixed;
	top: 40px;
	left: 15px;
	z-index: 900;
}
.burger_line{
	width: 100%;
	height: 3px;
	background-color: black;
	transition: all 0.3s ease;
	border-radius: 2px;
}
.burger_menu{
	position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 300px;
    height: 100vh;
    background: #fff;
    box-shadow: -8px 0 40px rgba(0, 0, 0, 0.15);
    transform: translateX(-100%);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 1000;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.burger_menu.open{
    transform: translateX(0);
}
.burger_menu_content{
	padding: 15px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.burger_menu_content a{
	padding: 10px 0px;
}
.burger_menu_content a:hover{
	color: #1B41AA;
}
.burger_exit{
	display: flex;
	justify-content: space-between;
    align-items: center;
	font-weight: 700;
	font-size: 26px;
	color: #1B41AA;
	margin-bottom: 10px;
	margin-top: 20px
}
#burger_btn_exit{
	cursor: pointer;
}
.burger_menu_phone{
	position: absolute;
	right: 10px;
	bottom: 10px;
}



.main{
    position: relative;
    background: linear-gradient(270deg, #638BFA 0%, #10359E 100%);
}
.content_main{
    padding-bottom: 110px;
}
.img_main{
    position: absolute;
    right: 0px;
    top: 0px;
    max-width: 45%;
    width: 100%;
}
.main h1{
    max-width: 600px; font-size: 70px; font-weight: 700; color: #fff; padding-top: 60px; line-height: 74px;
}
.main h2{
    max-width: 620px; font-size: 24px; color: #fff; margin-top: 20px
}
.buttons{
    margin-top: 100px;
    display: flex;
    gap: 30px;
}
.btn{
    padding: 20px 45px;
    border: 3px solid #FFF;
    border-radius: 20px;
    font-size: 25px;
    font-weight: 500;
	display: flex;
    align-items: center;
}
.btn_catalog{
    background: #fff; 
    color: #1B41AA;
}
.btn_consultation{
    color: #fff;
}
.btn_consultation:hover{
    color: #22B318;
	border: 3px solid #22B318;
}
.btn_catalog:hover{
    background: #E2E2E2;
}
.why_me{
    text-align: center;
    font-weight: 700;
    font-size: 64px;
    margin-top: 200px;
    color: #fff;
}
.why_me_all_cards{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
	margin-top: 90px;
}
.why_me_card{
    width: 471px;
    height: 518px;
    text-align: center; 
    background: #fff; 
    padding: 41px 44px; 
    border-radius: 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.why_me_card span{
    color: #898989;
    font-weight: 700;
    font-size: 22px;
}
.why_me_card img{
    max-width: 463px;
    width: 100%;
    border-radius: 25px;
}
.why_me_card_head{
    font-weight: 700;
    font-size: 36px;
    color: #1B41AA;

}
.why_me_card_text{
    font-weight: 400;
    font-size: 22px;
    color: #898989;
    margin-top: 16px;
}



.popular_model{
    background: #FAFAFA;
    border-radius: 80px 80px 0 0;
}
.popular_model_content{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 90px 0 225px 0;
}
.popular_model_header{
font-weight: 700;font-size: 52px;color: #153AA3;margin-bottom:30px
}
.popular_all_cards{
    display: flex;
	flex-wrap: wrap;
    gap: 28px;
    margin-top: 50px;
    padding: 11px 9px;
}
.card_img{
    max-width: 439px;
    width: 100%;
    border-radius: 20px;
}
.popular_card{
    background:#fff;
    width: 457px;
    border-radius: 20px;
    padding: 9px 11px;
    box-shadow: 0px 6.65px 11.77px 0px #00000006;
    box-shadow: 0px 22.34px 39.54px 0px #00000009;
    box-shadow: 0px 100px 177px 0px #0000000F;

}
.popular_card_text{
    margin-top: 25px; 
    display: flex; 
    flex-direction: column; 
    gap: 30px;
}
.popular_card_desc{
    font-size: 24px; 
    font-weight: 500; 
}
.popular_card_cost{
    font-weight: 700; 
    font-size: 28px; 
    color: #3CBC29;
}
.popular_card_btns{
    display: flex; 
    font-weight: 500; 
    font-size: 25px; 
    justify-content: space-between; 
    padding-bottom: 12px;
    gap: 12px;
}


.btn_like{
    display: flex; 
    padding: 23px 27px; 
    border: 3px solid #1B41AA; 
    border-radius: 20px;
	cursor: pointer;
	align-items: center;
}
.btn_like.active{
	display: none;
}
.btn_like svg{
	width: 24px;
    fill:#1B41AA;
}
.btn_like:hover{
    border: 3px solid #021E6C;
}
.btn_like:hover svg {
    fill: #021E6C;
}
.btn_like:hover img{
    fill: #021E6C;
}
.btn_all_models{
    border:3px solid #1B41AA; color: #1B41AA;
}
.btn_all_models:hover{
    border: 3px solid #021E6C;
    color: #021E6C;
}
#btn_all_mod_bottom{
	display: none;
	justify-content: center;
	margin-top: 40px;
	width: 250px;
}






.form_communication{
    background: linear-gradient(270deg, #638BFA 0%, #10359E 100%);
    padding: 140px 0 180px 0;
    position: relative;
}
.form_communication form{
    padding: 77px 50px 77px 50px;
    background: #FFFFFF;
    border-radius: 40px;
    max-width: 1180px; 
	width: 100%;
}
.form_content{
    display: flex;
    flex-direction: column;
    gap: 56px;
	max-width: 750px;
    width: 100%;
    color: #898989;
}
.form_content_text{
	max-width: 500px;
    margin-top: 20px;
	font-size: 24px; 
	color: #898989;
}
.form_content_flex_col{
    display: flex; flex-direction: column; gap: 36px;
}
.checkbox_flex{
    display: none;
	font-size: 20px;
	gap: 18px;
	align-items: center;
	color: #898989;
	
}
.checkbox_flex.active{
	display: flex;
}
.custom_checkbox{
    appearance: none;
    position: relative;
    max-width: 30px;
    width: 100%;
    height: 30px;
    border-radius: 9px;
    border: 3px solid #D9D9D9;
    cursor: pointer;
    background: #FFF;
}
.custom_checkbox::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 30px;
    height: 30px;
    background-image: url('../images/checkbox_mark.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.custom_checkbox:checked {
    background-color: #1B41AA; /* Голубой фон */
}
.custom_checkbox:checked::after{
    width: 15px;
    opacity: 1;
}
.custom_checkbox:hover{
    border-color: #898989;
}
.custom_radio{
    width: 30px;
    height: 30px;
    border: 3px solid #D9D9D9;
    cursor: pointer;
	accent-color: #1B41AA;
}
.custom_radio:checked {
}
.custom_radio:hover{
}


.input_header{
    font-size: 20px;
}
.input_header input{
    margin-top: 16px;
}
.link_personal_data{
    color: #1956FF;
}
.form_input{
    border: 2px solid #898989;
    font-weight: 400;
    font-size: 20px;
    width: 100%;
    border-radius: 10px;
    padding: 22px 0 22px 22px;
}
.form_input:hover{
    border: 2px solid #939393
}
.form_input:focus {
    border: 2px solid #1B41AA;
    outline: none;
}
.btn_submit{
    margin-top: 26px;
	width: 100%;
	padding: 20px 0;
	font-weight: 500;
	font-size: 25px;
	color: #fff;
	background: #22B318;
	border-radius: 20px; 
	border: 0; 
	cursor: pointer;
	
}
.btn_submit:hover{
    background: #199810;
}
.smartphone_circle{
    max-width: 48.4%;
    width: 100%;
    position: absolute;
    right: 0;
    bottom: 0;
}





.footer{
    background: #FFF
}
.footer_content{
    padding-top: 60px;
    padding-bottom: 140px;
}
.footer_links{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}
.footer_flex{
    display: flex; align-items: center; justify-content: space-between
}
.flex_78{
    display: flex; gap: 78px;
}
.img_logo_footer{
    max-width: 260px;
    width: 100%;
}
.footer svg{
    max-width: 260px;
    width: 100%;
}
.td_right{
    text-align: right;
}
.footer a{
    font-size: 24px;
    color: #1956FF;

}
.footer table{
    width: 100%; font-size: 20px; margin-top: 48px;
}
.footer table tr td{ 
    color: #898989;
    padding-bottom: 13px;
}
.footer table tr td:last-child{ 
    color: #898989;
    padding-bottom: 0;
}
.footer_link{
    display: flex; gap: 78px;
}
.footer_last_str{
    text-align: center; font-size: 20px; color: #898989; margin-top: 110px;
}
.footer_table{
	display: none;
	text-align: center;
	flex-direction: column;
    gap: 10px;
	font-size: 16px;
	color: #898989;
}
.footer_info{
	text-align: center; 
	font-size: 20px; 
	color: #898989; 
	margin-top: 110px;
}





.about_company{
    background: #FAFAFA;
}
.about_company_content{
    padding-top: 64px;
    padding-bottom: 112px;
    display: flex;
    gap: 35px;
}
.about_company_title{
    font-weight: 700; font-size: 70px; color: #1B41AA;
}
.about_company_text{
    font-size: 20px; color: #898989; line-height: 34px; margin-top: 33px;
}
.about_company img{
    max-width: 480px;
    width: 100%;
}
.accented_text{
    font-weight: 700;
    color: #1B41AA;
}
.about_company_logo{
    max-width: 760px;
    display: flex;
    width: 100%;
    background: #fff;
    border-radius: 60px;
    box-shadow: 0px 6.65px 5.32px 0px #00000007;
    justify-content: center;
    align-items: center;
}
/*
.about_company_logo img{
    margin: 150px 105px;
}
*/




.our_services{
    border-radius: 80px 80px 0 0;
    background: linear-gradient(270deg, #638BFA 0%, #10359E 100%);
}
.our_services_content{
    padding-top: 90px;
    padding-bottom: 100px;
}
.our_services_title{
    font-weight: 700;font-size: 70px; color: #fff; text-align: center;
}
.our_services_block{
    background: #FFF;
    padding: 50px 40px;
    border-radius: 30px;
    display: flex;
    justify-content: space-between;
    margin: 50px auto 20px;
    gap: 80px;
}
#our_services_block_last{
    margin-top: 18px;

}
.our_services_block_head{
font-weight: 700; font-size: 40px; color: #1B41AA; 
}
.our_services_text{
	
}
.our_services_block ul{
    margin-top: 38px;
}
.our_services_block img{
    max-width: 670px;
    width: 100%;
}
.our_services ul {
    list-style: none;
    padding-left: 0;
}
.our_services li {
    padding-left: 20px;  /* Отступ для маркера */
    padding-bottom: 4px;
    background-image: url('../images/list_style.png');
    background-repeat: no-repeat;
    background-position: 0 50%; /* Центрирование по вертикали */
    background-size: 14px 14px; /* Размер иконки */
    margin-bottom: 20px;
    color: #757575;
    font-size: 20px;
}




.traid_in{
    background: #FAFAFA;
    position: relative;
}
.traid_in_content{
    padding-top: 82px;
}
.traid_in_text{
    margin-top: 25px; font-size: 20px; color: #898989; max-width: 660px;
}
.btn_application{
    display: inline-block;
    padding: 20px 45px;
    background: #153BA4;
    margin-top: 56px;
    margin-bottom: 130px;
    color: #FFFFFF;
    border-radius: 20px;
    font-size: 25px;
    font-weight: 500;
	transition: background 0.3s;
}
.btn_application:hover{
	background: #021E6C;
}
.traid_in img{
    position: absolute;
    right: 0;
    top: 0;
}








.requirements{
    background: linear-gradient(270deg, #638BFA 0%, #10359E 100%);
    border-radius: 80px 80px 0 0;
	padding-bottom: 80px
}
.requirements_title{
    padding-top: 90px;
	font-size: 70px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 64px;
}
.flex_12{
    display: flex; gap: 12px;
}
.requirements_block{
	display: flex; gap: 12px;
}
.requirements_column{
    width: 50%;
    background-color: #FAFAFA;
    padding: 36px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    border-radius: 30px;
}
.requirements_column_title{
    font-size: 23px; font-weight: 500; color: #1B41AA; margin-bottom: 28px;
}
.requirements_row{
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #FFF;
    padding: 20px;
    border-radius: 30px;
    box-shadow: 0px 4px 10px 0px #00000012;
}
.flex-start{
    align-items: flex-start;
}
.requirements_row img{
    max-width: 70px;
    width: 100%;
}
.requirements_row div{
    font-size: 20px;
    color: #898989;
}



.catalog{
	margin-bottom:160px
}
.catalog_content{
    margin-top: 38px;
}
.products{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: flex-start;
	margin-top: 30px;
}
.product_card{
    flex-grow: 1;
    position: relative;
    padding: 13px;
    min-width: 357px;
    width: 30%;
    box-shadow: 0px 4px 10px 0px #00000012;
    background: #FFFFFF;
    border-radius: 20px;
	 display: flex;             
    flex-direction: column;     
}
.product_card_cont_img{
	height: 390px;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
    border-radius: 20px;
	overflow: hidden;
}
.product_card_cont_img img{
    max-width: 100%;        
    max-height: 100%;       
    object-fit: contain;
}

.product_card_text{
    padding: 0 9px;
    display: flex;
    flex-direction: column;
    gap: 30px;
	flex-grow: 1; 
}
.product_card_name{
    font-weight: 500;
    font-size: 24px;
    color: #1e1e1e;
    margin: 16px 0 0 0;
    line-height: 1.3;
}
.product_card_specifications{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.product_card_specifications_row{
    display: flex;
    justify-content: space-between;
}
.product_card_specifications_row p:first-child{
    color: #898989;
    font-weight: 500;
    font-size: 20px;
}
.product_card_specifications_row p:last-child{
    color: #1E1E1E;
    font-weight: 500;
    font-size: 20px;
}
.product_card_cost{
    font-weight: 700;
    font-size: 28px;
    color: #22b318;
	margin-top: auto;
}
.product_card_buttons{
    display: flex; 
    font-weight: 500; 
    font-size: 25px; 
    justify-content: space-between; 
    padding-bottom: 12px;
    gap: 10px;
}

.upload_more_btn{
    text-align: center;
    margin: 100px auto 0px;
    display: block;
    border-radius: 20px;
    padding: 20px 0;
    width: 274px;
    color: #1B41AA;
    border: 3px solid #1B41AA;
    font-weight: 500;
    font-size: 25px;
}
.upload_more_btn:hover{
	border: 3px solid #021E6C;
	color: #021E6C;
}




.catalog_filter ul{
    display: flex;
}






.navigation_str{
    margin-top: 20px;
    margin-bottom: 40px;
}
.product_info{
	margin-bottom:70px
}
.product_info_flex{
    display: flex;
    gap: 25px;
    color: #1E1E1E;
    margin-bottom: 130px;
}
.slider{
    width: 55%;
    height: 620px;
}
.product_info_content{
    width: 45%;
}
.product_info_title{
    font-weight: 500;
    font-size: 32px;
}
.product_info_content_flex{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.all_characteristics{
    font-weight: 500;
    font-size: 25px;
    color: #1B41AA;
    float: right;
}
.product_info_block{
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 56px;
}
.row_product_info{
    display: flex;
    align-items: center;
	padding: 5px 0px
}
.parameter_value{
	max-width: 300px;
    float: right;
	text-align: right;
    font-size: 20px;
}
.dotted_line{
	flex:1; border-bottom:1px dotted #898989;margin-top: 20px;
}
.hr_dotted{
    flex: 1;
	border: none;
	border-top: 2px dotted #ddd;
	margin-top: 20px;
}
.product_info_cost{
    font-weight: 700;
    font-size: 32px;
    color: #22B318;
    margin-bottom: 28px;
}
.product_info_btn_basket{
    text-align: center;
    display: block;
    font-weight: 500;
    font-size: 25px;
    color: #FFF;
    padding: 20px;
    width: 100%;
    border-radius: 20px;
    margin-bottom: 10px;
	border: 3px solid #153BA4;
    background: #153BA4;
}
.product_info_btn_basket:hover{
    background: #021E6C;
}
.product_info_btn_basket.active{
	display: none;
	background: #FAFAFA;
	color: #153BA4;
	
}
.product_info_btn_basket.active:hover{
	background: #E1E1E1
}
.product_info_btn{
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    padding: 20px;
    width: 50%;
    border: 3px solid #1B41AA;
    border-radius: 20px;
}
.product_info_btn svg{
    width: 30px;
}
.product_info_btn:hover{
    background: #E1E1E1;
    border: 3px solid #021E6C
}

.btn_news.active{
	display: none;
}
.btn_comparison.active{
	display: none;
}
.product_full_info_content{
    margin-top: 55px;
    width: 100%;
	display: grid;
    grid-template-columns: 1fr 1fr;  /* две равные колонки */
    gap: 10px 120px;
}   
.product_full_info_content_column{
    display: flex;
    flex-direction: column;
    gap: 10px;
}




.basket{
    margin-top: 58px;
}
.basket_header{
    font-weight: 700;font-size: 54px; color: #1B41AA;	
}
.basket_order{
    margin-top: 45px;
    padding: 40px 30px;
    background: #FFFFFF;
    border-radius: 20px;
    box-shadow: 0px 4px 10px 0px #00000012;
	margin-bottom: 30px
}
.basket_order_flex{
    display: flex;
    width: 100%;
    gap: 25px;
    margin-bottom: 25px;
}
.basket_order_flex img{
    max-width: 173px;
    height: 174px;
    width: 100%;
    border-radius: 20px;
}
.basket_order_flex_column{
    max-width: 553px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
}
.basket_order_btns{
    display: flex;
    gap: 12px;
}
.basket_order_btn_del{
    padding: 19px 23px;
}
.basket_order_btn_del svg{
    width: 32px;
}
.basket_order_name{
    font-size: 24px;
    font-weight: 500;
}
.basket_order_cost_mid{
	display: none;
	font-weight: 700;
    font-size: 24px;
    color: #22b318;
}
.basket_order_cost{
    flex: 1;
}
.custom_number{
	display: inline-block;
	position: relative;
	width: 220px;
    border: 3px solid #1B41AA;
    border-radius: 20px;
    overflow: hidden;
}
.custom_number input[type="number"] {
	display: block;
    padding: 16px 0;
    color: #2042A1;
	width: 100%;
	text-align: center;
    font-size: 25px;
    font-weight: 500;
    border: 0;
}
.custom_number input[type="number"]:focus {
    outline: none;
}
.custom_number input[type="number"]::-webkit-outer-spin-button,
.custom_number input[type="number"]::-webkit-inner-spin-button,
.filter_cost input[type="number"]::-webkit-inner-spin-button{
	display: none;
}
.custom_number button{
	position: absolute;
	top: 0px;
	bottom: 0px;
	width: 70px;
	border: none;
	font-size: 32px;
	font-weight: 500;
	text-align: center;
    color: #2042A1;
    background: none;
}
.number_minus {
	left: 0px;
    cursor: pointer;
}
.number_plus {
	right: 0px;
    cursor: pointer;
}
.submit_applicatio_btn{
    display: inline-block;
    padding: 20px 20px;
    background: #153BA4; 
    color: #fff; 
    border-radius: 20px;
    font-size: 25px;
    font-weight: 500;
    max-width: 300px;
    text-align: center;
	cursor: pointer;
}
.submit_applicatio_btn:hover{
    background: #021E6C;
}
.basket_count_product{
    font-size: 28px;
	color: #153BA4;
}




.registration_order{
	margin-bottom:50px
}
.registration_order_content{
    margin-top: 45px;
    padding: 77px 50px 52px 50px;
    background: #FFFFFF;
    border-radius: 20px;
    box-shadow: 0px 4px 10px 0px #00000012;
}
.registration_order_flex{
    display: flex;
    flex-direction: column;
    gap: 56px;
}
.registration_input_flex{
    display: none;
    gap: 36px;
}
.registration_input{
    width: 50%;
}
.registration_input input{
    margin-top: 16px;
}
.registration_order_contaier_btn{
	display: none;
    text-align: right;
    margin-top: 26px;
}
.registration_order_btn{
    max-width: 450px;
    width: 100%;
    text-align: center;
	border: 0;
}



.filter{
	margin: 40px 0;
}
.filter_flex{
    position: relative;
    display: flex;
    align-items: center;
    gap: 16px;
	min-height:60px;
	align-items: stretch;
}
.filter_flex label{
	font-size: 20px;
}
.filter_parameter{
    display: flex;
    align-items:center;
    gap: 8px;
    box-shadow: 2px 2px 4px 0px #153BA40D;
    background: #FFF;
    padding: 16px 20px;
    font-size: 20px;
    color: #1E1E1E;
    border-radius: 20px;
}
.filter_parameter svg{
    width: 20px;
    fill: #898989;
}
.show_all_filters{
    color: #1B41AA;
    font-weight: 500;
    border: 3px solid #1B41AA;
    padding: 16px 32px;
    align-items: center;
}
.show_all_filters svg{
    width: 22px;
}





/* ----- Стили для Swiper (адаптированы под ваш дизайн) ----- */
.slider .swiper {
    width: 100%;
    height: 100%;
}

.slider .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #FFF;
    /* Цвет фона для слайдов, если нет картинки */
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
}

/* ГЛАВНОЕ ИЗМЕНЕНИЕ: для главного слайдера фото будет полностью видно и по центру */
.slider .mySwiper2 .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* contain - сохраняет пропорции и показывает полностью */
    /* object-fit: cover; - было изначально, обрезает фото */
}

/* Для миниатюр оставляем cover, чтобы они заполняли свои контейнеры */
.slider .mySwiper .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Галерея в слайдере: главный слайдер */
.slider .mySwiper2 {
    height: 80%;
    width: 100%;
}

/* Галерея в слайдере: миниатюры */
.slider .mySwiper {
    height: 20%;
    box-sizing: border-box;
    padding: 10px 0;
}

.slider .mySwiper .swiper-slide {
    width: 25%;
    height: 100%;
    opacity: 1;
}

.slider .mySwiper .swiper-slide-thumb-active {
    opacity: 1;
}

/* Стрелки навигации поверх слайдера */
.slider .swiper-button-next,
.slider .swiper-button-prev {
    color: #898989;
    /* Белые стрелки, видны на темном фоне */
}












/* Затемнение */
.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.35s ease, visibility 0.35s ease;
    z-index: 998;
}

.overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Выезжающая панель */
.side-panel {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 600px;
    height: 100vh;
    background: #fff;
    box-shadow: -8px 0 40px rgba(0, 0, 0, 0.15);
    transform: translateX(100%);
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 1000;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.side-panel.open {
    transform: translateX(0);
}

/* Заголовок */
.panel_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 500px;
    /*margin: 66px auto 99px;*/
	margin: 40px auto 40px;
}
.panel-close{
    width: 24px;
    height: 24px;
    cursor: pointer;
    color: #1B41AA;
}
.panel-close svg{
   width: 100%;
}



/* Содержимое */
.panel-content {
    display: flex;
    flex-direction: column;
    gap: 46px;
    margin-left: 66px;
    overflow-y: auto;
    color: #1E1E1E;
}
.filter_panel_parameter{
    font-size: 20px;
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.filter_panel_parameter label{
    font-size: 20px;
	
}

.checkbox_parameter{
    display: flex;
    align-items: center;
    gap: 15px;
}
.filter_cost div{
    width: 120px;
}
.filter_cost{
    display: flex;
    flex-direction: row;
    gap: 10px;
}
.filter_cost input{
    width: 100%;
    font-size: 20px;
    color: #898989;
    padding: 12px 0 12px 15px;
    border: 0;
    border: 2px solid #B3B3B3;
    border-radius: 10px;
    margin-top: 9px;
}

.filter_panel_parameter {
    font-size: 20px;
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.filter_cost {
    display: flex;
    flex-direction: row;
    gap: 10px;
    justify-content: space-between;
}

.filter_cost div {
    flex: 1;
    min-width: 100px;
}

.filter_cost label {
    display: block;
    color: #1E1E1E;
    font-weight: 500;
    margin-bottom: 4px;
}

.filter_cost input {
    width: 100%;
    font-size: 16px;
    color: #1E1E1E;
    padding: 10px 12px;
    border: 2px solid #B3B3B3;
    border-radius: 10px;
    transition: border-color 0.3s ease;
    outline: none;
    background: white;
}

.filter_cost input:focus {
    border-color: #1B41AA;
    box-shadow: 0 0 0 3px rgba(27, 65, 170, 0.1);
}

.filter_cost input::placeholder {
    color: #B3B3B3;
}

/* Кнопки действий */
.price-actions {
    display: flex;
    gap: 10px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #E8EDF5;
}

.price-apply-btn,
.price-reset-btn {
    padding: 10px 24px;
    border: none;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    flex: 1;
}

.price-apply-btn {
    background: #1B41AA;
    color: white;
}

.price-apply-btn:hover {
    background: #153BA4;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(27, 65, 170, 0.3);
}

.price-reset-btn {
    background: #F0F4FF;
    color: #1E1E1E;
}

.price-reset-btn:hover {
    background: #E8EDF5;
}










/* Группы фильтров */
.panel-filter-group {
    margin-bottom: 32px;
}

.panel-filter-label {
    font-weight: 600;
    font-size: 16px;
    color: #898989;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}

.panel-filter-option {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 16px;
    background: #FFFFFF;
    border-radius: 12px;
    margin-bottom: 6px;
    cursor: pointer;
    transition: background 0.2s;
    border: 1px solid transparent;
    font-size: 17px;
    color: #1E1E1E;
}

.panel-filter-option:hover {
    background: #F0F5FF;
    border-color: #D6E0F5;
}

.panel-filter-option input[type="checkbox"],
.panel-filter-option input[type="radio"] {
    width: 20px;
    height: 20px;
    accent-color: #1B41AA;
    cursor: pointer;
    flex-shrink: 0;
}

/* Цена */
.price-range {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #FFFFFF;
    padding: 8px 16px;
    border-radius: 12px;
    border: 1px solid #E8ECF2;
    margin-bottom: 16px;
}

.price-range span {
    color: #898989;
    font-size: 20px;
}

.price-input {
    width: 100%;
    padding: 10px 0;
    border: none;
    font-size: 17px;
    color: #1E1E1E;
    background: transparent;
    outline: none;
}

.price-input::placeholder {
    color: #B3B3B3;
}

.price-input:focus {
    border-bottom: 2px solid #1B41AA;
}

/* Слайдер цены */
.price-slider {
    display: flex;
    gap: 16px;
    margin-bottom: 8px;
}

.price-slider-input {
    -webkit-appearance: none;
    width: 100%;
    height: 4px;
    background: #D6E0F5;
    border-radius: 2px;
    outline: none;
}

.price-slider-input::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    background: #1B41AA;
    border-radius: 50%;
    cursor: pointer;
}

.price-values {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    color: #898989;
    padding: 0 4px;
}

/* Кнопки внизу */
.panel-footer {
    display: flex;
    gap: 12px;
    padding: 20px 28px 28px;
    border-top: 1px solid #E8ECF2;
    background: #FFFFFF;
    flex-shrink: 0;
}

.panel-btn {
    flex: 1;
    padding: 16px;
    border: none;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s;
}

.panel-btn-apply {
    background: #153BA4;
    color: #FFFFFF;
}

.panel-btn-apply:hover {
    background: #021E6C;
}

.panel-btn-reset {
    background: #F0F3FA;
    color: #1E1E1E;
}

.panel-btn-reset:hover {
    background: #DCE3F0;
}




/* ----- Попап ответ ----- */
.popup_answer{
	display: none;
	position: fixed; /* Или absolute, но fixed надёжнее для «поверх всего» */
	z-index: 999;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%); /* Для центрирования */
	max-width: 702px;
	width: 100%; /* Задайте нужную ширину */
	background-color: #FFF; /* Полупрозрачный фон, чтобы видеть то, что под ним */
	color:black;
	padding: 77px 50px 50px 50px;
	border-radius: 40px;
	text-align: center;
}
.popup_text{
	margin-top: 20px;
	margin-bottom: 56px;
}
.btn_popup{
	display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    border: 3px solid #1B41AA;
    border-radius: 20px;
	cursor: pointer;
	font-size: 25px;
	font-weight: 500;
	color: #1B41AA;
}
.btn_popup_block{
	display: flex;
    justify-content: space-between;
    gap: 20px;
	width: 100%;
	
}

.btn_popup.cancel{
	width:30%;
}
.btn_popup.cancel_del{
	width:50%;
}
.btn_popup.return{
	width:70%;
	background: #1B41AA;
	color: #FFF;
}
.btn_popup.return_del{
	width:50%;
	background: #1B41AA;
	color: #FFF;	
}
.btn_popup.cancel:hover, .btn_popup.cancel_del:hover{
	border-color: #021E6C;
	color: #021E6C;
}
.btn_popup.return:hover, .btn_popup.return_del:hover{
	background: #021E6C;
}


/* ----- Базовые стили для дропдауна ----- */
/* ----- Стили для дропдауна (добавить к существующим) ----- */
.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-btn{
    cursor: pointer;
    border: 3px solid white;
    transition: border 0.3s;
	height: 100%;
}
.dropdown-btn:hover{
    border: 3px solid #153BA4;
}

/* Стили для стрелки */
.arrow {
    flex-shrink: 0;
    transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55),
                fill 0.3s ease;
    fill: #898989; /* Ваш цвет по умолчанию */
}

/* Поворот и смена цвета при открытом дропдауне */
.dropdown.open .arrow {
    transform: rotate(180deg);
    fill: #1B41AA; /* Синий цвет при открытии */
}

/* Изменение цвета при наведении */
.dropdown-btn:hover .arrow {
    fill: #1B41AA;
}

/* Контент дропдауна */
.dropdown-content {
    display: none;
    position: absolute;
    top: calc(100% + 25px);
    left: 0;
    background: #FFF;
    border-radius: 0 0 20px 20px;
    box-shadow: 0px 100px 80px 0px #00000012;
    padding: 30px 20px;
    min-width: 300px;
    z-index: 1000;
    animation: fadeIn 0.2s ease;
}

.dropdown.open .dropdown-content {
    display: block;
}

.dropdown-content label {
    display: flex;
	gap: 10px;
	align-items: center;
    padding: 8px 14px;
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.2s;
    font-size: 20px;
    color: #1E1E1E;
}

.dropdown-content label:hover {
    background: #F0F4FF;
}

.dropdown-content label input[type="radio"] {
    accent-color: #1B41AA;
    width: 20px;
    height: 20px;
}

.dropdown-content label input[type="checkbox"] {
	width: 20px;
    height: 20px;
	flex-shrink: 0;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ----- Стили для блока выбранных фильтров ----- */
.selected-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
    padding: 16px;
    background: #F8FAFF;
    border-radius: 12px;
    border: 1px solid #E8EDF5;
    min-height: 56px;
    align-items: center;
}

.filter-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    background: #1B41AA;
    color: white;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    animation: tagAppear 0.3s ease;
}

.filter-tag .remove-tag {
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    opacity: 0.8;
    transition: opacity 0.2s;
    margin-left: 4px;
}

.filter-tag .remove-tag:hover {
    opacity: 1;
}

@keyframes tagAppear {
    from {
        opacity: 0;
        transform: scale(0.8);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}


/* ----- Выбранные фильтры ----- */
.cont_selected_filter{
	display:flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
	color: #fff;
}
.selected_filter{
	font-size: 20px;
	background: #1B41AA;
	box-shadow: 2px 2px 4px 0px #153BA40D;
	padding: 12px 16px;
	border-radius: 20px;
}




/* ----- Сравнение ----- */
.comparison{
	height: 1400px;
}
.comparison_content{
	margin-top: 58px
}
.comparison_header{
	font-weight: 700;font-size: 54px; color: #1B41AA;
}
.comparison_main{
    display: flex;
    gap: 35px;
    margin-top: 60px;
}
.table_wrapper{
	overflow-x: auto;
	margin-top: 50px
}
.comparison_table{
	table-layout: fixed;
    height: 100%;
	margin-bottom: 20px;
}
.comparison_table td{
	width: 365px;
}
.comparison_table tr:first-child td > .product_card {
    height: 100%;
    box-sizing: border-box;
}


.table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    position: relative;
}

.table-wrapper table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
}

.table-wrapper .first-col {
    position: sticky;
    left: 0;
    background: #fff;
    z-index: 1;
    min-width: 200px;
}

.table-wrapper .first-col-header {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #f8f9fa;
}


.comparison_block_parametr{
	display: flex;
	gap: 1px;
    margin-top: 60px;
}
.comparison_parametrs_value{
	display: flex;
	overflow-x: scroll;
}
.comparison_on_off{
    width: 360px;
    display: flex;
    gap: 15px;
}
.comparison_parametrs{
    max-width: 390px;
	width: 100%;
	display: flex;
    flex-direction: column;
    gap: 10px;
}
.value_parametrs{
	min-width: 357px;
	width: 100%;
}
.comparison_title{
	font-size: 20px;
}
.comparison_blue_btn{
	height: 57px;
	display: flex;
    align-items: center;
}
.comparison_btn_like{
	padding: 0px 16px;
	display: flex;
    align-items: center;
}
.comparison_btn_del{
	padding: 0px 12px;
	display: flex !important;
    align-items: center;
}
.comparison_product{
    display: flex;
	gap: 15px;
    overflow-x: scroll;
	scrollbar-color: #D9D9D9 #FAFAFA;
}
.comparison_product_card{
	max-width: 360px;
	height: 95%;
}
.comparison_img{
	max-height: 340px;
}
.comparison_card_cost{
	margin-bottom:0px;
}


/* ----- Ползунок ----- */
/* Переключатель - коробка вокруг ползунка */
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}

/* Скрыть флажок HTML по умолчанию */
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* Ползунок */
.slider_switch {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #898989;
  -webkit-transition: .2s;
  transition: .2s;
}

.slider_switch:hover{
  background-color: #D9D9D9;

}

.slider_switch:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .slider_switch {
  background-color: #153BA4;
}

input:focus + .slider_switch {
  box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider_switch:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

/* Закругленные ползунки */
.slider_switch.round {
  border-radius: 34px;
}

.slider_switch.round:before {
  border-radius: 50%;
}


/* Навигация */
.navigation{
	margin-top: 30px;
	font-size: 24px;
	display: flex;
	gap: 20px;
	color: #153BA4;
}






