/* Milestones - CSS definitions. */

/* montserrat-regular - latin-ext_latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: local(''),
        url('../fonts/montserrat-v24-latin-ext_latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
        url('../fonts/montserrat-v24-latin-ext_latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* montserrat-600 - latin-ext_latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: local(''),
        url('../fonts/montserrat-v24-latin-ext_latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
        url('../fonts/montserrat-v24-latin-ext_latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* montserrat-700 - latin-ext_latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: local(''),
        url('../fonts/montserrat-v24-latin-ext_latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
        url('../fonts/montserrat-v24-latin-ext_latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* Default styles. */
body {
    font-family: 'Montserrat', sans-serif;
    color: #2e2d2c;
    background-image: linear-gradient(45deg, #b72e7a 0, #e04122 50%, #d8af2a 100%);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

[type=button]:focus,
[type=submit]:focus,
button:focus {
    outline: none;
}

.elementor-button {
    transition: none;
}

#content {
    min-height: 600px;
    margin: 30px auto 70px;
}

.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1200px;
    width: 90vw;
}

.mil-navigation {
    display: flex;
    flex-flow: row wrap;
    padding: 1rem 1rem 0.6rem;
    justify-content: flex-start;
    gap: 0.4rem;
}

.mil-navigation .mil-navi-private {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    gap: 0.4rem;
    flex: 1 1 auto;
    align-content: center;
}

.mil-navigation .mil-navi-private a {
    padding: 0.2rem 1.6rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 20px;
    background-color: #2e2d2c;
}

.mil-navigation .mil-navi-private a:hover {
    background-image: linear-gradient(90deg, #b72e7a 0, #e04122 50%, #d8af2a 100%);
    background-repeat: no-repeat;
    background-size: 105%;
    background-position: center;
}

.mil-navigation .mil-navi-lang {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-end;
    gap: 0.4rem;
    flex: 1 1 auto;
    align-content: center;
}

.mil-navigation .mil-navi-lang a {
    width: 36px;
    line-height: 0;
}

.mil-button a.elementor-button-link:focus,
.mil-button a.elementor-button-link:active,
.mil-button a.elementor-button-link:hover {
    border-color: #ffffff;
    background-image: linear-gradient(90deg, #b72e7a 0, #e04122 50%, #d8af2a 100%);
    background-repeat: no-repeat;
    background-size: 105%;
    background-position: center;
}

::placeholder {
    color: #e2e2e2;
    opacity: 1;
    font-weight: 600;
}

:-ms-input-placeholder {
    color: #e2e2e2;
    font-weight: 600;
}

::-ms-input-placeholder {
    color: #e2e2e2;
    font-weight: 600;
}

/* Plugin 'Ninja Forms' styles. */
.nf-form-layout > form > div {
    display: flex;
    flex-flow: column wrap;
}

.ninja-forms-form-wrap * {
    font-size: 0.8rem;
}

.nf-response-msg,
.nf-before-form,
.nf-after-form,
.nf-after-form-content,
.nf-before-form-content {
    padding: 0 10px;
}

.nf-form-fields-required {
    display: none;
}

.nf-before-form-content {
    order: 1;
}

div.flatpickr-current-month {
    display: flex;
}

.nf-form-content.mil-nf-field .list-select-wrap .nf-field-element > div,
.nf-form-content.mil-nf-field input:not([type="button"]),
.nf-form-content.mil-nf-field textarea {
    padding: 0 45px 0 30px;
    border: 2px solid #e2e2e2;
    border-radius: 30px;
    background-color: #ffffff;
}

.nf-error.field-wrap .nf-field-element::after {
    border-radius: 0 30px 30px 0;
}

.listimage-container .nf-error.field-wrap .nf-field-element::after {
    top: 0;
    right: -50px;
}

.nf-form-content.mil-nf-field button,
.nf-form-content.mil-nf-field input[type="button"],
.nf-form-content.mil-nf-field input[type="submit"] {
    height: 54px;
    padding: 16px 70px;
    font-family: "Montserrat", Sans-serif;
    font-size: 18px;
    line-height: 0;
    font-weight: 600;
    color: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 30px;
    background-color: #2e2d2c;
    transition: none;
}

.nf-form-content.mil-nf-field button:focus,
.nf-form-content.mil-nf-field input[type="button"]:focus,
.nf-form-content.mil-nf-field input[type="submit"]:focus,
.nf-form-content.mil-nf-field button:active,
.nf-form-content.mil-nf-field input[type="button"]:active,
.nf-form-content.mil-nf-field input[type="submit"]:active,
.nf-form-content.mil-nf-field button:hover,
.nf-form-content.mil-nf-field input[type="button"]:hover,
.nf-form-content.mil-nf-field input[type="submit"]:hover {
    color: #ffffff;
    background-image: linear-gradient(90deg, #b72e7a 0, #e04122 50%, #d8af2a 100%);
    background-repeat: no-repeat;
    background-size: 105%;
    background-position: center;
    transition: none;
}

.nf-field .submit-wrap .nf-field-element {
    text-align: center;
}

#nf-form-2-cont .nf-row:last-child .nf-field-element,
#nf-form-3-cont .nf-row:last-child .nf-field-element {
    text-align: right;
}

#nf-form-2-cont .nf-field .submit-wrap .nf-field-element,
#nf-form-3-cont .nf-field .submit-wrap .nf-field-element {
    text-align: left;
}

#nf-form-7-cont .nf-row:last-child .nf-field-element button,
#nf-form-7-cont .nf-row:last-child input[type="button"] {
    width: 98%;
    max-width: 200px;
    padding: 16px 20px;
}

#nf-form-7-cont .nf-field .submit-wrap .nf-field-element {
    text-align: right;
}

.nf-after-field .nf-error-msg a {
    display: none;
}

.nf-form-content .nf-row ul {
    justify-content: center;
}

.nf-form-content .nf-row ul li {
    max-width: 130px;
    min-width: 70px;
}

.nf-form-content .nf-row ul li:nth-of-type(6n-5) {
    grid-column: 1 !important;
}

.nf-form-content .nf-row ul li:nth-of-type(6n-4) {
    grid-column: 2 !important;
}

.nf-form-content .nf-row ul li:nth-of-type(6n-3) {
    grid-column: 3 !important;
}

.nf-form-content .nf-row ul li:nth-of-type(6n-2) {
    grid-column: 4 !important;
}

.nf-form-content .nf-row ul li:nth-of-type(6n-1) {
    grid-column: 5 !important;
}

.nf-form-content .nf-row ul li:nth-of-type(6n) {
    grid-column: 6 !important;
}

/* Plugin 'Ninja Forms' configurator styles. */
.mil-config-disable-links {
    pointer-events: none;
    opacity: 0.75;
}

.mil-config-disable-links .mil-nf-field .listimage-wrap li label {
    border-color: #e04122;
}

.mil-config-h {
    font-family: "Montserrat", Sans-serif;
    font-size: 2rem;
    line-height: 1;
    font-weight: 700;
    text-align: center;
}

.mil-nf-field .listimage-container ul {
    padding: 0;
}

.mil-nf-field .listimage-wrap li label {
    border: 2px solid #e2e2e2;
    border-radius: 1rem;
    cursor: pointer;
}

.mil-nf-field .listimage-wrap li label.nf-checked-label,
.mil-nf-field .listimage-wrap li label:hover {
    border-color: #ffd100;
}

.mil-conf-button-back-container {
    position: relative;
    top: 26px;
    width: 50%;
    height: 0;
    margin: 0;
}

.mil-conf-button-forward-container {
    position: relative;
    top: 26px;
    height: 0;
    margin: 0;
    text-align: right;
}

.nf-previous-item,
.nf-next-item {
    position: relative;
    z-index: 1;
}

.nf-form-content.mil-nf-field .mil-back-login,
.nf-form-content.mil-nf-field .mil-back-register,
.nf-form-content.mil-nf-field .mil-back-configurator,
.nf-form-content.mil-nf-field .mil-back-welcome {
    padding: 0;
}

.mil-back-login a,
.mil-back-register a,
.mil-back-configurator a,
.mil-back-welcome a {
    font-size: 18px;
    color: #ffffff;
}

.mil-back-register a {
    padding: 16px 90px;
}

[lang="en-GB"] .mil-back-register a {
    padding: 16px 70px;
}

.mil-back-login a,
.mil-back-welcome a {
    padding: 16px 70px;
}

[lang="en-GB"] .mil-back-login a {
    padding: 16px 90px;
}

.mil-back-configurator a {
    padding: 16px 0;
}

.mil-back-register:hover a,
.mil-back-configurator:hover a,
.mil-back-welcome:hover a {
    color: #ffffff;
}

div.nf-form-content {
    margin: 0;
}

.nf-form-content .label-above .nf-field-label {
    margin-bottom: 0 !important;
}

/* Footer */
.mil-footer-nav {
    display: flex;
    justify-content: center;
    gap: 2rem;
    width: 100%;
}

.mil-footer-nav a,
.mil-footer-nav a:hover,
.mil-footer-nav a:active,
.mil-footer-nav a:focus {
    color: #ffffff;
    outline: 0;
}

@media only screen and (max-width: 1024px) {
    #content {
        min-height: 500px;
    }
}

@media only screen and (max-width: 800px) {
    div.nf-field-container .nf-field-label {
        margin-bottom: 0 !important;
    }
}

@media only screen and (max-width: 767px) {
    #content {
        min-height: 400px;
    }

    .mil-back-register a {
        padding: 16px 38px;
    }

    .mil-back-login a,
    .mil-back-welcome a,
    .nf-form-content.mil-nf-field button,
    .nf-form-content.mil-nf-field input[type="button"],
    .nf-form-content.mil-nf-field input[type="submit"] {
        padding: 16px 20px;
    }

    .mil-responsive.col-first {
        order: -1;
    }

    #nf-form-7-cont .nf-row:last-child .nf-field-element {
        text-align: center;
    }
}

@media only screen and (max-width: 600px) {
    #nf-form-2-cont .nf-row:last-child .nf-field-element,
    #nf-form-3-cont .nf-row:last-child .nf-field-element,
    #nf-form-2-cont .nf-field .submit-wrap .nf-field-element,
    #nf-form-3-cont .nf-field .submit-wrap .nf-field-element {
        text-align: center;
    }
}

@media only screen and (max-width: 520px) {
    .nf-form-content .nf-row ul li:nth-of-type(3n-2) {
        grid-column: 1 !important;
    }

    .nf-form-content .nf-row ul li:nth-of-type(3n-2) {
        grid-column: 1 !important;
    }

    .nf-form-content .nf-row ul li:nth-of-type(3n) {
        grid-column: 3 !important;
    }
}
