﻿#pre-header {
    height: 42px;
}

#pre-header {
    font-size: 0.9em !important;
    height: 2.9em !important;
}

#main-header {
    color: #455b71;
    position: relative;
    z-index: 1;
    width: 100%;
    box-shadow: 0 .1rem 1.55rem rgba(0,0,0,.1);
}

.section-hero-left.gray {
    background: #51758dd6 !important;
}

.section {
    padding: 0;
    padding-top: 0px;
    padding-bottom: 0px;
}

.bg-white {
    background-color: #fff !important;
}

.card-content {
    width: 100%;
}

.section .container-border-top {
    border-top: 1px solid #e7eaed;
}

.border-top {
    border-top: 1px solid #e7eaed;
}

dl {
    padding-top: 10px;
}
/*        .logo-header svg {
            height: 100px;
            margin-right: 20px;
        }
*/
/*      #page-content {
            background-color: #f8f9fa;
        }*/

/*        .margin-v-30 {
            margin-top: 30px;
            margin-bottom: 30px;
        }
*/
/*        .bg-petrol {
            background-color: #004d4d;
            padding: 8px 0;
        }
*/
/*.logo-header {
            background-color: #ffffff;
            padding: 40px 0;
            border-bottom: 1px solid #e0e0e0;
            min-height: 180px;
            display: flex;
            align-items: center;
        }*/
/*
        .header-titles h1 {
            margin: 0;
            font-size: 1.2rem;
            color: #666;
            line-height: 1.2;
        }

            .header-titles h1.main-school-name {
                font-size: 2.2rem;
                color: #004d4d;
                font-weight: 800;
                text-transform: uppercase;
            }

        .location-text {
            font-size: 1.1rem;
            color: #888;
            margin-top: 5px;
        }*/

.dpo-wrapper-box {
    background: #ffffff;
    border: 1px solid #e3e6f0;
    border-radius: 4px;
    padding: 20px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    border-left: 5px solid #004d4d;
    /*height: 300px;*/
}

.block-sezione {
    background: #ffffff;
    border-radius: 8px;
    border: 1px solid #e3e6f0;
    padding: 25px;
    margin-bottom: 30px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.03);
}

.title-sezione {
    color: #004d4d;
    font-weight: 700;
    /*border-bottom: 2px solid #004d4d;*/
    border-bottom: 1px solid #e7eaed;
    padding-bottom: 12px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.doc-item {
    border-bottom: 1px solid #f1f1f1 !important;
    padding: 15px 0 !important;
}

    .doc-item:last-child {
        border-bottom: none !important;
    }

.doc-name {
    font-weight: 600;
    color: #333;
}

.doc-desc {
    display: block;
    color: #777;
    margin-top: 4px;
    font-style: italic;
}

.btn-primary-outline {
    color: #004d4d;
    border: 1px solid #004d4d;
    background: transparent;
    transition: all 0.3s;
}

    .btn-primary-outline:hover {
        background: #004d4d;
        color: #fff;
    }

.empty-state {
    /*padding: 20px;*/
    text-align: center;
    /*            background: #fdfdfd;
            border-radius: 4px;
            border: 1px dashed #ccc;
*/
}


.public-document-container {
    /*max-width: 900px;*/
    margin: 0 auto;
}

.block-sezione {
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    margin-bottom: 25px;
    padding: 20px;
    border: 1px solid #eee;
}

.title-sezione {
    color: #2c3e50;
  /*  border-bottom: 2px solid #3498db;*/
    padding-bottom: 10px;
    margin-bottom: 15px;
    font-size: 1.25rem;
}

.lista-documenti{
    margin-top:40px;
}
.list-documenti-pubblici {
    list-style: none;
    padding: 0;
}

    .list-documenti-pubblici li {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 12px;
        border-bottom: 1px solid #f9f9f9;
        transition: background 0.2s;
    }

        .list-documenti-pubblici li:hover {
            background: #fcfcfc;
        }

.doc-name {
    display: block;
    /*font-weight: bold;*/
    color: #333;
}

.doc-desc {
    color: #7f8c8d;
    font-style: italic;
    display: block;
    margin-top: 2px;
}




.text-pdf {
    color: #cc0000;
}

.text-word {
    color: #2b579a;
}

.text-odt {
    color: #0081cb;
}

.text-excel {
    color: #217346;
}

.text-powerpoint {
    color: #d24726;
}

.text-muted {
    color: #777;
}


/*        .bg-petrol {
            background-color: #51758d !important;
        }

        #pre-header {
            font-family: "Titillium Web",Geneva,Tahoma,sans-serif;
            height: 40px;
            padding: 0;
            margin: 0;
            font-weight: 700;
            line-height: 40px;
            color: #fff;
            font-size: .875rem;
        }

            #pre-header a {
                color: #fff;
            }*/


/* === FAQ Section === */

.faq-list {
    margin-bottom: 20px;
}

.faq-item {
    border: 1px solid #e3e6f0;
    border-radius: 6px;
    margin-bottom: 10px;
    overflow: hidden;
    transition: box-shadow 0.2s;
}

    .faq-item:hover {
        box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    }

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    cursor: pointer;
    font-weight: 600;
    font-size: 16px;
    color: #2c3e50;
    background: #f8fafb;
    transition: background 0.2s;
}

    .faq-question:hover {
        background: #eef2f5;
    }

.faq-chevron {
    transition: transform 0.3s;
    color: #004d4d;
    font-size: 14px;
    flex-shrink: 0;
    margin-left: 15px;
}

.faq-item.open .faq-chevron {
    transform: rotate(180deg);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, padding 0.35s ease;
    padding: 0 20px;
    font-size: 15px;
    line-height: 1.7;
    color: #444;
}

.faq-item.open .faq-answer {
    max-height: 800px;
    padding: 16px 20px 20px;
    border-top: 1px solid #e3e6f0;
}
