html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 75px;
    font-family: 'Lato', sans-serif;
}

@media (max-width: 992px) {
    body {
        margin-bottom: 225px;
    }
}

.navbar-brand {
    font-size: 34px;  /* overwrite */
    height: 80px;  /* overwrite */
    padding: 0;  /* overwrite */
    letter-spacing: -1px;
    display: flex;
    align-items: center;
}

.navbar-brand > img {
    margin: 10px 20px;
}

.navbar-toggle-header {
    margin-top: 23px;
}

#navbar-links {
    font-size: 18px;
    font-weight: bold;
}

@media (min-width: 768px) {
    #navbar-links .navbar-nav > li > a {
        padding-top: 37px;  /* overwrite */
        padding-bottom: 23px;  /* overwrite */
    }
    #navbar-links .navbar-right {
        margin-right: 0;  /* overwrite */
    }
}

.navbar-default .navbar-nav > li > a {
    color: #666;
}

.navbar-default #navbar-links .navbar-nav > li > a:hover,
.navbar-default #navbar-links .navbar-nav > li > a:focus,
.navbar-default #navbar-links .navbar-nav > .active > a,
.navbar-default #navbar-links .navbar-nav > .active > a:hover,
.navbar-default #navbar-links .navbar-nav > .active > a:focus {
    color: #c00;  /* overwrite */
    background: inherit;  /* overwrite */
}

.nav .dropdown-menu {
    font-size: 16px;
    font-weight: bold;
    background-color: #F8F8F8;
    border-color: #e7e7e7;
}

.nav .dropdown-menu > li > a {
    padding-top: 5px;
    padding-bottom: 5px;
}

.nav .dropdown-menu > li > a:hover,
.nav .dropdown-menu > li > a:focus,
.nav .dropdown-menu > .active > a,
.nav .dropdown-menu > .active > a:hover,
.nav .dropdown-menu > .active > a:focus {
    color: #c00;  /* overwrite */
    background: inherit;  /* overwrite */
}

.navbar-category {
    margin: 20px auto;
    text-align: left;
}

@media (min-width: 768px) {
    .navbar-category {
        display: inline-block;
    }
}

.navbar-category .navbar-text {
    font-weight: bold;
    font-size: 18px;
    margin: 12px 15px;
}

#navbar-categories li > a {
    padding: 15px 12px;
    font-weight: bold;
    font-size: 14px;
    text-align: center;
    letter-spacing: -1px;
}

#navbar-categories li > a > span {
    width: 30px;
    height: 30px;
    background-size: cover;
    display: block;
    margin: 0 auto 10px;
}

.navbar-default #navbar-categories .navbar-nav > li > a:hover,
.navbar-default #navbar-categories .navbar-nav > li > a:focus,
.navbar-default #navbar-categories .navbar-nav > .active > a,
.navbar-default #navbar-categories .navbar-nav > .active > a:hover,
.navbar-default #navbar-categories .navbar-nav > .active > a:focus {
    color: #c00;  /* overwrite */
    background: inherit;  /* overwrite */
}

@media (min-width: 768px) {
    .navbar-collapse {
        padding-left: 0;  /* overwrite */ /* annulla i bordi sx-dx del nav categorie */
        padding-right: 0;  /* overwrite */ /* annulla i bordi sx-dx del nav categorie */
    }
}

.counter {
    font-size: 20px;
}

@media (max-width: 992px) {
    .counter {
        margin-bottom: 20px;
    }
}

.counter > span {
    font-size: 32px;
    color: #c00;
    margin-left: 5px;
    margin-right: 5px;
}

.form-control-no-highlight:focus {
    border-color: #ccc;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

#search-term input::-webkit-input-placeholder { color: #c00; }
#search-term input::-moz-placeholder { color: #c00; }
#search-term input:-ms-input-placeholder { color: #c00; }

#search-term input:focus::-webkit-input-placeholder { color: #c99; }
#search-term input:focus::-moz-placeholder { color: #c99; }
#search-term input:focus:-ms-input-placeholder { color: #c99; }

#search-term input { color: #c00; }

.mission {
    margin: 40px 10%;
    font-size: 24px;
    font-style: italic;
    text-align: center;
    line-height: 1.45;
}

.index-search {
    background: url('/img/search-background.jpg') center;
    background-size: cover;
    max-width: 720px;
    margin: 65px auto 75px;
    padding: 30px
}

@media (max-width: 768px) {
    .index-search {
        margin-top: 40px;
        margin-bottom: 40px;
    }
}

.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    min-height: 51px;
    background-color: #f8f8f8;
    border-top: 1px solid #e7e7e7;
}

.footer-logo {
    margin: 10px 15px;
}

.footer-links {
    padding: 14px;
    text-align: right;
}

.footer-links > a, .footer-links > span {
    color: #777;
    font-size: 16px;
    font-weight: bold;
    margin: auto 10px;
}

.footer-links a:hover,
.footer-links a:focus {
    color: #c00 !important;
    text-decoration: none;
}

@media (max-width: 992px) {
    .footer .row > div {
        text-align: center !important;
    }
    .footer-links a, .footer-links span {
        display: block;
        margin: 10px;
    }
}

.external-link {
    background: linear-gradient(transparent, transparent), url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210%22%20height%3D%2210%22%3E%3Cg%20transform%3D%22translate%28-826.429%20-698.791%29%22%3E%3Crect%20width%3D%225.982%22%20height%3D%225.982%22%20x%3D%22826.929%22%20y%3D%22702.309%22%20fill%3D%22%23fff%22%20stroke%3D%22%2306c%22%2F%3E%3Cg%3E%3Cpath%20d%3D%22M831.194%20698.791h5.234v5.391l-1.571%201.545-1.31-1.31-2.725%202.725-2.689-2.689%202.808-2.808-1.311-1.311z%22%20fill%3D%22%2306f%22%2F%3E%3Cpath%20d%3D%22M835.424%20699.795l.022%204.885-1.817-1.817-2.881%202.881-1.228-1.228%202.881-2.881-1.851-1.851z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat right center;
    padding-right: 13px;
}

.wordcloud {
    color: #337ab7;
    background-color: #FCFCFC;
    text-align: center;
    word-spacing: 3px;
}

.wordcloud-index {
    max-width: 944px;
    margin: 65px auto 20px;
}

@media (max-width: 768px) {
    .wordcloud-index {
        margin-top: 40px;
        margin-bottom: 40px;
    }
}

.wordcloud-company {
    text-align: center;
    display:table;
    width: 100%;
    height: 201px;
    line-height: 1.25;
    background-color: white;
}

.category-name {
    font-family: 'Lato', sans-serif;
    font-size: 32px;
    text-align: center;
    font-weight: bold;
}

.category-description {
    font-family: 'Lato', sans-serif;
    font-size: 19px;
    font-style: italic;
    text-align: center;
    margin-bottom: 20px;
}

#navbar-categories a .commercio-e-riparazione { background-image: url("/img/categories/commerce.svg"); }
#navbar-categories a:hover .commercio-e-riparazione ,
#navbar-categories a:focus .commercio-e-riparazione ,
#navbar-categories li.active .commercio-e-riparazione { background-image: url("/img/categories/commerce-active.svg"); }

#navbar-categories a .fabbricazione { background-image: url("/img/categories/fabrication.svg"); }
#navbar-categories a:hover .fabbricazione,
#navbar-categories a:focus .fabbricazione,
#navbar-categories li.active .fabbricazione { background-image: url("/img/categories/fabrication-active.svg"); }

#navbar-categories a .news-e-blog { background-image: url("/img/categories/news.svg"); }
#navbar-categories a:hover .news-e-blog,
#navbar-categories a:focus .news-e-blog,
#navbar-categories li.active .news-e-blog { background-image: url("/img/categories/news-active.svg"); }

#navbar-categories a .telecomunicazioni-e-informatica { background-image: url("/img/categories/telecommunication.svg"); }
#navbar-categories a:hover .telecomunicazioni-e-informatica,
#navbar-categories a:focus .telecomunicazioni-e-informatica,
#navbar-categories li.active .telecomunicazioni-e-informatica { background-image: url("/img/categories/telecommunication-active.svg"); }

.page-title {
    margin: 20px auto;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
    text-align: center;
    font-size: 36px;
    font-weight: bold;
    /*text-transform: uppercase;*/
    width: 90%;
}

.observatory-text {
    font-size: 16px;
    line-height: 1.6;
}

.observatory-image {
    margin-top: 25px
}

.observatory-image > img {
    width: 75%;
}

.observatory-image > figcaption {
    margin: 10px auto 20px;
    font-style: italic;
    font-variant: small-caps;
}

.panel-faq .panel-body {
    padding-left: 35px;
    padding-right: 35px;
    font-size: 16px;
}

.company-detail {
    font-size: 16px;
}

.domain-table {
    font-size: 16px;
}

.domain-table td {
    vertical-align: middle !important;
}

.g-recaptcha > div > div {
    margin: 0 auto;
}

#initial-domain {
    height: 450px;
    line-height: 400px;
    text-align: center;
}

#italian-website-category-pie {
    height: 400px;
    line-height: 300px;
    text-align: center;
}

#italian-website-distribution-map {
    height: 450px;
    line-height: 400px;
    text-align: center;
}

#italian-company-distribution-map {
    height: 500px;
    line-height: 500px;
    text-align: center;
}

#companies-by-category-chart {
    height: 500px;
    line-height: 500px;
    text-align: center;
}

#monthly-categorized-domain,
#daily-categorized-domain,
#monthly-deleted-domain,
#daily-deleted-domain {
    height: 500px;
    line-height: 500px;
    text-align: center;
}

.carousel-control {
    width: 5%;
}

.carousel-control.left, .carousel-control.right {
    background-image: none;
    color: black;
}

.carousel-indicators {
    bottom: 5px;
}

.carousel-indicators li {
    border: 1px solid #666;
}

.carousel-indicators li.active {
    background-color: #666;
}

.carousel-inner .item {
    height: 360px;
}

.carousel-inner .item h2 {
    font-size: 26px;
    font-weight: bold;
}

.carousel-inner .item p {
    font-size: 16px;
    text-align: justify;
}

.faq-term {
    font-variant: small-caps;
    font-style: italic;
    margin-right: 2px;
}

.signal-domain-error {
    float: left !important;
    display: none !important;
    margin-bottom: 0 !important;
    padding: 6px 12px !important;
    text-align: left !important;
}

.tooltip.in {
    opacity: 1;
}

.tooltip.bottom .tooltip-arrow {
    border-bottom-color: #777;
}

.tooltip-inner {
    font-family: 'Lato', sans-serif;
    background-color: #f8f8f8;
    border: 1px solid #e7e7e7;
    color: #666;
    padding: 10px;
    font-size: 14px;
}

.no-results {
    font-size: 16px;
    text-align: center;
    margin: 20px 0 40px;
}

.result {
    margin-top: 10px;
    margin-bottom: 10px;
}

.result:hover {
    background-color: #f7f7f7;
    border-radius: 2px;
}

.result h3 {
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 0;
}

.result h4 {
    font-size: 17px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.result h5 {
    font-size: 14px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.nav-pills > li > a {
    font-size: 18px
}

.nav-stats {
    margin: 20px auto;
}

.category-list {
    font-size: 14px;
    margin: 0 0 10px;
    line-height: 20px;
}

.radio-inline-owner, .radio-inline-is-ict {
    font-weight: 700;
    padding-left: 0;
}

.dataTables_paginate {
    text-align: center !important;
    margin-top: 20px !important;
}

.paginate-total {
    display: inline-block;
    padding: 7px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    border: none;
    border-radius: 4px;
}


.spinner, .spinner:before, .spinner:after {
    width: 8px;
    height: 8px;
    background-color: black;
    border-radius: 4px;
    margin-top: 16px;
    margin-bottom: 16px;
}

.spinner {
    display: inline-block;
    position: relative;
}
.spinner:before, .spinner:after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
}
.spinner:before {
    left: -12px;
}
.spinner:after {
    left: 12px;
}

@-webkit-keyframes bounce-middle {
    0%   { height: 8px;  margin-top: 16px; margin-bottom: 16px; }
    30%  { height: 40px; margin-top: 0px;  margin-bottom: 0px;  }
    60%  { height: 8px;  margin-top: 16px; margin-bottom: 16px; }
    100% { height: 8px;  margin-top: 16px; margin-bottom: 16px; }
}
@keyframes bounce-middle {
    0%   { height: 8px;  margin-top: 16px; margin-bottom: 16px; }
    30%  { height: 40px; margin-top: 0px;  margin-bottom: 0px;  }
    60%  { height: 8px;  margin-top: 16px; margin-bottom: 16px; }
    100% { height: 8px;  margin-top: 16px; margin-bottom: 16px; }
}

.spinner-bounce-middle {
    -webkit-animation: bounce-middle 1s ease-in-out 0.1s infinite;
    animation: bounce-middle 1s ease-in-out 0.1s infinite;
}
.spinner-bounce-middle:before, .spinner-bounce-middle:after {
    top: 50%;
    -webkit-transform: translateY(-20px) translateZ(0);
    transform: translateY(-20px) translateZ(0);
}
.spinner-bounce-middle:before {
    -webkit-animation: bounce-middle 1s ease-in-out 0s infinite;
    animation: bounce-middle 1s ease-in-out 0s infinite;
}
.spinner-bounce-middle:after {
    -webkit-animation: bounce-middle 1s ease-in-out 0.2s infinite;
    animation: bounce-middle 1s ease-in-out 0.2s infinite;
}

.faq-section {
    margin-left: 20px;
}

.events-row {
    border-top: 1px solid #666
}

.pagination-row > div {
    margin-top: 20px;
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .pagination-row > div {
        text-align: center;
    }
}

.pagination {
    margin-top: 0;
    margin-bottom: 0;
}

.thumbnail:last-child {
    margin-bottom: 0;
}

.search-term {
    margin-bottom: 20px;
}

.not-available-region-legend {
    margin: 15px;
    margin-bottom: 0;
    text-align: center;
    font-size: 14px;
}

.duplicate-company-legend {
    margin: 15px;
    text-align: center;
    font-size: 14px;
}
