.webform_main {border: solid 4px #efefef;}
.breadcrumbs, p.mob-steps {display:none;}
label.required:after, span.required:after {color: #d9201e;font-weight: bold;}
.col-main {background: #fff;}
section.section-webform {max-width: calc(1388px + (2* 26px));width: 100%; margin: 0 auto; padding: 0px 12px;}
input#field121 {width: 50% !important;}
.buttons-set button.button { background-color: #D9201E; color: white; padding: 0 21px; font-size: 16px; line-height: 1; font-weight: 600; height: 54px; border-radius: 4px; border: 2px solid #D9201E; transition: background 0.4s, color 0.4s; text-transform: uppercase; letter-spacing: 2px; cursor: pointer; }
.buttons-set button.button:hover {background-color: transparent;color: #D9201E;}
.buttons-set p.required {font-size: 12px;}
.opentip-container.style-standard {box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);}
.ot-content {font-size: 14px;line-height: 18px;}
input[type="file"] {background: white;width: 100%;border: 1px solid #d4d4d4;border-radius: 4px;padding: 0 16px;font-size: 14px;line-height: 1;height: 48px;color: #544F4A;padding-block: 12px;}
.g-recaptcha {float: right; margin-bottom: 40px;}

.section__head:not(:last-child) {
  margin-bottom: 24px;
}
.section__head {
  width: 100%;
  font-size: 16px;
  line-height: 1.625;
  text-align: center;
}

.webform_main {
	background-color:white;
	padding:clamp(20px, 7vw, 84px);
	margin-bottom:70px;
}
.multistep-toc {
    width: 290px;
	padding-right: 40px;
	list-style: none;
	margin: 0;
	padding-top: 0;
	display: flex;
	flex-direction: column;
	gap: 24px;
	float:left;
}
.toc-item {
  display: flex;
  align-items: center;
  gap: 12px;
  counter-increment: formSteps;
  color: #A8A8A8;
  cursor: pointer;
  transition: color var(--theme-transition-duration);
  font-size: 14px;
  line-height: 1.57;
}

.toc-item.complete {
  color: #544F4A;
}

.toc-item.complete::before {
  background-color: #991C1F;
  font-size: 0;
  line-height: 0;
  opacity: 1;
  background-image: url(/media/assets/media/images/ico-check.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 9px 7px;

}


.toc-item.active::before {
  opacity: 1;

}
.toc-item::before {
	content: counter(formSteps);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  min-width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color:#d9201e;
  opacity: 0.1;
  transition: opacity var(--theme-transition-duration);
  font-family: var(--ff-montserrat, 'sans-serif');
  font-weight: 500;
  color: white;
}
.toc-item.active {
    color: #544F4A;
}

.fieldset {
	width:76%;
	float:right;
}
	
.legend {
  
  font-weight: 700 !important;
  font-size: 20px !important;
  line-height: 1.5;
  color: #544F4A;
  text-transform: uppercase;
  margin-bottom: 0;
  border-bottom:none !important;
}
.form-list input.input-text {
  background: white;
  width: 100% !important;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  padding: 0 16px;
  font-size: 14px;
  line-height: 1;
  height: 48px;
  color: #544F4A;
  transition: color var(--theme-transition-duration), border var(--theme-transition-duration);
}

.form-list label {
  width: 100%;
  min-width: calc(100% + 6px);
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  font-family: 'Nunito';
}

.form-list .field {
    float: left;
    display: flex;
    flex-direction: column;
    gap: 4px;
    position: relative;
    justify-content: flex-end;
    z-index: 2;
    width: 50%;
	padding: 16px 20px;
}

.form-list select {
    width: 100%;
    border: 1px solid #d4d4d4;
    border-radius: 4px;
    padding: 0 16px;
    font-size: 14px;
    line-height: 1;
    height: 48px;
    color: #544F4A;
    transition: color var(--theme-transition-duration), border var(--theme-transition-duration);
    background: white;
}

.fieldset-28 .form-list {
	
}

.fieldset-28 .form-list .field {
	width:307px !important;
	padding:16px 10px 16px 0!important;
}
.buttons-set {
	border-color:none !important;
}

.list-select {
  /* Use flex to line up the radio options horizontally.
     Also wrap if they're too many to fit on one row. */
  display: flex;
  flex-wrap: wrap;
  gap: 10px; /* space between boxes */
  list-style: none; /* if you want to remove default bullets */
  margin: 0;
  padding: 0;
}

.list-select li.control {
  display: flex;
  align-items: center;    
  border: 1px solid #ccc; 
  border-radius: 4px;     
  padding: 6px 10px;      
  cursor: pointer;        
  flex-grow:1;
  width: calc((100% / 3) - 9px);
  min-height:48px;
  
}


.list-select li.control:hover {
  background-color: #f9f9f9;
}



.list-select li.control input[type="radio"] {
  margin-right: 8px;
  margin-left: 6px;
  accent-color: #d9201e;
}


.list-select li.control:has(input[type="radio"]:checked) {
  border-color: #d9201e;                      
  background-color: rgba(217, 32, 30, 0.1); 
}

.molding-style .input-box ul.list-select li.control {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: calc((100% / 5) - 12px);

  border-radius: 4px;
  padding: 36px 0 14px 0;
  position: relative;
 
  
}
.molding-style .input-box ul.list-select li.control input[type="radio"] {
  accent-color: #d9201e;
  content: ' ';
  position: absolute;
  right: 14px;
  top: 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid #D4D4D4;
  transition: border var(--theme-transition-duration), background var(--theme-transition-duration);
}

.molding-style-input img {
  display: block;         
  margin-bottom: 10px;   
}

.molding-style-input {
  line-height: 24px; 
  display: flex;
  flex-direction: column-reverse; 
  align-items: center;   
  text-align: center; 
  
  
}
h6 {
	font-size: 18px;
    line-height: 1.11;
    font-weight: 700;
    margin-bottom: 0;
	}
.fieldset-28 > .form-list > li.fields > .field > label > span {display:none}
.list-select li.option-0 label.molding-style-input {
  background: url("/media/assets/media/images/form-radio-01.png") no-repeat center;
  background-position-y: inherit; 
  background-size: 110px;
  height:115px;
}

.list-select li.option-1 label.molding-style-input {
  background: url("/media/assets/media/images/form-radio-02.png") no-repeat center;
  background-position-y: inherit;
  background-size: 110px;
  height:115px;
}

.list-select li.option-2 label.molding-style-input {
  background: url("/media/assets/media/images/form-radio-03.png") no-repeat center;
  background-position-y: inherit;
  background-size: 110px;
  height:115px;

}

.list-select li.option-3 label.molding-style-input {
  background: url("/media/assets/media/images/form-radio-04.png") no-repeat center;
  background-position-y: inherit;
  background-size: 110px;
  height:115px;

}

.list-select li.option-4 label.molding-style-input {
  background: url("/media/assets/media/images/form-radio-05.png") no-repeat center;
  background-position-y: inherit;
  background-size: 110px;
  height:115px;

}

.list-select li.option-0 label.light-rail-input {
  background: url("/media/assets/media/images/form-radio-06.png") no-repeat center;
  background-position-y: inherit;
  background-size: 110px;
  height:115px;
}
.list-select li.option-1 label.light-rail-input {
  background: url("/media/assets/media/images/form-radio-07.png") no-repeat center;
  background-position-y: inherit;
  background-size: 110px;
  height:115px;
}

.light-rail .input-box ul.list-select li.control {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: calc((100% / 5) - 12px);
 
  border-radius: 4px;
  padding: 36px 0 14px 0;
  position: relative;
  
  flex-grow:0;
  
}
.light-rail .input-box ul.list-select li.control input[type="radio"] {
  accent-color: #d9201e;
  content: ' ';
  position: absolute;
  right: 14px;
  top: 14px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid #D4D4D4;
  transition: border var(--theme-transition-duration), background var(--theme-transition-duration);
}

.light-rail-input img {
  display: block;         
  margin-bottom: 10px;   
}
.light-rail-input img {
  display: block;         
  margin-bottom: 10px;   
}

.light-rail-input {
  line-height: 24px; 
  display: flex;
  flex-direction: column-reverse; 
  align-items: center;   
  text-align: center; 
  
  
}

.webforms-fields-comment {
  margin: 0 !important;
  display: block;
  width: 100%;
  font-size: 14px;
  line-height: 1.57;
  color: #857E78;
  font-style:italic;
  font-family: 'Nunito';
}

.field > label > span {
  color:#857E78
}

.field label {
  display: block;
  align-items: center;  
}

@media only screen and (min-width: 1024px) {


  .fieldset.fieldset-28 li.fields {
    display: block;        
    flex-wrap: nowrap;       
    align-items: center;     
    margin-bottom: 1.5rem;   
  }


  .fieldset.fieldset-28 li.fields .field {
    margin-right: 10px;    
  }


  .fieldset.fieldset-28 li.fields .field:last-child {
    margin-right: 0;
  }
}



.field .tooltip-icon {
  display: inline-block; 
  margin-left: 21px;      
  vertical-align: middle; 
  position:inherit !important;
  width: 14px;
  height: 14px;
  background-image: url('./media/assets/media/images/ico-tooltip.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  cursor: pointer;
  z-index: 99999;
}

.field label span {
  margin-right: 5px; 
}
.opentip-container {
  padding:8px;
}
.buttons-set {
  border:none !important;
}

.input-with-suffix {
  position: relative;  
  
}
.webforms-fields-154 {
	width: 100% !important;
}
	
#field154 {
	width: 100%;
    resize: none;
    height: 160px;
    padding-block: 10px;
    line-height: 1.57;
}

#field154 input {
	background: white;
    width: 100%;
    border: 1px solid #d4d4d4;
    border-radius: 4px;
    padding: 16px 16px;
    font-size: 14px;
    line-height: 1;
    color: #544F4A;
    transition: color var(--theme-transition-duration), border var(--theme-transition-duration);
}

.input-with-suffix::after {
  content: attr(data-suffix);    
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;          
  color: #544F4A;                 
  font-size: 14px;               f
  line-height: 1;
}


@media (max-width: 1400px) {
    .webform_main {
		padding: clamp(20px, 5vw, 84px);
	}
	.multistep-toc {
        width: 190px;
        padding-right: 20px;
    }
	.fieldset{
		width: calc(100% - 190px);
	}
}

@media (max-width: 985px) {
    section.section-content-and-images {
		margin-bottom: 0;
	}
	section.section-webform .section__head:first-child {
		display: none;
	}
	section.section-webform {
		padding: 0;
        position: relative;
        z-index: 2;
        background-color: white;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
	}
	.multistep-toc {
		width: 100%;
        padding-right: 0;
        margin-top: 10px;
        flex-direction: row;
        justify-content: center;
        float: none;
        gap: 18px;
	}
	.toc-item {
		font-size: 0;
		line-height: 0;
		gap: 0;
	}
	.toc-item::before {
		line-height: 1;
		font-size: 18px;
	}
	p.mob-steps {
		display: block;
        color: #ff0000;
        text-align: center;
        font-size: 14px;
        line-height: 1.57;
        font-weight: 500;
        text-transform: uppercase;
        margin-top: 16px;
	}
	.fieldset {
        width: 100%;
    }
	h2.legend {
		text-align: center;
		margin-top: 10px;
	}
	.webform_main {
        padding: clamp(20px, 3vw, 84px);
    }
	.form-list input#field121 {
		width: 100% !important;
	}
}

@media (max-width: 767px) {
	section.section-content-and-images {
        padding-block: 32px;
    }
	.shell.shell--max {
		flex-direction: column-reverse;
		gap: 32px;
	}
	.section-content-and-images .shell.shell--max .section__content{
		width: 100%;
		padding-right: 0;
	}
	.section-content-and-images .shell.shell--max .section__images{
		width: auto;
		margin-inline: 20px;
	}
	.section-content-and-images .shell.shell--max .section__image:first-child{
		margin: -14px 40px 0 4px;
		transform: rotate(-8deg);
	}
	[data-parallax="true"][data-move] {
		opacity: 0.529101;
	}
	
	.webform_main {
        padding: clamp(10px, 2vw, 84px);
    }
	.webform_main .form-list .field {
		width: 100%;
		padding: 10px 20px;
	}
	.molding-style .input-box ul.list-select li.control, .light-rail .input-box ul.list-select li.control {
		width: calc(50% - 16px);
		flex-grow: 0;
	}
	.fieldset-28 .form-list {
		display: block;
	}
	.webform_main .fieldset-28 .form-list .field {
		width: 50% !important;
	}
}



.section-content-and-images {
  width: 100%;
  position: relative;
  background-color: white;
  padding-block: 25px;
  margin-bottom: 25px;
  }
  
  .section-content-and-images > * {
  display: flex;
  align-items: center;
}
.shell--max {
  --shell-max-width: 1388px;
  --shell-gutter: 26px;
  width: 100%;
}
.shell {
  max-width: calc(var(--shell-max-width) + (2 * var(--shell-gutter)));
  margin: 0 auto;
  padding: 0 var(--shell-gutter);
  
  }
  
 .section-content-and-images .section__content {
  width: calc(50% + 32px);
  padding-inline: 0 60px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  flex: none;
  position: relative;
  z-index: 10;
}
.section__content {
  padding: 0 24px;
  }
  
  .section-content-and-images .section__content-entry {
  font-size: 18px;
  line-height: 1.66;
  color: #544F4A;
}
.section-content-and-images .section__images::before {
  content: ' ';
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  aspect-ratio: 1/1;
  background-color: #EFEFEF;
  border-radius: 50%;
}
.section-content-and-images .section__content-entry h1 {
  font-size: 32px;
  line-height: 1.2;
  color: #544F4A;
  margin-bottom: 16px;
  font-family: Montserrat,georgia,serif;
  font-weight: 700;
  max-width: none;
  font-style: normal;
}
.section-content-and-images .section__content-entry p {
  margin-bottom: 16px;
}
element {
}
.btn-main {
  transition: color var(--theme-transition-duration), background var(--theme-transition-duration), border var(--theme-transition-duration);

}
.btn-main {
  display: inline-flex;
 align-items: center;
min-height: 54px;
padding: 4px 22px;
font-size: 0;
line-height: 0;
background-color: #d9201e;
color: white;
border-radius: 4px;
border: 1px solid #d9201e;
text-decoration: none;

}
.btn-main > span {
  display: block;
  font-size: 16px;
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600;
}
.section-content-and-images .section__images {
  width: calc(50% - 32px);
  position: relative;
  font-size: 0;
  line-height: 0;
  pointer-events: none;
}
.section-content-and-images .section__image:last-child {
  margin: -28px 96px 0 8px;
  transform: rotate(-8deg);
}
.section-content-and-images .section__image:first-child {
  margin: 27px 8px 0 96px;
  transform: rotate(8deg);
  z-index: 3;
}
.section-content-and-images .section__image {
  padding: clamp(20px, 3vw, 32px);
  background-color: white;
  box-shadow: 0 0 10px rgba(0, 0, 0, .2);
  position: relative;
  z-index: 2;
}
.section-content-and-images .section__image strong {
  display: block;
  position: relative;
  width: 100%;
}
.section-content-and-images .section__image span + span {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}

.section__content-entry > ul {
list-style:disc;
margin-left: 25px;
}
@media (max-width: 767px) {
.section__content-entry {margin:20px;}
.section__content-actions {text-align:center;}
}
