.configuratore {
--green: #0a6605;
--orange: #f87a1f;
padding-top: 100px;
position: relative;
}
.configuratore--steps {
padding-top: 50px;
}
.configuratore-step {
padding-bottom: 100px;
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: flex-start;
justify-content: flex-start;
align-items: stretch;
}
.configuratore-step.disabled {
opacity: 0.3;
pointer-events: none;
}
.configuratore-step--section:not(.section-lvl0):not(.active) {
display: none;
}
.configuratore-step--section {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: flex-start;
align-items: baseline;
column-gap: 50px;
row-gap: 10px;
justify-content: flex-start;
}
.configuratore-step--title {
font-size: 3em;
font-family: "Caveat";
font-weight: bold;
font-style: normal;
color: var(--green);
line-height: 1.1;
margin-bottom: 15px;
width: 100%;
}
.configuratore-step--section--title {
font-weight: bold;
width: 100%;
margin-top: 15px;
}
.configuratore-step--answer {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-content: flex-end;
justify-content: flex-start;
align-items: flex-end;
gap: 5px;
position: relative;
padding: 5px;
cursor: pointer;
}
.configuratore-step--answer.disabled {
opacity: 0.3;
}
.configuratore-step--answer.configuratore-text span {
font-weight: bold;
font-family: "Roboto Slab";
line-height: 1;
}
.configuratore .configuratore-step .configuratore-step--section .configuratore-step--answer input[type="text"] {
background: transparent;
border: 0;
border-bottom: 1px solid black;
box-shadow: none;
margin-bottom: 2px;
padding: 0;
height: auto;
font-family: "Caveat";
font-weight: 700;
font-style: normal;
color: var(--orange);
font-size: 1.5em;
caret-color: black;
padding-inline: 10px;
flex: 1;
}
.configuratore-step--answer.configuratore-text {
flex: 1;
max-width: 300px;
width: 100%;
}
.configuratore-step--answer input[type="radio"] {
display: none;
}
.configuratore-step--custom-radio {
aspect-ratio: 1;
width: 13px;
border-radius: 100%;
border: 2px solid var(--green);
}
.configuratore-step--answer input[type="radio"]:checked ~ .configuratore-step--custom-radio {
background: var(--orange);
border-color: var(--orange);
}
.configuratore-step--answer.configuratore-radio {
align-items: center;
gap: 10px;
}
.configuratore-step--answer-inner {
display: flex;
flex-direction: column;
flex-wrap: nowrap;
align-content: flex-start;
justify-content: flex-start;
align-items: flex-start;
gap: 10px;
line-height: 1;
}
.configuratore-step--answer i {
opacity: 0.6;
}
.configuratore-step--answer-error {
position: absolute;
top: 100%;
font-style: italic;
font-size: smaller;
color: #f87a1f;
pointer-events: none;
opacity: 0;
}
.configuratore-step--answer-error.active {
opacity: 1;
}
.configuratore-step .configuratore-step--image {
order: 1;
width: 100%;
max-width: 500px;
}
.configuratore-step--risposte {
flex: 1;
width: 900px;
max-width: 100%;
}
.configuratore-step .configuratore-step--image ~ .configuratore-step--risposte .configuratore-step--section {
flex-direction: column;
}
.configuratore-step--answer.configuratore-radio_text span {
line-height: 1;
}
.configuratore--progress {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-content: center;
justify-content: space-between;
align-items: center;
user-select: none;
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 1;
background-color: white;
}
.configuratore--progress-track {
position: absolute;
top: 50%;
transform: translateY(-50%);
height: 20px;
left: 0;
right: 0;
background: #d9d9d9;
margin-inline: 35px;
overflow: hidden;
}
.configuratore--progress-thumb {
width: 0;
border-radius: 20px;
background: var(--green);
transition: width 0.3s ease;
height: 100%;
}
.configuratore--progress-step {
position: relative;
}
.configuratore--progress-step.disabled {
filter: grayscale(1);
}
.configuratore--progress-step--number {
position: absolute;
top: 50%;
left: calc(50% - 5px);
transform: translate(-50%, -50%);
color: white;
font-size: 2.5em;
font-family: "Caveat";
font-weight: bold;
font-style: normal;
}
.configuratore-btn {
margin: auto;
display: block;
width: 400px;
background: var(--orange);
padding: 15px 25px;
max-width: 100%;
color: white;
border: 2px solid var(--orange);
cursor: pointer;
font-size: 1.4em;
transition: color 0.3s ease, background-color 0.3s ease;
text-align: center;
position: relative;
}
.configuratore-btn:hover {
background: transparent;
color: var(--orange);
}
.configuratore-btn.disabled {
pointer-events: none;
filter: grayscale(1);
}
.configuratore-loader {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: var(--orange);
z-index: 1;
opacity: 0.3;
}
.configuratore-loader.disabled {
opacity: 0;
pointer-events: none;
}
.configuratore-btn.loading {
pointer-events: none;
}
.configuratore-btn.loading:before {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: var(--orange);
content: "";
}
.configuratore-btn.loading:after {
position: absolute;
top: 50%;
left: 50%;
height: 75%;
aspect-ratio: 1;
transform: translate(-50%, -50%) rotate(0deg);
border: 3px solid white;
border-right-color: transparent;
border-radius: 100%;
content: "";
animation: 1s spins infinite linear;
}
@keyframes spins {
from {
transform: translate(-50%, -50%) rotate(0deg);
}
to {
transform: translate(-50%, -50%) rotate(360deg);
}
}
.configuratore--result {
padding: 50px;
background: #e0ece0;
}
span.configuratore--result-name {
font-size: 3em;
font-family: "Caveat";
font-weight: bold;
font-style: normal;
color: var(--green);
line-height: 1.1;
margin-bottom: 15px;
width: 100%;
display: block;
text-align: center;
}
.configuratore--result-actions {
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-content: center;
align-items: stretch;
justify-content: space-around;
margin-top: 50px;
gap: 15px;
}
.configuratore--result .configuratore--result-btn {
display: block;
width: 400px;
background: var(--orange);
padding: 15px 25px;
max-width: 100%;
color: white;
border: 2px solid var(--orange);
cursor: pointer;
font-size: 1.4em;
transition: color 0.3s ease, background-color 0.3s ease;
text-align: center;
position: relative;
}
.configuratore--result .configuratore--result-btn:hover {
background: white;
color: var(--orange);
}
.configuratore .wpcf7 .wpcf7-response-output:before {
display: none;
}
.configuratore--result-form--wrapper {
margin-top: 50px;
}
@media (max-width: 767px) {
.configuratore--progress-step:not(.active):not(:last-of-type) {
display: none;
}
.configuratore--progress-step--number {
font-size: 1.6em;
left: calc(50% - 3px);
}
.configuratore {
padding-top: 50px;
}
.configuratore--progress-track {
border-radius: 50px;
margin-inline: 10px;
}
.configuratore--progress {
background: white;
padding-block: 10px;
}
}
@media (max-width: 500px) {
.configuratore-step--title {
font-size: 1.7em;
}
.configuratore-step .configuratore-step--image {
order: 0;
}
}