@font-face {
    font-family: 'Crimson Text';
    src: url('../fonts/CrimsonText-SemiBold.eot');
    src: url('../fonts/CrimsonText-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CrimsonText-SemiBold.woff') format('woff'),
        url('../fonts/CrimsonText-SemiBold.ttf') format('truetype'),
        url('../fonts/CrimsonText-SemiBold.svg#CrimsonText-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Crimson Text';
    src: url('../fonts/CrimsonText-Regular.eot');
    src: url('../fonts/CrimsonText-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CrimsonText-Regular.woff') format('woff'),
        url('../fonts/CrimsonText-Regular.ttf') format('truetype'),
        url('../fonts/CrimsonText-Regular.svg#CrimsonText-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Crimson Text';
    src: url('../fonts/CrimsonText-SemiBoldItalic.eot');
    src: url('../fonts/CrimsonText-SemiBoldItalic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CrimsonText-SemiBoldItalic.woff') format('woff'),
        url('../fonts/CrimsonText-SemiBoldItalic.ttf') format('truetype'),
        url('../fonts/CrimsonText-SemiBoldItalic.svg#CrimsonText-SemiBoldItalic') format('svg');
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: 'Crimson Text';
    src: url('../fonts/CrimsonText-Bold.eot');
    src: url('../fonts/CrimsonText-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CrimsonText-Bold.woff') format('woff'),
        url('../fonts/CrimsonText-Bold.ttf') format('truetype'),
        url('../fonts/CrimsonText-Bold.svg#CrimsonText-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Crimson Text';
    src: url('../fonts/CrimsonText-Italic.eot');
    src: url('../fonts/CrimsonText-Italic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CrimsonText-Italic.woff') format('woff'),
        url('../fonts/CrimsonText-Italic.ttf') format('truetype'),
        url('../fonts/CrimsonText-Italic.svg#CrimsonText-Italic') format('svg');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Crimson Text';
    src: url('../fonts/CrimsonText-BoldItalic.eot');
    src: url('../fonts/CrimsonText-BoldItalic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/CrimsonText-BoldItalic.woff') format('woff'),
        url('../fonts/CrimsonText-BoldItalic.ttf') format('truetype'),
        url('../fonts/CrimsonText-BoldItalic.svg#CrimsonText-BoldItalic') format('svg');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('../fonts/BarlowCondensed-BoldItalic.eot');
    src: url('../fonts/BarlowCondensed-BoldItalic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/BarlowCondensed-BoldItalic.woff') format('woff'),
        url('../fonts/BarlowCondensed-BoldItalic.ttf') format('truetype'),
        url('../fonts/BarlowCondensed-BoldItalic.svg#BarlowCondensed-BoldItalic') format('svg');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('../fonts/BarlowCondensed-Bold.eot');
    src: url('../fonts/BarlowCondensed-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/BarlowCondensed-Bold.woff') format('woff'),
        url('../fonts/BarlowCondensed-Bold.ttf') format('truetype'),
        url('../fonts/BarlowCondensed-Bold.svg#BarlowCondensed-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('../fonts/BarlowCondensed-Italic.eot');
    src: url('../fonts/BarlowCondensed-Italic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/BarlowCondensed-Italic.woff') format('woff'),
        url('../fonts/BarlowCondensed-Italic.ttf') format('truetype'),
        url('../fonts/BarlowCondensed-Italic.svg#BarlowCondensed-Italic') format('svg');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('../fonts/BarlowCondensed-Light.eot');
    src: url('../fonts/BarlowCondensed-Light.eot?#iefix') format('embedded-opentype'),
        url('../fonts/BarlowCondensed-Light.woff') format('woff'),
        url('../fonts/BarlowCondensed-Light.ttf') format('truetype'),
        url('../fonts/BarlowCondensed-Light.svg#BarlowCondensed-Light') format('svg');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('../fonts/BarlowCondensed-LightItalic.eot');
    src: url('../fonts/BarlowCondensed-LightItalic.eot?#iefix') format('embedded-opentype'),
        url('../fonts/BarlowCondensed-LightItalic.woff') format('woff'),
        url('../fonts/BarlowCondensed-LightItalic.ttf') format('truetype'),
        url('../fonts/BarlowCondensed-LightItalic.svg#BarlowCondensed-LightItalic') format('svg');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Barlow Condensed';
    src: url('../fonts/BarlowCondensed-Regular.eot');
    src: url('../fonts/BarlowCondensed-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/BarlowCondensed-Regular.woff') format('woff'),
        url('../fonts/BarlowCondensed-Regular.ttf') format('truetype'),
        url('../fonts/BarlowCondensed-Regular.svg#BarlowCondensed-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

:root {
    --primary-color: #1C2020;
}

body {
    font-family: 'Barlow Condensed', sans-serif;
    color: #ffffff;
    background-color: var(--primary-color);
    font-weight: 300;
}

a {
    color: #ffffff;
    text-decoration: none;
}

a:hover,
a:focus,
a:active {
    color: #C9A24D;
}

#video-bg-container {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: -1;
            overflow: hidden;
            background-color: black; /* Sfondo di fallback */
        }

        #video-bg {
            position: absolute;
            top: 50%;
            left: 50%;
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            transform: translate(-50%, -50%);
            object-fit: cover; /* Assicura la copertura totale senza distorsioni */
            filter: brightness(0.8); /* Migliora la leggibilità del testo */
        }

.main-container {
    padding: 40px;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow:hidden;
}

.logo {
    max-width: 185px;
    top: -500px;
    position: relative;
}

header .dropdown-toggle::after {
    display:none;
}

.dropdown-menu.show {
    display: block;
    background-color: transparent;
    border:none;
}

.dropdown-item  {
    color: #ffffff;
    text-align: right;
    transition: all 0.3s ease-in-out;
}

.dropdown-item:hover, .dropdown-item:focus {
    color: #c9a24d;
    background-color: #f8f9fa1f;
    font-weight: 600;
}

.container {
        max-width: none;
    }

.row > * { 
    margin-top:0px;
}

h3 {
    margin-bottom: 0rem;
}

.division-title {
    font-family: 'Crimson Text', serif;
    font-size: 3rem;
    font-weight: 600;
    margin-bottom: -5px;
    padding: 0 15px;
    text-align: center;
    position: relative;
}

.fiduciaria {
    color: #C50000;
}

.realestate {
    color: #83888D;
}

.division-subtitle {
    position: relative;
    height: 1px;
    width: 100%;
    background-color: #ffffff;
}

.division-title.fiduciaria {
    left:-500px;
}
.division-subtitle.div-fiduciaria {
    left: -500px;
}

.div-fiduciaria:after {
    content: '';
    display: block;
    position: absolute;
    top: -2px;
    right: 0px;
    width: 30%;
    height: 5px;
    background-color: #c40301;
}

.division-title.realestate {
    right:-500px;
}
.division-subtitle.div-realestate {
    right: -500px;
}

.div-realestate:after {
    content: '';
    display: block;
    position: absolute;
    top: -2px;
    right: 0px;
    width: 30%;
    height: 5px;
    background-color: #83888D;
}

.online {
    opacity:0;
}

.btn-impressum {
    background: none;
    border: none;
    color: #ffffff;
    padding: 0;
    font: inherit;
    cursor: pointer;
    text-decoration: none;
}

.modal-content {
    background-color: var(--primary-color);
    color: #ffffff;
    border-radius: 0px;
}
.modal-header {
    border-top-left-radius: 0!important;
    border-top-right-radius: 0!important;
}
.modal-close {
       margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));
       margin-left: auto;
           border: none;
    color: #ffffff;
    background-color: transparent;
}

/*MOBILE*/
@media(min-width:1200px) {
    .container .col-lg-4 {
        max-width:25%;
    }
}

@media(max-width:991px) {
.container .col-lg-4 {
    max-width: 65%;
    margin: 50px auto;
}

.division-title.fiduciaria {
    left: -150%;
}

.division-subtitle.div-fiduciaria {
    left: -150%;
}

.division-title.realestate {
    right: -150%;
}

.division-subtitle.div-realestate {
    right: -150%;
}

footer {
text-align: center;
    line-height: 1.5;
}
}

@media(max-width:767px) {
    #video-bg {
        filter: brightness(0.6);
    }
    .logo {
        max-width: 120px;
    }
    .container .col-lg-4 {
        max-width: 100%;
        margin: 30px auto;
    }
    h2 {
        font-size: 2rem!important;
    }
    h3 {
        font-size: 1.2rem!important;
    }
}

/*ANIMATIONS*/
.logo {
    animation: slideInLogo 2s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 4s;
}
@media(min-width:992px) {
.division-title.fiduciaria {
    animation: slideInFiduciariaTitle 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 2.3s;
}

.division-subtitle.div-fiduciaria {
    animation: slideInFiduciaria 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 1.5s;
}

.division-title.realestate {
    animation: slideInRealEstateTitle 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 2.3s;
}
.division-subtitle.div-realestate {
    animation: slideInRealEstate 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 1.5s;
}
}

@media(max-width:991px) {
.division-title.fiduciaria {
    animation: slideInFiduciariaTitleXs 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 2.3s;
}
.division-subtitle.div-fiduciaria {
    animation: slideInFiduciaria 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 1.5s;
}
.division-title.realestate {
    animation: slideInRealEstateTitle 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 2.3s;
}
.division-subtitle.div-realestate {
    animation: slideInRealEstate 1.5s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 1.5s;
}
}

.online {
    animation: fadeInOnline 2s cubic-bezier(0.0, 0.0, 0.2, 1) forwards;
    animation-delay: 3.5s;
}

@keyframes slideInLogo {
    0% {
        top: -500px;
    }
    100% {
        top: 0px;
    }
}

@keyframes slideInFiduciariaTitle {
    0% {
        left: -500px;
    }
    100% {
        left: 0px;
    }
}

@keyframes slideInRealEstateTitle {
    0% {
        right: -500px;
    }
    100% {
        right: 0px;
    }
}

@keyframes slideInFiduciaria {
    0% {
        left: -500px;
    }
    100% {
        left: 0px;
    }
}

@keyframes slideInRealEstate {
    0% {
        right: -500px;
    }
    100% {
        right: 0px;
    }
}

@keyframes slideInFiduciariaTitleXs {
    0% {
        left: -150%;
    }
    100% {
        left: 0px;
    }
}

@keyframes slideInRealEstateTitle {
    0% {
        right: -150%;
    }
    100% {
        right: 0px;
    }
}

@keyframes slideInFiduciaria {
    0% {
        left: -150%;
    }
    100% {
        left: 0px;
    }
}

@keyframes slideInRealEstate {
    0% {
        right: -150%;
    }
    100% {
        right: 0px;
    }
}

@keyframes fadeInOnline {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}