
#flex-nav {
    display:flex;
    justify-content: center;
    align-items: center;
    align-content:center;
    column-gap:2rem;
    background-color: var(--color-rfdr-primary);
}
.homepage {
    background-color: unset;
}
#main{
    border-top-color: var(--color-rfdr-primary);
}
.grid-container {
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    width:100%;
    margin:auto;
    column-gap: 5%;
    text-align: center;

}

/*##################################################################*/
/* accordion CSS */
/*##################################################################*/

.accordion-item {
    background-color: var(--color-rfdr-lightgrey);
    color: var(--color-rfdr-grey);
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 15px;
    transition: 0.4s;
}

.accordion-active, .accordion-item:hover {
    background-color: var(--color-rfdr-third);
}

.panel {
    padding: 0 18px;
    background-color: var(--color-rfdr-white);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
}
button:hover {
    background: var(--color-rfdr-third);
}

/*##################################################################*/


@media screen and (max-width:980px) {
    .grid-container {
        grid-template-rows: repeat(3, 1fr);
        grid-template-columns: unset;
    }
}
@media screen and (max-width:1280px) {
    #nav-logo {
        height:50px;
        right:3.5%;
    }
}
.grid-container a {
    display: block;
    background: var(--color-rfdr-greywhite);
    border-radius: 100%;
    width: 2.25em;
    height: 2.25em;
    line-height: 2.175em;
    font-size: 5em;
}
.grid-item {
    display: grid;
    grid-template-rows: [ikon] 15rem [headline] auto [zeilen] 1fr;
    justify-items: center;
    column-gap: 1rem;
}
#grid-item1 {
    grid-area:item1;
}
#grid-item2 {
    grid-area:item2;
}
#grid-item3 {
    grid-area:item3;
}
.icon {
    color: var(--color-rfdr-primary);
}
.subheading-icon {
    font-size:5rem;
    line-height:2.1;
}


/*#############################################################################################
texticon-content
texticon texticon-left
#######################*/
.texticon-icon-none {
    position: relative;
    z-index: 1;
    transition: background-color 0.3s, color 0.3s, box-shadow 0.1s
    color: var(--color-rfdr-primary);
    font-size: 36px;
    text-align: center;
    line-height: 1;
    margin: 0 auto
}

.texticon-type-circle .texticon-inner-icon  {
    font-size: 36px;
    text-align: center;
    line-height: 1;
    margin: 0 auto;
    position: relative;
    display: inline-block;
    border-radius: 60px;
    border: solid 2px var(--color-rfdr-primary);
}

.texticon-type-circle .texticon-inner-icon {
    display: inline-block;
    line-height: 2.5em;
    height: 2.5em;
    width: 2.5em;
    overflow: hidden;
    border-radius: 50%;
}

.texticon-type-circletexticon-type-circle:before {
    position: absolute;
    content: "";
    background: var(--color-rfdr-primary);
    border-radius: 50%;
    width: 0;
    height: 0;
    /*transform: translate(-50%, -50%);
    transition: all .5s;*/
}

.texticon-type-circle .texticon-inner-icon:hover:before {
    width: 100%;
    height: 100%;
}

.texticon-type-circle .texticon-inner-icon:hover,
.texticon-top .texticon-size-awesome .texticon-inner-icon svg:hover,
.texticon-top .texticon-size-medium .texticon-inner-icon svg:hover {
    color: var(--color-rfdr-white);
    border: none;
    background: var(--color-rfdr-primary);
}
.texticon-top .texticon-size-awesome .texticon-inner-icon svg:hover,
.texticon-top .texticon-size-medium .texticon-inner-icon svg:hover {
    border-radius: 10px;
}

.texticon-icon img {
    vertical-align: top;
    position: relative;
    height: 30px;
    width: 30px;
}

.texticon h2 a:hover {
    color: var(--color-rfdr-primary);
    text-decoration: underline;
}

.texticon-left {
    display: flex;
}
main.rfdr-content .texticon.texticon-top,
.container25252525 .texticon.texticon-top, .container333333 .texticon.texticon-top {
    text-align: center;
}

.texticon-left .texticon-size-default .texticon-inner-icon img {
    width:  30px;
    height: 30px;
}
.texticon-left .texticon-icon  .texticon-inner-icon {
    padding: 0 2.5rem 0 0;
}
.texticon-type-circle .texticon-inner-icon svg {
    height: 80px;
    width: 60px;
}

.texticon-size-awesome .texticon-inner-icon svg {
    width: 160px;
    height: 160px;
    color: var(--color-rfdr-primary);
    font-size: 15rem;
    margin-right: 2rem;
}
.texticon-top .texticon-size-medium {
    text-align: center;
    align-content: center;
}
.col2-30 .texticon-top {
    margin-bottom: 1rem;
}
.texticon-size-medium .texticon-inner-icon svg {
    height: 80px;
    width: 80px;
    color: var(--color-rfdr-primary);
    font-size: 15rem;
    padding-bottom: 0;
    margin-bottom: 0;
}
.col2-30 .texticon-top .texticon-content {
    margin-top: -0.8rem;
}
/*####################################################################################################################*/

@media only screen and (min-width: 600px) {
    .container25252525 {
        margin-top: 0.5rem;
        margin-bottom: 2rem;
        gap: 2px;
        justify-items: center;
    }
    .container25252525 .texticon-content h2 {
        font-size: 1.2em;
    }
    .container25252525 .texticon-content p {
        line-height: 1.8em;
        font-size: 0.9em;
    }
    .container333333 {
        /* grid-template-columns: 33% 33% 1fr; */
        grid-template-columns: 33% 33% 33%;
        justify-items: center;
    }
}
.col1-50, .col1-30, .col2-30, .col1-33, .col2-33, .col3-33, .col1-25, .col2-25, .col3-25, .col4-25, .col1-20, .col2-20, .col3-20, .col4-20 {  padding: 0 2em 2rem 0; }