/* Defaults */

h1 {
    font-family: "Playfair Display",sans-serif !important;
}

h1, .h1 {
    font-size: 36px;
}

h1, .h1, h2, .h2, h3, .h3 {
    margin-top: 20px;
    margin-bottom: 10px;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: inherit;
    font-weight: 500;
    line-height: 1.1;
    color: inherit;
}

a.navbar-brand {
    white-space: normal;
    text-align: center;
    word-break: break-all;
}

/* Provide sufficient contrast against white background */
a {
    color: #0366d6;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}


.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10;
}

    /* Add some top padding to the page content to prevent sudden quick movement (as the navigation bar gets a new position at the top of the page (position:fixed and top:0) */
    .sticky + .container-content {
        padding-top: 60px;
    }


/* Sticky footer styles
-------------------------------------------------- */
html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.border-top {
    border-top: 1px solid #e5e5e5;
}

.border-bottom {
    border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy {
    font-size: 1rem;
    line-height: inherit;
}

/* Sticky footer styles
-------------------------------------------------- */
html {
    position: relative;
    min-height: 100%;
}

body {
    font-family: "Roboto",sans-serif;
    font-size: 14px;
    line-height: 1.4;
    color: #000;
    /*    background-color: #fff;*/
}

html {
    position: relative;
    min-height: 100%;
}
/*Normalize html and body elements,this style is just good to have*/
html, body {
    margin: 0;
    padding: 0;
}

.container-content {
    margin-bottom: 160px; /* Height of footer*/
}


.footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.copyright {
    clear: both;
    padding: 20px 10px;
    color: #c7c7c7;
    background-color: #000;
    line-height: 14px;
    font-size: small;
    text-align: center;
}

.credits {
    color: white;
    margin-bottom: 0;
    font-size: smaller;
    text-align: right;
}

@media screen and (max-width: 767px) {
    .credits {
        text-align: center;
        margin-top: 1rem;
    }
}
/*.container-content {
    display: flex;
    flex-direction: column;
    min-height: 80vh;
}*/


.center-block {
    margin: 0 auto;
}

.max-150 {
    max-width: 150px;
}

.padding-top {
    padding-top: 25px;
}


.page-title {
    text-align: center;
    display: block !important;
    margin-bottom: 50px;
    margin-top: 50px;
}

.chapter {
    font-weight: 300;
    letter-spacing: 0;
    font-size: 16px;
    line-height: 24px;
    margin: 20px 0 20px;
}

.form-control {
    background: #fff;
    background-clip: padding-box;
    border: 1px solid #c2c2c2;
    border-radius: 1px;
    font-family: 'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;
    font-size: 14px;
    height: 32px;
    line-height: 1.4;
    vertical-align: baseline;
    width: 100%;
    box-sizing: border-box;
    height: 40px;
    box-shadow: none;
    padding: 0 10px;
    font-weight: 300;
}

    .form-control:focus {
        border-color: #c2c2c2;
        outline: 0;
        box-shadow: none;
    }

.custom-control-label {
    position: relative;
    margin-bottom: 0;
    vertical-align: top;
    line-height: 2.2;
}

    .custom-control-label::before {
        position: absolute;
        top: .25rem;
        left: -1.5rem;
        display: block;
        width: 1.5rem;
        height: 1.5rem;
        pointer-events: none;
        content: "";
        background-color: #fff;
        border: #adb5bd solid 1px
    }

    .custom-control-label::after {
        position: absolute;
        top: .25rem;
        left: -1.5rem;
        display: block;
        width: 1.5rem;
        height: 1.5rem;
        content: "";
        background: 50%/50% 50% no-repeat
    }

.isMandatory::after {
    content: " *"
}

.bar-code {
    font-family: 'BarCode';
    font-size: 150px;
}

.bar-code-39 {
    font-family: 'BarCode39';
    font-size: 70px;
}

.bar-code-128 {
    font-family: 'BarCode128';
    font-size: 70px;
}

.btn-black:focus, .btn-black.focus {
    color: #fff;
    background-color: black;
    border-color: black;
    box-shadow: 0 0 0 0.2rem rgba(0,0,0,0.5);
}

.btn-black {
    color: #fff;
    background-color: black;
    border-color: black;
}

.alert-gray {
    background: #ebebeb;
}

.alert-warning {
    color: #333333;
    background-color: #ebebeb;
    border-color: lightgray;
}

/*CATCHPA*/
#mc-canvas {
    width: 220px; /* For best results, set width to between 210px and 240px */
    height: 154px; /* For best results, set height to between 140px and 170px */
    border-radius: 3px;
    margin-top: 10px;
}

body.blue #mc-canvas {
    background-image: url('/images/Captcha/CaptchaBlue.png') !important;
}

body.gold #mc-canvas {
    background-image: url('/images/Captcha/CaptchaGold.png') !important;
}

body.green #mc-canvas {
    background-image: url('/images/Captcha/CaptchaGreen.png') !important;
}

body.pink #mc-canvas {
    background-image: url('/images/Captcha/CaptchaPink.png') !important;
}

body.purple #mc-canvas {
    background-image: url('/images/Captcha/CaptchaPurple.png') !important;
}

body.red #mc-canvas {
    background-image: url('/images/Captcha/CaptchaRed.png') !important;
}

body.sky #mc-canvas {
    background-image: url('/images/Captcha/CaptchaSky.png') !important;
}

body.steel #mc-canvas {
    background-image: url('/images/Captcha/CaptchaSteel.png') !important;
}

.caret {
    border: none;
}
/* Le forme */

#mc-canvas.triangle {
    background-position: 10px 10px;
}

#mc-canvas.x {
    background-position: -200px 10px;
}

#mc-canvas.rectangle {
    background-position: -400px 10px;
}

#mc-canvas.circle {
    background-position: -600px 10px;
}

#mc-canvas.check {
    background-position: 10px -150px;
}

#mc-canvas.caret {
    background-position: -200px -150px;
}

#mc-canvas.zigzag {
    background-position: -400px -150px;
}

#mc-canvas.arrow {
    background-position: -600px -150px;
}

#mc-canvas.leftbracket {
    background-position: 10px -300px;
}

#mc-canvas.rightbracket {
    background-position: -200px -300px;
}

#mc-canvas.v {
    background-position: -400px -300px;
}

#mc-canvas.delete {
    background-position: -600px -300px;
}

#mc-canvas.leftbrace {
    background-position: 10px -450px;
}

#mc-canvas.rightbrace {
    background-position: -200px -450px;
}

#mc-canvas.star {
    background-position: -400px -450px;
}

#mc-canvas.pigtail {
    background-position: -600px -450px;
}

.center-block-content input {
    width: 70%;
}

.mc-noselect {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.mc-valid {
    box-shadow: 0 0 20px green;
}

.mc-invalid {
    box-shadow: 0 0 20px lightcoral;
}

.vantaggi {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    right: 0;
    text-align: center;
    font-size: 450px;
}

.vantaggi-card {
    position: relative;
    z-index: 100;
}


.loader {
    background: #000;
    background: radial-gradient(#222, #000);
    bottom: 0;
    left: 0;
    overflow: hidden;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 99999;
    display: none;
    opacity: 0.8;
}

.loader-text {
    color: white;
    top: 50%;
    left: 50%;
    vertical-align: middle;
    display: inline-block;
    position: relative;
    font-size: xx-large;
    margin-left: -65px;
    margin-top: 55px;
}

.loader-inner {
    bottom: 0;
    height: 60px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 100px;
}

.loader-line-wrap {
    animation: spin 2000ms cubic-bezier(.175, .885, .32, 1.275) infinite;
    box-sizing: border-box;
    height: 50px;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    transform-origin: 50% 100%;
    width: 100px;
}

.loader-line {
    border: 4px solid transparent;
    border-radius: 100%;
    box-sizing: border-box;
    height: 100px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 100px;
}

.loader-line-wrap:nth-child(1) {
    animation-delay: -50ms;
}

.loader-line-wrap:nth-child(2) {
    animation-delay: -100ms;
}

.loader-line-wrap:nth-child(3) {
    animation-delay: -150ms;
}

.loader-line-wrap:nth-child(4) {
    animation-delay: -200ms;
}

.loader-line-wrap:nth-child(5) {
    animation-delay: -250ms;
}

.loader-line-wrap:nth-child(1) .loader-line {
    border-color: hsl(0, 80%, 60%);
    height: 90px;
    width: 90px;
    top: 7px;
}

.loader-line-wrap:nth-child(2) .loader-line {
    border-color: hsl(60, 80%, 60%);
    height: 76px;
    width: 76px;
    top: 14px;
}

.loader-line-wrap:nth-child(3) .loader-line {
    border-color: hsl(120, 80%, 60%);
    height: 62px;
    width: 62px;
    top: 21px;
}

.loader-line-wrap:nth-child(4) .loader-line {
    border-color: hsl(180, 80%, 60%);
    height: 48px;
    width: 48px;
    top: 28px;
}

.loader-line-wrap:nth-child(5) .loader-line {
    border-color: hsl(240, 80%, 60%);
    height: 34px;
    width: 34px;
    top: 35px;
}

@keyframes spin {
    0%, 15% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}


input[type="date"]:not(.valid):before {
    color: #495057;
    content: attr(placeholder);
    margin-right: 0.2em;
}

.required-field::after {
    content: " *";
    color: #e32;
    position: absolute;
    font-size: x-large;
    top: -4px;
    right: 20px;
}

.required-field-label::after {
    content: " *";
    color: #e32;
    position: relative;
    font-size: x-large;
    top: 5px;
    left: 15px;
    margin-right: 15px;
}

ul.ui-autocomplete {
    max-height: 100px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

/* ===== Scrollbar CSS ===== */
/* Firefox */
* {
    scrollbar-width: auto;
    scrollbar-color: #000000 transparent;
}

    /* Chrome, Edge, and Safari */
    *::-webkit-scrollbar {
        width: 10px;
    }

    *::-webkit-scrollbar-track {
        background: transparent;
    }

    *::-webkit-scrollbar-thumb {
        background-color: #000000;
        border-radius: 10px;
    }

#Consent1-error, #Consent2-error {
    position: absolute;
    top: 25px;
    width: 200%;
}

#ckPrivacy-error {
    position: absolute;
    top: 20px;
}

.awd-fakeLink {
    color: red;
    font-size: small;
}
.awd-fakeLink:hover {
    cursor: pointer;
}