
/* Colors */

:root {
  
  /* Default Colors: */
  
  /* KSA Blue: */
  /* --ksa-color-default: #002F5D; */
  --ksa-color-default: rgb(0, 47, 93);
  
  /* KSA LightBlue: */
  /* --ksa-color-one: #749FB6; */
  --ksa-color-one: rgb(116, 159, 182);
  --ksa-color-two: rgb(0, 153, 138);

  
}


.frame-background-primary {
    /* --frame-background: #002F5D; */
    --frame-background: rgb(0, 47, 93);
}


/* === GENERLL=== */
body {
  font-size: 15px;
  /* font-family: 'TheSans C5', Arial, Helvetica, sans-serif; */
  font-family: 'Open Sans', sans-serif;
}

main {
  min-height: 76vh;
  flex: 1;
}

h1 {
    font-weight: 700;
}

.c5-light           { font-weight: 300; }
.c5-lightialic      { font-weight: 300; font-style: italic; }
.c5-semilight       { font-weight: 400; }
.c5-semilightialic  { font-weight: 400; font-style: italic; }
.c5-plain           { font-weight: 500; }
.c5-plainialic      { font-weight: 500; font-style: italic; }
.c5-semibold        { font-weight: 600; }
.c5-semiboldialic   { font-weight: 600; font-style: italic; }
.c5-bold            { font-weight: 700; }
.c5-boldialic       { font-weight: 700; font-style: italic; }



.body-bg {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}







/* === HEADER + NAVIGATION === */

.header {
  border-radius: unset;
}
.header img {
  max-width: 300px;
}

.navbar-mainnavigation .navbar-nav>li>.nav-link:before {
    background: var(--ksa-color-one);
}


.btn-typ-1 {
  background-color: unset;
  border: 2px solid #ccc;
  color: var(--ksa-color-default);
  font-size: 1rem;
}

.btn-typ-1:hover,
.btn-typ-1:focus,
.btn-typ-1:active {
  transition: .3s;
  background-color: var(--ksa-color-two);
  border: 2px solid var(--ksa-color-two);
  color: #fff;
}

.btn-typ-2 {
  background-color: var(--ksa-color-default);
  border: 2px solid var(--ksa-color-default);
  color: #fff;
  font-size: 1rem;
}

.btn-typ-2:hover,
.btn-typ-2:focus,
.btn-typ-2:active {
  transition: .3s;
  background-color: var(--ksa-color-two);
  border: 2px solid var(--ksa-color-two);
  color: #fff;
}

.btn-typ-3 {
  background-color: #f06563;
  border: 2px solid #f06563;
  color: #fff;
  font-size: 1rem;
}

.btn-typ-3:hover,
.btn-typ-3:focus,
.btn-typ-3:active {
  background-color: unset;
  border: 2px solid #f06563;
  color: #f06563;
}

.btn-typ-4 {
  background-color: var(--ksa-color-default);
  color: #fff;
  font-size: 1rem;
}

.btn-typ-4:hover,
.btn-typ-4:focus,
.btn-typ-4:active {
  background-color: var(--ksa-color-one);
  color: #fff;
}

.btn-typ-5 {
  background-color: unset;
  border: unset;
  color: var(--ksa-color-default);
  font-size: 1rem;
  font-weight: bold;
}

.btn-typ-5:hover,
.btn-typ-5:focus,
.btn-typ-5:active {
  background-color: var(--ksa-color-one);
  color: #fff;
}


.btn-special {
    background-color: #eee;
}

/* === FOOTER === */
.page-footer {
  margin-top: 2rem;
  padding: 1rem 0;
  background-color: var(--ksa-color-default);
  color: #fff;
}

.page-footer a {
  color: #fff;
}
.page-footer a:hover {
  color: #fff;
}

.page-footer p {
  font-size: 1rem;
  margin: 0;
  padding:0;
}




.filelink-body .filelink-filedescription {
    margin-left: 1.875rem;
}

.filelink-media ~ .filelink-body .filelink-filedescription {
    margin-left: 0;
}



@media (min-width: 992px){
    .navbar-mainnavigation .navbar-brand-image img {
        max-height: 100%;
    }
}

#c1 .gallery-item {
    max-width: 300px;
    margin: 0 auto;
}

.footer-section-meta {
    color: #ffffff;
    background-color: var(--ksa-color-default);
}

.footer-section-meta a:not(.btn),
.footer-section-meta a:not(.btn):hover, 
.footer-section-meta a:not(.btn):focus {
    color: #ffffff;
}

ul.typo3-messages {
    list-style: none;
    padding: 0;
}

.typo3-messages .alert-message {
    margin: 0;
}

/*
.alert {
    color: #fff;
}
*/


.form-container {}
.form-container legend { display:none; }
.form-page-header { display:none; }

.form-row {
    margin-right: -20px;
    margin-left: -20px;
}

.form-row>.col, .form-row>[class*="col-"] {
    padding-right: 20px;
    padding-left: 20px;
}

.f3-form-error {
    background-color: #f8d7da;
}

.confirmation-image {
    max-width: 500px;
    width: 100%;
    display: block;
    /* margin: 0 auto; */
    border: 1px solid #eee;
    box-shadow: 5px 5px 10px 2px #eee;
}
.container-btn {
    max-width: 500px;
    margin-top: 1rem;
}

html {
    word-wrap: break-word;
}

.card-img, .card-img-top, .card-img-bottom {
    height: auto;
}

.mae-special {
    max-width: 100%;
    height: auto;
    width: auto;
    max-height: 160px;
    margin: 0 auto;
}


.event-image-preview > img {
    max-width: 100%;
    height: auto;
    width: auto;
    max-height: 300px;
    margin: 1rem auto;
    padding: 1rem;
    border: 1px solid #ccc;
}

.event-image-preview  button {
    display: block;
}

.pf-hint {
    text-align: right;
    padding-top: 0.5em;
    font-size: smaller;
}

.event-description {
    display: none;
}
@media (min-width: 576px){
    .event-description {
        display: block;
        margin-top: 1.5rem;
    }
}

.ds-link,
.femanager_terms a {
    font-weight: bold;
    text-decoration: underline;
}

div.lead,
p.lead {
    line-height: 1.75;
}


@media (min-width: 1200px){
    
    .frame-startbanner h1 {
        font-size: 3.5rem;
    }
    
    .frame-startbanner div.lead,
    .frame-startbanner p.lead {
        font-size: 1.5rem;
    }
}

@media (min-width: 1400px){
    .navbar-mainnavigation .navbar-brand {
        height: 120px;
    }
}

.vammaesite .registrationAddressHeader .row > div {
    margin-top: 1rem;
    border-top: 1px solid #eee;
    padding-top: 1rem;
}


.ws-label {
    font-size: smaller;
}

.workshop-description {
    font-size: smaller;
    display: block;
}

.registration-note {
    font-style: italic;
    color: var(--bs-danger);
    display: block;
    
}



#kontakt-26-textarea-1 {
    height: 10rem;
}

.required {
    color: #b02a37;
}


.ksa-col-logo {
    text-align: center;
}

.ksa-col-logo img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 576px){
    .ksa-col-txt h1 {
        text-align: center;
    }
}

.accordion-button {
    font-weight: bold;
}


.toova4398 ~ div.frame { display: none; }
.toova4400 ~ div.frame { display: none; }

.acc-header::after {
    content: "\203A";
    color: inherit;
    display: inline-block;
    font-size: 2rem;
    font-weight: bold;
    position: relative;
    transform: rotate(0);
    transform-origin: center;
    transition: 0.5s transform ease;
    height: 2rem;
    width: 2rem;
    text-align: center;
    line-height: 1;
    border-radius: 50%;
    background-color: transparent;
    margin: 0.25rem;
}

.acc-header.activ::after {
    transform: rotate(90deg);
    transition: 0.5s transform ease;
}

footer.page-footer{
    padding: 9px 0px 0px 0px;
    margin: 0px 0px 0px 0px;
}

.footer-flex{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content:space-between;
    --footer-font-size: 12px;
    font-size: var(--footer-font-size) !important;
 


}

.footer-1{
    order: 1;
    display: inline-block;

}

.footer-2{
    order: 2;
    display: inline-block;
    padding-top: .5em;
}

.footer-1 p, .footer-2 p{
    font-size: var(--footer-font-size);
}


@media (min-width: 991px){
    nav#mainnavigation.collapse.navbar-collapse:has(ul.navbar-nav):has(.order-login){
        /* Nur aktiv wenn .order-login einziges Menueelement */
        display: flex;
        flex-direction: row;
        justify-content: right;
    }
    .nav-item.dropdown .nav-link-text::after{
        content: " ⏷";
    }
    .order2{
        margin-right: 45%;
    }
    nav#mainnavigation.collapse.navbar-collapse{
        display: flex;
        justify-content: space-around;
        margin:0 0 0 0;
        flex-direction: row;
    }
    .navbar-mainnavigation .navbar-nav>li:hover::after,
    .navbar-mainnavigation .navbar-nav>li.active::after{
        opacity: 1;
        transition: .3s;
    }

}

@media (max-width: 991px){
    ul.dropdown-menu.show{
        border-left-width: 0
    }
    /* .navbar-mainnavigation .navbar-nav>li.active, */
    /* .navbar-mainnavigation .navbar-nav>li:hover, */
    .navbar-mainnavigation .navbar-nav>li.active>a.nav-link,
    .navbar-mainnavigation .navbar-nav>li:hover>a.nav-link,
    .navbar-mainnavigation .navbar-nav>li>ul.dropdown-menu>li>.dropdown-item:hover{
        transition: .3s;
        background-color: var(--ksa-color-one);
        color: white !important;
    }

    .navbar-mainnavigation a.dropdown-toggle::after{
        text-align: left;
        content: " ⏷";
        border: none;
        margin-left:0px;
    }

    .navbar-mainnavigation .navbar-nav>li>ul.dropdown-menu>li>.dropdown-item,
    .navbar-mainnavigation .navbar-nav>li>a{
        justify-content: center;
    }
    #page-header > div > button.navbar-toggler,
    #page-header > div > button.navbar-toggler:focus{
        box-shadow: none;
    }
#page-header > div > button

    
}
.navbar-mainnavigation .navbar-nav>li>ul.dropdown-menu[aria-expanded='true']{
    transition: .3s;
}

.navbar-mainnavigation .navbar-nav>li::after{
    display: block;
    content: "";
    opacity: 0;
    background: var(--ksa-color-one);
    fill: var(--ksa-color-one);
    height: 3px;
    width: 100%;

}
.navbar-mainnavigation .navbar-nav>li>.nav-link{

    color: black;
}


.navbar-mainnavigation .navbar-nav>li>.nav-link:before{
    opacity: 0;
    background: none;
    
}

.nav-item:not(.active) .nav-link:hover{
    transition: .3s;
    color: var(--ksa-color-one);
}
ul.dropdown-menu{
    border-radius: 0px;
    padding: 0;
}

a.dropdown-item{
    padding-left:20px !important;
    padding-right: 20px !important;
    padding-top: 13px !important;
    padding-bottom: 13px !important;
    font-size: 14px;
}
a.dropdown-item:hover,
a.dropdown-item.active{
    transition: .3s;
    background-color: var(--ksa-color-one);
    color: white;
}

.btn{
    border-radius: 0px;
}



body {
    overflow-y: scroll; /* Show vertical scrollbar */
}

ul.navbar-nav{
    margin: 0 0 0 0 !important;
}

.order1,.order2.order3{

}
.navbar-brand.navbar-brand-image{
    order: 0;
    /* width:17%; */
}
.navbar-brand.navbar-brand-image>img{
    /* object-fit: contain; */
    /* height: 75px; */
    /* width: 100%; */
    /* max-width: 174px; */
}
.order1{
    order: 1;
}
.my-va-menu-btn{
    text-wrap: nowrap;
}
.order2{
    order: 2;
}
.order3{
    order: 3;
}
.order-login{
    /* Nur aktiv wenn einziges Menueelement */
    order: 1;
}
.loginout-menu-btn{
    font-weight: 300;
}

.order-login{
    /* margin-right: 1.18em; */
    margin-right: 6em;
}
