/*clearfix*/

.float-group:after {
    content: "";
    display: table;
    clear: both;
}

.agency-image-closed {
    width: 150px;
    position: fixed;
    right: -20px;
    bottom: 10px;
}

.agent_image {
    border-radius: 50%;
}

.agency-banner-closed .agent_image {
    box-shadow: 3px 2px 7px 0px black;
}

/*
.agency-image-open {
    display: none;
}*/

.agencybanner {
    position: fixed;
    z-index: 101;
    bottom: 0;
    right: 0;
    width: 100%;
    /*padding: 10px 0;*/
    /*backtotop sign has index 102*/
}

.agencybanner ul {
    font-size: 0;
}

.agencybanner ul li {
    font-size: 16px;
    display: inline-block;
}

.agencybanner a.agent-button {
    color: #fff;
    font-family: HelveticaRoman, sans-serif;
    opacity: .8;
    text-transform: uppercase;
}

.agencybanner a.agent-button::after {
    content: url("../images/system/iconvarie/see-all-icon-white.png");
    margin-left: 7px;
}

.agencybanner a.agent-button:hover {
    opacity: 1;
}

.agencybanner .agencybanner-wrapper {
    position: relative;
    overflow: hidden;
    margin-top: 1em;
    margin-bottom: 1em;
}

.agencybanner .agency-content-wrapper {
    opacity: 1;
    background-color: #ffffff;
    padding-top: 5px;
    padding-bottom: 5px;
    overflow: hidden;
/*    padding-left: 4.5%;*/
    padding-right: 3.5%;
    position: relative;
    border-top: 2px solid #c12017;
}

.agencybanner .arrow-right-icon {
    background-image: url(../../../../generali/Resources/Public/images/system/slide-next-red.png);
    width: 4em;
    height: 4em;
    background-repeat: no-repeat;
    position: absolute;
    right: 0px;
    bottom: 5px;
    margin-right: 15px;
}

.agencybanner .arrow-left-icon {
    background-image: url(../../../../generali/Resources/Public/images/system/slide-prev-hover-tr.png);
    width: 3em;
    height: 4em;
    background-repeat: no-repeat;
    position: fixed;
    right: 110px;
    bottom: 8px;
    background-color: transparent;
}

.default-contact-image {
    display: block;
}

.default-contact-image.ab-close {
    width: 60%;
}

.default-contact-image.ab-open {
    width: 70px;
}

.default-contact-image>span {
    background-image: url(../images/icons/agent-image.svg);
    display: block;
    width: 100%;
    height: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #f2f2f2;
    padding-bottom: 115%;
}

/* search input field */
.search-city {
    margin: 20px 0 0 40px;
}

.search-title {
    margin-top: 25px;
    margin-bottom: 25px;    
}

.agency-search {
    width: 450px;
}

/* contact-list */

.agencybanner .agency-contact-list {
    float: left;
    width: 60%;
    margin: 0;
    list-style: none;
    color: #c12017;
}

.agencybanner .agency-contact-list li {
    float: left;
    position: relative;
}

.agencybanner .agency-contact-list li.bordered::after {
    content: "";
    display: block;
    width: 1px;
    border-left: 1px solid #c12017;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    background-color: transparent;
    min-height: 15rem;
}

.agencybanner .agency-contact-list .agency-photo {
    width: 10%;
}

.agencybanner .agency-contact-list .agency-name {
    width: 30%;
    padding-left: 3%;
    padding-top: 20px;
}

.agencybanner .agency-contact-list .agency-name:after {
    border: none
}

.agencybanner .agency-contact-list .agency-name>span {
    display: block;
}

.agencybanner .agency-contact-list .agency-phone {
    width: 30%;
    text-align: center;
}

.agencybanner .agency-contact-list .agency-phone a {
    color: #c12017;
}
/*
.agencybanner .agency-contact-list .agency-phone::before {
    content: url(../images/icons/agent-phone.svg);
    vertical-align: -30%;
}*/

.agencybanner .agency-contact-list .agency-adress {
    width: 30%;
    padding-left: 3%;
}

.agencybanner .agency-contact-list .agency-adress>span {
    display: block;
}

.agencybanner .agency-contact-list .agency-adress a {
    color: #c12017;
    font-family: HelveticaRoman, sans-serif;
    opacity: .8;
    text-transform: uppercase
}

.agencybanner .agency-contact-list .agency-adress a#agent_phone2 {
    padding-left: 23px;
}

.agencybanner .agency-contact-list .agency-adress a:hover {
    opacity: 1
}

div.agency-route {
    display: block;
}

div.agency-phone-inline {
    display: none;
}

.agencybanner .agency-contact-list .agency-phone-inline a {
    opacity: 1;
}


/*cta- list*/

.agencybanner .agency-cta-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.agencybanner .agency-cta-list {
    float: right;
    width: 36%;
    list-style: none;
}

.agencybanner .agency-cta-list li {
    position: relative;
    width: 50%;
    text-align: center;
}

.agencybanner .agency-cta-list li.bordered::after {
    content: "";
    display: block;
    width: 1px;
    border-left: 1px solid #c12017;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    background-color: transparent;
    min-height: 15rem;
}

.agencybanner .agency-cta-list a {
    color: #fff;
    font-family: HelveticaRoman, sans-serif;
    opacity: 1;
    text-transform: uppercase;
    height: 65px;
    display: inline-table;
}

.agencybanner .agency-cta-list a:hover {
    opacity: 1;
}

.cta-btn>span {
    display: table-cell;
    vertical-align: bottom;
    position: relative;
    text-align: center;
}

.cta-btn>span[class^="agency-"]::before {
    position: relative;
    display: block;
    text-align: center;
    font-size: "20px";
    font-size: 2rem;
    line-height: 1;
    padding-bottom: .5rem;
}

.agencybanner .agency-cta-list li.cta-anfahrt {
    display: none;
}

.agencybanner .agency-cta-list li.cta-contact {
    display: none;
}


/*cta-icons*/

.agencybanner .agency-envelope-icon {
    background-image: url(../images/icons/agent-envelope.svg);
    /*  width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 50%;
    width: 70px;
    color: #c12017;
}

.agencybanner .agency-calendar-icon {
    background-image: url(../images/icons/agent-calendar.svg);
    /* width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 70%;
}

.agencybanner .agency-website-icon {
    background-image: url(../images/icons/agent-website.svg);
    /*   width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 50%;
    width: 60px;
    color: #c12017;
}

.agencybanner .agency-anfahrt-icon {
    background-image: url(../images/icons/agent-anfahrt.svg);
    /*  width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 60%;
    width: 70px;
    color: #c12017;
}

.agencybanner .agency-contact-icon {
    background-image: url(/typo3conf/ext/betreuer/Resources/Public/Icons/call-icon.png);
    /*  width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 5px;
    background-size: 60%;
    width: 50px;
}

.agencybanner .agency-contact-icon-inline {
    background-image: url(../images/icons/agent-phone.svg);
    /*  width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 5px;
    background-size: 60%;
}

.agencybanner .agency-calendar-icon {
    background-image: url(/typo3conf/ext/betreuer/Resources/Public/Icons/group-icon.png);
    /*  width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 5px;
    background-size: 60%;
    width: 50px;
}

.agencybanner .agency-email-icon {
    background-image: url(/typo3conf/ext/betreuer/Resources/Public/Icons/email-icon.png);
    /*  width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 10px;
    background-size: 60%;
    width: 50px;
}

.agencybanner .agency-location-icon {
    background-image: url(/typo3conf/ext/betreuer/Resources/Public/Icons/location-icon.png);
    /*  width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 5px;
    background-size: 45%;
    width: 50px;
}

.agencybanner .agency-web-icon {
    background-image: url(/typo3conf/ext/betreuer/Resources/Public/Icons/agent-website.png);
    /*   width: 4em;
    height: 4em;*/
    background-repeat: no-repeat;
    background-position: 50% 6px;
    background-size: 50%;
    width: 60px;
}

#agency-banner {
    display: none;
}

#agent_phone2.agency-contact-icon {
    background-position: 0;
    background-size: 18px;
}

/*********** TS overrides */

.agency-banner-closed .agency-content-wrapper {
    left: 100%;
    background: transparent;
    margin-left: -100px;
    border-top: none;
    
}
.agency-banner-closed {
        width: 100px;
        transition-delay: 2s;
        height: 80px;
}

 .agency-content-wrapper {
    left:0;
    transition: 2s;
}

.agency-banner-closed .agency-content {
    opacity: 0;
    transition: opacity 2s;
}

.agency-banner-closed .arrow-left-icon {
    opacity: 1;
    transition: opacity 0.5s;
    transition-delay: 1.5s;
}

.agency-banner-opened .arrow-left-icon {
    opacity: 0;
    transition: opacity 0.5s;
    height: 0;
}

.agency-photo {
    float: left;
    width: 4%;
}

#agency-banner {
    /*  height: 98px;*/
}

.agency-content {
    padding-left: 4%;
}

/* media query*/

@media (max-width:1229px) {
    .agencybanner .agency-content-wrapper {
        padding-left: 10px;
    }
    .agencybanner .agency-contact-list {
        width: 55%;
    }
    .agencybanner .agency-cta-list {
        width: 45%;
    }
    .agencybanner .agency-cta-list li {
        width: 33%;
    }
    .agency-contact-list li.agency-phone {
        display: none;
    }
    .agencybanner .agency-cta-list li.cta-anfahrt {
        display: block;
    }
    .agencybanner .agency-contact-list li.agency-photo {
        width: 15%;
    }
    .agencybanner .agency-contact-list li.agency-name {
        width: 42.5%;
    }
    .agencybanner .agency-contact-list li.agency-adress {
        width: auto;
    }
    div.agency-route {
        display: none;
    }
    div.agency-phone-inline {
        display: block;
    }
}

@media (max-width:1024px) {
    .agencybanner.agency-banner-opened ul li {
        font-size: 14px;
    }
    .agency-content {
        padding-left: 6%;
    }
}

@media (max-width:949px) {
    .agencybanner .agency-contact-list li.agency-photo {
        display: none;
    }
    .agencybanner .agency-contact-list li.agency-phone {
        display: none;
    }
    .agencybanner .agency-contact-list li.agency-name {
        width: 50%;
    }
    .agencybanner .agency-cta-list li {
        width: 33%;
    }
    .agencybanner .agency-cta-list li.cta-calendar {
        display: none;
    }
}

@media (max-width:767px) {
    .agency-content,
    .agency-content ul {
        padding-left: 0;
    }
    .agencybanner .agency-contact-list {
        float: none;
        width: 100%;
        display: block;
    }
    .agency-photo {
        width: 70px;
    }
    .agencybanner .agency-cta-list {
        width: 100%;
        display: block;
        margin-top: 10px;
    }
    .agencybanner .agency-cta-list li {
        width: 25%;
    }
    .agencybanner .agency-contact-list li.agency-photo {
        display: block;
        width: 10%;
    }

    .agencybanner .agency-contact-list li.agency-name {
        width: 80%;
    }
    .agencybanner .agency-contact-list li.agency-adress {
        display: none;
    }
    .agencybanner .agency-cta-list li.cta-envelope,
    .agencybanner .agency-cta-list li.cta-calendar,
    .agencybanner .agency-cta-list li.cta-website,
    .agencybanner .agency-cta-list li.cta-anfahrt,
    .agencybanner .agency-cta-list li.cta-contact {
        display: inline-block;
    }
    .agencybanner .agency-cta-list a {
        height: 45px;
    }
    .desktop {
        display: none !important;
    }
}

@media (max-width:490px) {
    .agencybanner .agency-contact-list li.agency-name {
        width: auto;
    }
    .agencybanner.agency-banner-opened ul li {
        font-size: 12px;
    }
    .agencybanner .agency-cta-list li {
        width: 20%;
    }
    .agencybanner .agency-cta-list li.cta-calendar {
        display: none;
    }
}

@media (min-width:768px) {
    .mobile {
        display: none !important;
    }
}