.widget__calc{position:relative; overflow:hidden; }
.wrapper__calc{position:relative; z-index:1; display: flex;flex-direction: column;padding: 40px;gap: 40px;background: linear-gradient(0deg, rgba(0, 0, 0, 0.64), rgba(0, 0, 0, 0.64)), rgba(255, 255, 255, 0.16);border: 1px solid #A1A1A1;backdrop-filter: blur(32px);border-radius: 32px;}
.calc-bg{height: 100%; position: absolute; left: 0; right: 0; bottom: 0; top: 0; object-fit: cover; width: 100%;}
.calc__heading{display:flex; flex-direction:column; gap:16px}
.calc__heading .widget__title{margin:0; padding:0; color:#fff}
.widget__text{color:#fff; font-weight: 600; font-size: 24px; line-height: 1.25;}
.calc__step-heading{display:flex; align-items:center; justify-content:space-between}
.calc__step{display: flex; flex-direction: column;padding: 32px; gap: 24px;border: 1px solid #FFFFFF; border-radius: 24px;}
.calc__step-title{font-weight: 600; font-size: 24px; line-height: 1.25; color: #FFFFFF; display:flex; align-items:center; gap:16px}
.step-title__step-process{display: flex; justify-content: center; align-items: center; width: 108px; min-width: 108px; height: 72px; background: #ED1D23; border-radius: 36px; text-align:center; font-weight:500}
.calc__ling-set{font-weight: 500; font-size: 22px; line-height: 1.25; color: #FFFFFF; border-bottom: 1px dashed #FFFFFF;}
.calc__ling-set:hover{border-bottom-color:transparent; color:#ED1D23}
.calc__field{display:flex; gap:16px; flex-direction:column}
.calc__field label{font-weight: 500; font-size: 22px; line-height: 1.25; color: #FFFFFF; }
.calc__fields {display: flex; gap: 40px}
.two--fields .calc__field {width:50%}
.three--fields .calc__field {width:33.333%}
.calc__step-itog{color: #FFFFFF; font-weight: 900; font-size: 40px; line-height: 1.25;}
.calc__step-itog span{font-weight:600}
.calc__step .h3{color:#fff; margin:0}
.calc__step.step--fin .calc__step-body{display:flex; flex-direction:column; gap:24px; align-items:start}
.calc-radio__input {opacity: 0; position: absolute; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.calc-radio__row {display: flex; align-items: center; gap: 16px; cursor: pointer;}
.calc-radio__custom {width: 32px; height: 32px; border: 4px solid #E5E5E5; border-radius: 50%; background: #fff; position: relative; min-width: 32px;}
.calc-radio__custom::before {background: #ED1D23; position: absolute; top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%); content: ""; border-radius: 100%; width: 12px; height: 12px; opacity: 0;}
.calc-radio__input:checked + .calc-radio__row .calc-radio__custom::before {opacity: 1;}
.calc-radio__text, .calc__step-agree{font-size: 16px; line-height: 1.25; color: #FFFFFF;}
.calc__step-agree a{color:#ED1D23}
.calc__step-agree a:hover{color:#fff}
.calc__warning-info{font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.25; color: #FFFFFF; }
.calc__step-body{overflow: hidden;transition: height 0.35s ease, padding 0.35s ease, margin 0.35s ease}
.calc__warning{color:#ff8383}
@media(max-width:1529px){
	.wrapper__calc {padding: 30px;gap: 30px;border-radius: 24px}
	.calc__step-title {font-size: 20px;  gap: 12px}
	.step-title__step-process {width: 90px; min-width: 90px;height: 60px;border-radius: 24px}
	.calc__step {padding: 24px;gap: 16px;border-radius: 16px}
	.calc__field label{font-size:17px}
	.calc__fields {gap: 30px}
	.calc__step-itog{font-size:36px}
	.calc__warning-info{font-size:20px}
	.calc__ling-set{font-size:18px}
	.widget__text{font-size: 20px}
}
@media(max-width:1529px) and (min-width:1080px){
	.calc__step .h3{font-size:22px}
}
@media(max-width:1079px){
	.wrapper__calc {padding: 20px;gap: 20px}
	.calc__step-title {font-size: 18px;  gap: 10px}
	.step-title__step-process {width: 70px; min-width:70px; height: 40px;border-radius: 16px}
	.calc__step {padding: 20px;gap: 12px}
	.calc__field label{font-size:15px} 
	.calc__fields {gap: 20px}
	.calc__step-itog{font-size:32px}
	.calc__warning-info{font-size:18px}
	.calc__ling-set{font-size:16px}
	.widget__text{font-size: 18px}
	.calc__step.step--fin .calc__step-body{gap:16px}
}
@media(max-width:767px){
	.wrapper__calc{padding: 15px;gap: 15px;}
	.calc__step-title{font-size: 16px}
	.step-title__step-process {width: 60px; min-width:60px; height: 30px}
	.calc__step {padding: 15px}
	.calc__field label{font-size:14px} 
	.calc__step-itog{font-size:28px}
	.calc__warning-info{font-size:16px}
	.calc__ling-set, .calc-radio__text, .calc__step-agree{font-size:14px}
	.calc__field, .calc__heading, .calc-radio__row{gap:12px}
	.widget__text{font-size: 16px}
	.calc__fields{gap: 12px; flex-direction:column}
	.two--fields .calc__field, .three--fields .calc__field {width:100%}
	.calc-radio__custom {width: 28px;height: 28px;border: 3px solid #E5E5E5;min-width: 28px}
}
@media(max-width:575px){
	.calc__step-title{font-size: 14px;  gap: 8px}
	.step-title__step-process{width: 50px; min-width:50px; height: 25px}
	.calc__step-itog{font-size:24px}
	.calc__warning-info{font-size:14px}
	.calc__ling-set{display:none !important}
	.calc-radio__text, .calc__step-agree{font-size:12px}
	.widget__text{font-size: 14px}
	.calc-radio__custom {width: 28px;height: 28px;border: 3px solid #E5E5E5;min-width: 28px}
}

.calc__step.step--fin{display:none}
.calc__ling-set{display:none}


.wrapper__calc-popup{display:flex; flex-direction:column; gap:24px; background:#fff; padding:40px; border-radius:32px; width:100%; max-width:560px; align-items:center}
.wrapper__calc-popup label{width:100%}
.wrapper__calc-popup .calc-radio__text, .wrapper__calc-popup  .calc__step-agree{width:100%; color:#000}
 .calc__step-agree a:hover{color:#000}
.wrapper__calc-popup .calc-radio__custom{border-width:1px}
.wrapper__calc-popup .h3, .wrapper__calc-popup .title__text{width:100%; padding:0; margin:0}
.wrapper__calc-popup .h3{padding-right:40px}
.calc-popup__progress-bar{margin:16px 0; width: 100%;height: 16px;background: #F6F6F6;border-radius: 8px;}
.progress-bar__line{width: 0;height: 16px;background: #ED1D23;border-radius: 8px; transform-origin: left center; animation: progressBar 5s cubic-bezier(0.65, 0, 0.35, 1) forwards;}
#calc-popup button.f-button.is-close-btn{background: none;top: 40px;right: 40px;width: 24px;height: 24px;opacity: 1;padding: 3px;color: #000;}
#calc-popup button.f-button.is-close-btn:hover{color: #ED1D23;opacity: 1}
@keyframes progressBar {
  0% { 
    width: 0;
    transform: scaleX(0);
  }
  50% {
    transform: scaleX(1.02);
  }
  100% { 
    width: 100%;
    transform: scaleX(1);
  }
}
@media(max-width: 1529px) {
	.wrapper__calc-popup{max-width:520px; padding:35px; border-radius:28px; gap:20px}
	#calc-popup button.f-button.is-close-btn{top: 28px;right: 28px}
	.calc-popup__progress-bar{margin:14px 0; height: 14px}
	.progress-bar__line{height: 14px}
}
@media(max-width: 1079px) {
	.wrapper__calc-popup{max-width:460px; padding:30px; border-radius:24px; gap:16px}
	#calc-popup button.f-button.is-close-btn{top: 24px;right: 24px}
	.calc-popup__progress-bar{margin:12px 0; height: 12px}
	.progress-bar__line{height: 12px}
	.wrapper__calc-popup .h3{padding-right:25px}
}
@media(max-width: 767px) {
	.wrapper__calc-popup{max-width:420px; padding:25px; border-radius:20px; gap:12px}
	#calc-popup button.f-button.is-close-btn{top: 20px;right: 20px}
	.calc-popup__progress-bar{margin:10px 0; height: 10px}
	.progress-bar__line{height: 10px}
}
@media(max-width: 575px) {
	.wrapper__calc-popup{padding:20px !important}
	#calc-popup button.f-button.is-close-btn{top: 15px;right: 15px}
	.calc-popup__progress-bar{margin:8px 0; height: 8px}
	.progress-bar__line{height: 8px}
}