﻿/*https://energia.regione.emilia-romagna.it/costruire-riqualificare/temi/efficienza-energetica-negli-edifici/efficienza-energetica-negli-edifici*/
#header-banner {
    font-weight: 600;
    padding: 1.3rem 0;
    z-index: 500;
    position: relative;
    background-color: #0F2A48 !important;
    color: #eee;
}

#portal-breadcrumbs {
    background: #eee;
    background-image: initial;
    background-position-x: initial;
    background-position-y: initial;
    background-size: initial;
    background-repeat-x: initial;
    background-repeat-y: initial;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: rgb(238, 238, 238);
    padding: 0;
}

body {
    font-family: "Titillium Web","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 18px;
    line-height: 1.5;
}

.header-banner-inner {
    max-width: 1170px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
}

    .header-banner-inner .header-banner-owner {
        flex: 1 1;
    }

#header-banner:not(.orma-banner) a, #header-banner:not(.orma-banner) .header-banner-owner a, #header-banner:not(.orma-banner) .header-banner-second-link a, #header-banner:not(.orma-banner) .header-banner-login-button a {
    text-decoration: none;
    font-size: 18px;
}

.portal-header {
    margin-top: 0;
    margin-bottom: 0;
    max-width: 1170px;
    padding: 1.8rem 0;
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    z-index: 300;
    position: relative;
}

    .portal-header:before, #portal-header:after {
        content: ' ';
        display: table;
    }

    .portal-header:after {
        clear: both;
    }

    .portal-header:before, #portal-header:after {
        content: ' ';
        display: table;
    }

    .portal-header:after {
        clear: both;
    }

    .portal-header:before, #portal-header:after {
        content: ' ';
        display: table;
    }


#portal-logo {
    text-decoration: none;
    margin: 0 auto 0 0;
    display: inline-flex;
    flex-flow: row nowrap;
    align-items: center;
    color: #eee;
}

    #portal-logo img {
        margin-right: 2rem;
        height: 100%;
    }

    #portal-logo span {
        border-bottom: 3px solid rgba(0,0,0,0);
        font-size: 3.4rem;
        font-weight: 600;
        line-height: 1.3;
        white-space: nowrap;
    }

    #portal-logo:hover {
        text-decoration: none;
    }

#portal-mainnavigation {
    position: relative;
    color: #fff;
    background-color: #16395E; /* Background stays here */
    width: 100%;
    padding: 25px 0 0 0;
}



    #portal-mainnavigation ul# portal-globalnav li a.menuTabLink {
        display: block;
        position: relative;
        padding-right: 20px;
        border: 0;
    }

    #portal-mainnavigation .globalnavWrapper:before, #portal-mainnavigation .globalnavWrapper:after {
        content: ' ';
        display: table;
    }

    #portal-mainnavigation ul#portal-globalnav {
        display: flex;
        justify-content: center;
        padding: 0;
    }

    #portal-mainnavigation ul#portal-globalnav {
        margin: 0;
        display: flex;
        padding: 1.2rem 0;
    }

    #portal-mainnavigation ul#portal-globalnav {
        display: flex;
        justify-content: center;
        padding: 0;
    }

    #portal-mainnavigation ul#portal-globalnav {
        margin: 0;
        display: flex;
        padding: 1.2rem 0;
    }

        #portal-mainnavigation ul#portal-globalnav li a.menuTabLink {
            display: block;
            position: relative;
            padding-right: 20px;
            border: 0;
        }

        #portal-mainnavigation ul#portal-globalnav > li > a {
            font-size: 1.95rem;
            font-weight: 600;
            display: block;
            border-bottom: 1px solid transparent;
        }

        #portal-mainnavigation ul#portal-globalnav > li > a {
            color: #fff;
        }

.breadcrumbs-container {
    width: 1170px;
}

.hiddenStructure {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

#portal-breadcrumbs ol {
    font-size: 0.95em;
    font-weight: 300;
    padding: 10px 0px;
    margin: 0;
}

    #portal-breadcrumbs ol li#breadcrumbs-home, body.template-newsitem_view #viewlet-above-content #portal-breadcrumbs ol li#breadcrumbs-home {
        width: auto;
        padding: 0;
        text-indent: 0;
        height: 17px;
    }

        #portal-breadcrumbs ol li#breadcrumbs-home a, body.template-newsitem_view #viewlet-above-content #portal-breadcrumbs ol li#breadcrumbs-home a {
            padding: 0 0 0 1.6em;
            align-items: center;
        }

        #portal-breadcrumbs ol li#breadcrumbs-home a {
            display: inline-flex;
            width: 1.125em;
            padding-left: 1.5em;
            padding-right: 0;
            overflow: hidden;
            height: 100%;
            position: relative;
        }

            #portal-breadcrumbs ol li#breadcrumbs-home a .fa-home {
                position: absolute;
                top: calc(50% - 0.5em);
                left: 0;
            }

.svg-inline--fa {
    display: inline-block;
    font-size: inherit;
    height: 1em;
    overflow: visible;
    vertical-align: -0.125em;
}

#portal-breadcrumbs ol li, body.template-newsitem_view #viewlet-above-content #portal-breadcrumbs ol li {
    display: inline-block;
    padding: 0;
}

    #portal-breadcrumbs ol li a {
        color: #000;
    }

        #portal-breadcrumbs ol li a:hover {
            color: black;
            border-color: #eee;
        }

    #portal-breadcrumbs ol li:not(:last-child)::after, body.template-newsitem_view #viewlet-above-content #portal-breadcrumbs ol li:not(:last-child)::after {
        display: inline-block;
        content: '/';
    }


.user-action-wrapper {
    padding-top: 15px;
}

.btn-logout {
    margin-left: 10px;
    margin-top: 12px;
    font-size: 11pt;
    text-decoration: none;
    background-color: #0F2A48 !important;
    border-color: #eee;
}

.user-anchor {
    color: #eee;
    display: -webkit-box;
    text-decoration: none;
}

    .user-anchor:hover,
    .user-anchor:focus {
        text-decoration: underline;
        color: #eee;
    }


/*NAVBAR*/

/*    navbar dro down menu*/

.dropbtn.selected {
    background-color: #d85650 !important;
}

.dropbtn {
    border-radius: 0px;
    font-size: 15px;
    border: none;
}

.dropdown {
    position: relative;
    display: block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    border-radius: 4px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    top: 100%; /* Exactly below the parent */
    left: 0%;
    width: 100%; /* Same width as parent dropdown */
}

    .dropdown-content a {
        color: black;
        padding: 12px 16px;
        border-radius: 4px;
        text-decoration: none;
        display: block;
        white-space: nowrap;
    }

        .dropdown-content a:hover {
            background-color: #ddd;
            border-radius: 4px;
        }

.dropdown:hover .dropdown-content {
    display: block;
}

.dropdown > a {
    margin-bottom: 0px !important;
}

.navbar-toggle-blue {
    color: white;
}

.btn-nav-blue:focus, .navbar-default
.btn-nav-blue {
    background-color: #154e9d;
    color: white;
}

.btn-nav-blue:hover {
    background-color: white;
    color: #154e9d;
}

.navbar {
    border: 0;
    border-radius: 0;
    font-size: 14px;
    margin-bottom: 0px;
    color: white;
    min-height: 0px;
}

    .navbar .navbar-minimize {
        float: left;
    }

        .navbar .navbar-minimize .btn {
            margin: 18px 3px;
        }

        .navbar .navbar-minimize .ti-more-alt {
            display: inline-block;
            min-width: 14px;
            -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
            transform: rotate(90deg);
        }

        .navbar .navbar-minimize .btn-simple {
            margin: 20px 3px;
            font-size: 14px;
        }

    .navbar .navbar-brand {
        font-weight: 600;
        margin: 12px 0px;
        padding: 15px 15px;
        font-size: 20px;
    }

    .navbar .navbar-nav > li > a {
        line-height: 1.42857;
        margin: 0px;
        padding: 12px 25px;
        color: white;
        font-weight: 600;
    }

        .navbar .navbar-nav > li > a i,
        .navbar .navbar-nav > li > a p {
            display: inline-block;
            margin: 0;
        }

        .navbar .navbar-nav > li > a i {
            position: relative;
            top: 1px;
        }

        .navbar .navbar-nav > li > a.btn {
            margin: 17px 3px;
            padding: 7px 18px;
        }

    .navbar .btn-simple {
        font-size: 16px;
    }

    .navbar.navbar-absolute {
        position: absolute;
        width: 100%;
        z-index: 1030;
    }

.navbar-fixed {
    position: fixed;
    z-index: 1032;
    right: 0;
    width: 100%;
}

    .navbar-fixed ~ .main-panel > .content {
        padding-top: 95px;
        min-height: calc(100% - 71px);
    }

.navbar-nav > li > .dropdown-menu {
    border-radius: 6px;
    margin-top: -5px;
}

.navbar-transparent .navbar-brand, [class*="navbar-ct"] .navbar-brand {
    opacity: 0.9;
    filter: alpha(opacity=90);
}

    .navbar-transparent .navbar-brand:focus, .navbar-transparent .navbar-brand:hover, [class*="navbar-ct"] .navbar-brand:focus, [class*="navbar-ct"] .navbar-brand:hover {
        background-color: transparent;
        opacity: 1;
        filter: alpha(opacity=100);
    }

    .navbar-transparent .navbar-brand:not([class*="text"]), [class*="navbar-ct"] .navbar-brand:not([class*="text"]) {
        color: #050505;
    }

.navbar-transparent .navbar-nav > li > a:not(.btn), [class*="navbar-ct"] .navbar-nav > li > a:not(.btn) {
    color: #050505;
    border-color: #050505;
    opacity: 0.8;
    filter: alpha(opacity=80);
}

.navbar-transparent .navbar-nav > .active > a:not(.btn),
.navbar-transparent .navbar-nav > .active > a:hover:not(.btn),
.navbar-transparent .navbar-nav > .active > a:focus:not(.btn),
.navbar-transparent .navbar-nav > li > a:hover:not(.btn),
.navbar-transparent .navbar-nav > li > a:focus:not(.btn), [class*="navbar-ct"] .navbar-nav > .active > a:not(.btn),
[class*="navbar-ct"] .navbar-nav > .active > a:hover:not(.btn),
[class*="navbar-ct"] .navbar-nav > .active > a:focus:not(.btn),
[class*="navbar-ct"] .navbar-nav > li > a:hover:not(.btn),
[class*="navbar-ct"] .navbar-nav > li > a:focus:not(.btn) {
    background-color: transparent;
    border-radius: 3px;
    color: #050505;
    opacity: 1;
    filter: alpha(opacity=100);
}

.navbar-transparent .navbar-nav .nav > li > a.btn:hover, [class*="navbar-ct"] .navbar-nav .nav > li > a.btn:hover {
    background-color: transparent;
}

.navbar-transparent .navbar-nav > .dropdown > a .caret,
.navbar-transparent .navbar-nav > .dropdown > a:hover .caret,
.navbar-transparent .navbar-nav > .dropdown > a:focus .caret, [class*="navbar-ct"] .navbar-nav > .dropdown > a .caret,
[class*="navbar-ct"] .navbar-nav > .dropdown > a:hover .caret,
[class*="navbar-ct"] .navbar-nav > .dropdown > a:focus .caret {
    border-bottom-color: #050505;
    border-top-color: #050505;
}

.navbar-transparent .navbar-nav > .open > a,
.navbar-transparent .navbar-nav > .open > a:hover,
.navbar-transparent .navbar-nav > .open > a:focus, [class*="navbar-ct"] .navbar-nav > .open > a,
[class*="navbar-ct"] .navbar-nav > .open > a:hover,
[class*="navbar-ct"] .navbar-nav > .open > a:focus {
    background-color: transparent;
    color: #050505;
    opacity: 1;
    filter: alpha(opacity=100);
}

.navbar-transparent .btn-default, [class*="navbar-ct"] .btn-default {
    color: #050505;
    border-color: #050505;
}

    .navbar-transparent .btn-default.btn-fill, [class*="navbar-ct"] .btn-default.btn-fill {
        color: #9A9A9A;
        background-color: #050505;
        opacity: 0.9;
        filter: alpha(opacity=90);
    }

        .navbar-transparent .btn-default.btn-fill:hover,
        .navbar-transparent .btn-default.btn-fill:focus,
        .navbar-transparent .btn-default.btn-fill:active,
        .navbar-transparent .btn-default.btn-fill.active,
        .navbar-transparent .open .dropdown-toggle.btn-fill.btn-default, [class*="navbar-ct"] .btn-default.btn-fill:hover,
        [class*="navbar-ct"] .btn-default.btn-fill:focus,
        [class*="navbar-ct"] .btn-default.btn-fill:active,
        [class*="navbar-ct"] .btn-default.btn-fill.active,
        [class*="navbar-ct"] .open .dropdown-toggle.btn-fill.btn-default {
            border-color: #050505;
            opacity: 1;
            filter: alpha(opacity=100);
        }

.navbar-transparent .dropdown-menu .divider {
    background-color: rgba(255, 255, 255, 0.2);
}



.navbar-default .brand {
    color: #0a0a0a !important;
}

.navbar-default .navbar-nav > li > a:not(.btn) {
    font-size: 1.95rem;
    font-weight: 600;
    color: white;
}

    .navbar-default .navbar-nav > .active > a,
    .navbar-default .navbar-nav > .active > a:not(.btn):hover,
    .navbar-default .navbar-nav > .active > a:not(.btn):focus,
    .navbar-default .navbar-nav > li > a:not(.btn):hover,
    .navbar-default .navbar-nav > li > a:not(.btn):focus {
        background-color: transparent;
        border-radius: 3px;
        /*    color: #0a0a0a;*/
        color: white;
        opacity: 1;
        filter: alpha(opacity=100);
    }

.navbar-default .navbar-nav > .dropdown > a:hover .caret,
.navbar-default .navbar-nav > .dropdown > a:focus .caret {
    border-bottom-color: #0a0a0a;
    border-top-color: #0a0a0a;
}

.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
    background-color: transparent;
    color: #0a0a0a;
}

.navbar-default .navbar-nav .navbar-toggle:hover, .navbar-default .navbar-nav .navbar-toggle:focus {
    background-color: transparent;
}

.navbar-default:not(.navbar-transparent) .btn-neutral,
.navbar-default:not(.navbar-transparent) .btn-neutral:hover,
.navbar-default:not(.navbar-transparent) .btn-neutral:active {
    color: #9A9A9A;
}

.navbar-form {
    -webkit-box-shadow: none;
    box-shadow: none;
}

    .navbar-form .input-group {
        margin: 0;
    }

.navbar-ct-primary {
    background-color: #8ECFD5;
}

.navbar-ct-info {
    background-color: #7CE4FE;
}

.navbar-ct-success {
    background-color: #8EF3C5;
}

.navbar-ct-warning {
    background-color: #FFE28C;
}

.navbar-ct-danger {
    background-color: #FF8F5E;
}

.navbar-transparent {
    padding-top: 15px;
    background-color: transparent;
    border-bottom: 1px solid transparent;
}

    .navbar-transparent .navbar-brand {
        color: #050505;
        opacity: 0.9;
        filter: alpha(opacity=90);
    }

        .navbar-transparent .navbar-brand:focus, .navbar-transparent .navbar-brand:hover {
            background-color: transparent;
            opacity: 1;
            filter: alpha(opacity=100);
        }

    .navbar-transparent .navbar-nav > li > a:not(.btn) {
        color: #050505;
        border-color: #050505;
        opacity: 0.8;
        filter: alpha(opacity=80);
    }

    .navbar-transparent .navbar-nav > .active > a:not(.btn),
    .navbar-transparent .navbar-nav > .active > a:hover:not(.btn),
    .navbar-transparent .navbar-nav > .active > a:focus:not(.btn),
    .navbar-transparent .navbar-nav > li > a:hover:not(.btn),
    .navbar-transparent .navbar-nav > li > a:focus:not(.btn) {
        background-color: transparent;
        border-radius: 3px;
        color: #050505;
        opacity: 1;
        filter: alpha(opacity=100);
    }

    .navbar-transparent .navbar-nav .nav > li > a.btn:hover {
        background-color: transparent;
    }

.navbar-toggle {
    margin-top: 19px;
    margin-bottom: 19px;
    border: 0;
}

    .navbar-toggle .icon-bar {
        background-color: #050505;
    }

    .navbar-toggle .navbar-collapse,
    .navbar-toggle .navbar-form {
        border-color: transparent;
    }

    .navbar-toggle.navbar-default .navbar-toggle:hover,
    .navbar-toggle.navbar-default .navbar-toggle:focus {
        background-color: transparent;
    }


/*#region New Front-End */

#portal-top {
    background-color: #16395E;
}

.header-banner-owner a {
    color: #eee !important;
}

    .header-banner-owner a:hover, .header-banner-owner:hover {
        text-decoration-style: wavy !important;
    }


#portal-footer-wrapper {
    background-color: #16395E;
}

    #portal-footer-wrapper a {
        color: #eee;
        text-decoration: underline;
    }

        #portal-footer-wrapper a:hover,
        #portal-footer-wrapper a:focus {
            color: #eee;
            background-color: transparent;
        }

.nav .open > a, .nav .open > a:focus, .nav .open > a:hover {
    background-color: #0F2A48;
}

#gridContainer {
    max-width: 100% !important;
}

/* GLOBALNAV WRAPPER - Remove conflicting flex */
.globalnavWrapper {
    border-top: 1px solid #c5c7c9;
    border-radius: 0px;
    background-color: #16395E; /* Move background here if needed */
    display: flex;
    padding: 10px 15px;
    width: 90%;
    justify-content: center;
    margin: 0 auto;
}

/* CUSTOM FLEX NAVBAR */
.custom-flex-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0;
    margin: 0;
}


    /* Remove Bootstrap's float */

    .custom-flex-nav > li {
        float: none !important;
        flex: 0 1 auto;
        min-width: 140px;
        text-align: center;
        position: relative;
    }

    /* Dropdown container behaves properly in flex */
    .custom-flex-nav .dropdown {
        position: relative;
        display: block; /* Changed from inline-block */
    }

    .custom-flex-nav > li > a {
        display: block;
        padding: 10px 15px;
        font-weight: 600;
        color: white;
        text-decoration: none;
    }

    /* Dropdown menu styling */
    .custom-flex-nav .dropdown-content {
        display: none;
        position: absolute;
        background-color: #f1f1f1;
        min-width: 140px;
        border-radius: 4px;
        box-shadow: 0px 8px 16px rgba(0,0,0,0.2);
        z-index: 1000;
        top: 100%;
        left: 0;
    }

        .custom-flex-nav .dropdown-content a {
            color: black;
            padding: 12px 16px;
            display: block;
            text-decoration: none;
        }

    .custom-flex-nav .dropdown:hover .dropdown-content {
        display: block;
    }

.sidebar-normal {
    font-size: 14px;
}

.link-header,
.link-header:hover,
.link-header *:hover {
    text-decoration: none !important;
    border-bottom: none !important;
    color: white !important;
}

.footer-section-title > abbr {
    border-bottom: none;
}

.form-group {
    position: relative;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: break-word;
}

.property,
.value,
.classe-energetica {
    white-space: normal;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
}

.dropdown-content-small {
    top: 100%;
    left: 25%;
    bottom: 0%;
    position: absolute;
    width: 50%;
}

.table-custom {
    font-size: 1.4rem !important;
}

/* RESPONSIVE */
@media (max-width: 1440px) {
    .custom-flex-nav > li {
        flex: 0 0 calc(20% - 20px);
    }
}

@media (max-width: 810px) {
    .custom-flex-nav > li {
        flex: 0 0 100%;
    }

    #portal-logo > span {
        display: none;
    }

    #portal-logo > img {
        width: 80px;
        height: 80px;
    }
}

@media (max-width: 620px) {
    .user-role {
        display: none;
    }

    #portal-logo > img {
        width: 40px;
        height: 40px;
    }

    .user-action-wrapper {
        padding-top: 0px;
    }

    .btn-custom {
        margin: 10px 10px 10px 10px;
        white-space: normal;
        word-break: break-word;
        overflow-wrap: break-word;
    }

    .btn-actions {
        min-width: 200px;
    }

    .property {
        text-align: left;
    }

    .table-custom {
        font-size: revert !important;
    }
}




/*#endregion */
