/* reset */
*,*::before,*::after{box-sizing:border-box}ul[class],ol[class]{padding:0}body,h1,h2,h3,h4,p,ul[class],ol[class],li,figure,figcaption,blockquote,dl,dd{margin:0}body{min-height:100vh;scroll-behavior:smooth;text-rendering:optimizeSpeed;line-height:1.5}ul[class],ol[class]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}img{max-width:100%;display:block}article>*+*{margin-top:1em}input,button,textarea,select{font:inherit}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}

@font-face {
    font-family: 'tecnoadslfont';
    src: url('8a7c3e2a-df0d-4818-963d-6a71e8492d59.eot') format('embedded-opentype'),url('8a7c3e2a-df0d-4818-963d-6a71e8492d59.eot?#iefix') format('embedded-opentype');
    font-style: normal;
    font-weight: 400
}

@font-face {
    font-family: 'tecnoadslfont';
    src: url('964b6cc8-f639-4b95-aac2-5a6a3b2af0ca.ttf') format('truetype');
    font-style: normal;
    font-weight: 400
}

@font-face {
    font-family: 'tecnoadslfont';
    src: url('dc691e02-de94-48f7-8857-84345e6e4e21.woff') format('woff');
    font-style: normal;
    font-weight: 400
}

html, body {
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.5;
    background: #FFF;
}

#page {
    max-width: 1100px;
    padding: 30px;
    margin: 0 auto;
}

header {
    margin-bottom: 40px;
}

header h1.logo {
    width: 300px;
    height: 100px;
    margin: 0 auto;
    background: transparent url("logo.png") no-repeat 0 0;
    background-size: contain;
    text-indent: -3333px;
}

header h1.logo a {
    display: block;
    width: 100%;
    height: 100%;
}

header h2 {
    font-family: tecnoadslfont;
    font-size: 200%;
    color: #004e74;
    margin-bottom: 0;
}

header p {
    font-size: 18px;
}

h3 {
    font-family: tecnoadslfont;
    font-size: 160%;
    color: #004e74;
    margin: 60px 0 30px 0;
}

h4 {
    font-family: tecnoadslfont;
    font-size: 130%;
    color: #004e74;
    margin: 0 0 20px 0;
}

a {
    color: inherit !important;
}


ul {
    list-style-type: disc;
    padding: 0 0 0 20px;
    margin: 0;
}

ul li {
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 10px;
}


fieldset {
    border: none;
    outline: none;
    margin: 0 0 20px 0;
    padding: 0;
    position: relative;
}

label, input, select {
    display: block;
    width: 100%;
}

label {
    font-size: 20px;
    /* color:#004e74; */
}

input[type="text"] {
    height: 40px;
    font-size: 20px;
    line-height: 40px;
    padding: 0 10px;
    border: 1px solid #CCC;
    color: #555;
    border-radius: 0;
}

input[type="text"].autocomplete {
    text-transform: uppercase;
}

select {
    height: 40px;
    font-size: 16px;
    line-height: 40px;
    padding: 0 10px;
    border: 1px solid #CCC;
    color: #555;
    border-radius: 0; 
}

select:not([multiple]) {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-position: right 50%;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAMCAYAAABSgIzaAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDZFNDEwNjlGNzFEMTFFMkJEQ0VDRTM1N0RCMzMyMkIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDZFNDEwNkFGNzFEMTFFMkJEQ0VDRTM1N0RCMzMyMkIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NkU0MTA2N0Y3MUQxMUUyQkRDRUNFMzU3REIzMzIyQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0NkU0MTA2OEY3MUQxMUUyQkRDRUNFMzU3REIzMzIyQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuGsgwQAAAA5SURBVHjaYvz//z8DOYCJgUxAf42MQIzTk0D/M+KzkRGPoQSdykiKJrBGpOhgJFYTWNEIiEeAAAMAzNENEOH+do8AAAAASUVORK5CYII=);
    padding: 0 1.5em 0 .5em;
    padding-right: 1.5em
}


.inputfile {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 40px;
    margin-bottom: 0;
    /* width: 300px; */
}

.inputfile input[type="file"] {
    position: relative;
    /* font-size: 15px !important; */
    z-index: 2;
    width: 100%;
    height: 40px;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

.inputfile span {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: 40px;
    padding: 0 0.9375rem;
    line-height: 40px;
    color: #b8bdc4;
    color: #555;
    border: 1px solid #CCC;
    cursor: pointer;
}

.inputfile span:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    display: block;
    height: 38px;
    padding: 0rem 0.9375rem;
    line-height: 38px;
    text-transform: uppercase;
    color: #ffffff;
    content: "Browse";
    cursor: pointer;
    background: #EDEDED;
    color: #004e74;
    border-left: 1px solid #CCC;
    /* border-radius: 0 0.375rem 0.375rem 0; */
    content: "Seleziona"
}






textarea {
    width: 100%;
    min-height: 30rem;
    font-family: "Lucida Console", Monaco, monospace;
    font-size: 0.8rem;
    line-height: 1.2;
  }

/* input[type="text"]:after {
    content: '✔';
    color: green;
    position: absolute;
    right: 0;
    top: 0;
    display: block;
} */
input[type="button"], input[type="submit"] {
    display: block;
    height: 40px;
    border: 1px solid #CCC;
    border-radius: 0;
    background: #EFEFEF;
    color: #004e74;
    font-size: 18px;
    line-height: 40px;
    transition: 0.3s;
    cursor: pointer;
}

input[type="button"]:hover, input[type="submit"]:hover {
    background: #dcdcdc;
}

textarea:focus, input:focus{
    outline: none;
}

.easy-autocomplete-container ul li {
    height: 40px !important;
    line-height: 30px !important;
    font-size: 20px !important;
    text-transform: uppercase;
}

.easy-autocomplete.ok ~ .icon:before {
    content: "✔";
    position: absolute;
    top: 30px;
    right: 15px;
    color: green;
    font-size: 170%;
} 

.risultati {
    width: 100%;
    padding: 20px;
    background: #EDEDED;
}

.risultati table {
    margin-top: 10px;
    width: 100%;
    /* font-size: 14px; */
}

.risultati table tr {
    margin: 0;
}

.risultati table th, .risultati table td {
    /* border: 1px solid #CCC; */
    padding: 5px;
    margin: 0;
}

.risultati table th {
    text-align: left;
    /* border-right: none; */
}

.risultati table tr.ok {
    background-color: lightgreen;
}

.risultati table tr.no {
    background-color: lightsalmon;
}

.risultati table tr.evdsl td.cop_evdsl, 
.risultati table tr.ftth td.cop_ftth,
.risultati table tr.of_attivo td.cop_of {
    background-color: lightgreen;
}

.featherlight .featherlight-content {
    width: 80%;
}



@media screen and (min-width: 1024px) {
    #page {
        padding: 30px 0;
    }
}

.copertura {
    position:relative;
}

.copertura .form, .copertura .loader, .copertura .risultati {
    position: absolute;
    top: 0;
    left: 0;
}

.lds-ellipsis {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
}
.lds-ellipsis div {
    position: absolute;
    top: 33px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #004e74;
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
    left: 8px;
    animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
    left: 8px;
    animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
    left: 32px;
    animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
    left: 56px;
    animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}
@keyframes lds-ellipsis3 {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@keyframes lds-ellipsis2 {
    0% {
        transform: translate(0, 0);
    }
    100% {
        transform: translate(24px, 0);
    }
}



#gmap {
    width: 100%;
    height: 500px;
    margin-top: 30px;
    background-color: grey;
    margin-bottom: 40px;
}


.pac-card {
    margin: 10px 10px 0 0;
    border-radius: 2px 0 0 2px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    outline: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
    background-color: #fff;
}

#pac-container {
    padding-bottom: 12px;
    margin-right: 12px;
}

.pac-controls {
    display: inline-block;
    padding: 5px 11px;
}

.pac-controls label {
    font-family: Roboto;
    font-size: 13px;
    font-weight: 300;
}

#pac-input {
    background-color: #fff;
    font-size: 16px;
    font-weight: 300;
    padding: 5px 11px 5px 13px;
    text-overflow: ellipsis;
    width: calc(100% - 60px);
    margin: 0 30px 50px 30px;
    left: 0 !important;
}

#pac-input:focus {
    border-color: #4d90fe;
}