html {
    height: 100%;
    min-height: 100%;
}

body {
    color: #333;
    /* A11Y FIX: Schriftgröße auf 16px (Browser-Standard) und Zeilenhöhe auf 1.6 für bessere Lesbarkeit */
    font: 300 16px/1.6 Roboto, Arial, Helvetica;
    background-color: #fff;
    -webkit-font-smoothing: antialiased;
    background-color: #eee;
    position: relative;
    overflow-x: hidden;
    min-height: 100%;
}

/* A11Y FIX */
a {
    color: #5a1b63; 
    text-decoration: none;
}

.section-item a {
    font-weight:bold;
    text-decoration: underline;
}
.section-item a:focus {
    color: #d8b52a !important;
}
.section-item a:hover {
    text-decoration: none;
}

a:hover {
    color: #333;
    text-decoration: underline; /* Unterstreichung bei Hover hilft bei Erkennbarkeit */
}

/* A11Y FIX: "outline: none" entfernt! */
/* Stattdessen: Sichtbarer Fokus für Tastaturnutzer */
.btn:focus, a:focus, button:focus, input:focus, select:focus, textarea:focus {
    outline: 2px solid #d8b52a; /* Brand-Purple */
    outline-offset: 0px;
    z-index: 10000; /* Sicherstellen, dass der Fokus über anderen Elementen liegt */
}

/* A11Y FIX: Transitionen nur, wenn Nutzer keine reduzierte Bewegung wünscht */
@media (prefers-reduced-motion: no-preference) {
    .btn, a, .btn:hover, a:hover {
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }
}

h1, h2, h3, h4 {
    margin: 0;
    line-height: 1.2em; /* Etwas mehr Luft für Überschriften */
}

h1 {
    font: 700 3em Raleway, Arial, Helvetica;
    padding: 5em 0;
    text-transform: uppercase;
    color: #fff;
}

h2 {
    font: 700 1.5em Raleway, Arial, Helvetica;
    margin-bottom: 1.0em;
    color: #5a1b63;
}

h3 {
    font: 700 1.25em Raleway, Arial, Helvetica;
    margin: 0.5em 0;
}

p {
    font-size: 1em;
    line-height: 1.6em;
    margin-bottom: 1.0em;
}

.container {
    width: 100%;
    max-width: 1400px;
}

.wrapper {
    background-color: #eaeaea;
    min-height: 100vh;
}

.spacer {
    padding: 3em;
    padding-bottom: 2em;
}

/* Helper für Screenreader (falls Bootstrap fehlt oder überschrieben wird) */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
    background: #fff;
    color: #000;
    padding: 10px;
    z-index: 99999;
}


/* BUTTONS */
/* A11Y FIX: Visueller Button-Stil (ohne Text-Dekoration) */
.btn-clean { 
    background: none; 
    border: none; 
    padding: 0; 
    color: inherit; 
    cursor: pointer; 
}

.btn {
    border: none;
    border-radius: 0;
    padding: 0.75em 3em;
    text-transform: uppercase;
}

.btn-danger {
    background: rgb(242, 24, 97) !important;
}

.btn-shh {
    color: #333;
    background: rgba(214, 184, 68, 1);
}

.btn-shh:hover {
    color: #fff;
    background: rgba(225, 185, 30, 1);
}

.btn:hover, .btn:active {
    color: #fff;
    box-shadow: none;
}

/* NAVBAR */
.navbar-wrapper {
    background: #eaeaea;
}

.navbar-nav > li > a {
    font-size: 1em;
    line-height: 2em;
}

.navbar-inverse {
    background: #111;
}

.navbar-brand {
    color: #fff !important;
    background: #5a1b63 !important;
    margin-left: 0 !important;
    height: 60px;
    padding: 1em;
    font: 700 1.25em Raleway;
}

.navbar-default .navbar-nav > li > a {
    color: #000 !important;
}

.navbar-default .navbar-nav > .active > a, 
.navbar-default .navbar-nav > .active > a:hover, 
.navbar-default .navbar-nav > .active > a:focus {
    color: #fff !important;
    background-color: #5a1b63;
}

.navbar-nav.navbar-right:last-child {
    margin-right: 0 !important;
}

.navbar-default {
    background: none;
    border: none;
}

.navbar-default .navbar-collapse {
    background: rgba(255, 255, 255, 0.9);
}

/* BANNER */
.banner {
    background: url(../images/banner_badischl.jpg) #000;
    position: relative;
    background-attachment: fixed;
    background-position: bottom center;
    background-size: cover;
}

.overlay {
    background: rgba(101, 159, 166, 0.85);
    background: rgba(218, 146, 50, 0.85);
    background: rgba(17, 136, 153, 0.8);
    background: rgba(34, 135, 173, 0.65);
}

/* CAROUSEL */
.carousel .item {
    max-height: 500px;
}

.carousel-control {
    width: 10%;
}

.carousel-control i.fa {
    top: 50%;
    position: absolute;
    margin-top: -30px;
    left: 0;
    right: 0;
}

.carousel .item a.view {
    position: absolute;
    top: -10%;
    left: 50%;
    text-align: center;
    background: rgba(217, 179, 28, 0.9);
    color: #fff;
    display: inline-block;
    padding: 0.75em 2em;
    font-size: 1.25em;
    margin-top: -24px;
    margin-left: -70px;
}

.carousel .item:hover a.view,
.carousel .item:focus-within a.view { /* A11Y: Auch bei Fokus sichtbar machen */
    top: 50%;
    text-decoration: none;
}

.social a {
    margin-right: 1em;
}

/* FOOTER */
.footer {
    background-color: #111;
    color: #fff;
    font-size: 1em;
    color: #aaa;
    padding: 2em;
}

.footer a {
    color: #aaa;
    margin: 0 1em;
}

.footer p {
    line-height: 1.1em;
    font-size: 0.9em;
}

.gototop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: rgba(0, 0, 0, 0.5);
    padding: 10px;
    color: #fff;
}

.gototop i {
    line-height: 0.5em;
}

/* MEDIA QUERIES */
@media (max-width: 1200px) {
    .spacer {
        padding: 2em;
    }
}

@media (max-width: 900px) {
    body {
        font-size: 16px; /* A11Y: Nicht unter 16px gehen */
        line-height: 1.5;
    }

    h1 {
        font-size: 2em;
    }

    h2 {
        font-size: 1.10em;
        margin-bottom: 0.5em;
    }

    h3 {
        font-size: 1em;
    }

    p {
        line-height: 1.4em;
    }

    .service {
        padding: 0 0 0em 0;
    }

    .service p {
        font-size: 0.85em;
    }

    .btn {
        padding: 1em 2em;
    }

    .spacer {
        padding: 1.5em 1.5em 0 1.5em;
    }

    .navbar-brand {
        height: 56px;
    }

    .btn {
        padding: 0.5em 2em;
    }
}

@media (max-width: 767px) {
    body {
        font: 300 16px/1.5 Roboto, Arial, Helvetica;
    }

    h1 {
        padding: 2em 0;
    }

    .navbar-nav > li > a {
        line-height: 1.5em; /* Mehr Abstand für Touch-Targets */
    }

    .navbar-brand {
        padding: 7px;
        height: 50px;
        line-height: 2em;
        margin-left: 15px !important;
    }

    .navbar-default {
        background: #fff !important;
    }

    .navbar-default .navbar-toggle, 
    .navbar-default .navbar-toggle:hover, 
    .navbar-default .navbar-toggle:focus {
        background: #5a1b63;
        color: #fff;
        border: none;
        border-radius: 0;
        margin-right: 25px;
    }

    .navbar-default .navbar-toggle .icon-bar {
        background-color: #fff;
    }

    .footer {
        margin-top: 2em;
        padding-bottom: 2em;
    }

    #standorte {
        width: 100vw;
    }
}

.banner h1 {
    padding-top: 2em;
    padding-bottom: 0em;
}

.service {
    color: #fff;
}

.service p {
    color: #EFACC2; /* Prüfen: Ist Kontrast hier ausreichend? Falls zu hell, abdunkeln. */
    font-size: 0.90em;
    line-height: 1.20em;
    margin: 0;
}

/* BOOKING */
#booking-box {
    background: #5a1b63;
    padding: 20px;
}

#booking-box h2,
#booking-box h3 {
    margin-top: 0px;
    font: 700 1.25em Raleway, Arial, Helvetica;
    margin: 0.5em 0;
    color: white;
}

#booking-box .btn {
    border: none;
    margin-top: 3px;
    text-transform: uppercase;
    padding: 8px;
   
    border-radius: 3px;
}

#booking-box i {
    padding-top: 15px;
    padding-right: 10px;
}

.radio-inline {
    font-size: 0.8em;
}

#booking-form .row {
    margin-bottom: 5px;
}

#booking-form h2,
#booking-form h3 {
    font: 500 1em Raleway, Arial, Helvetica;
    margin: 0.5em 0;
}

.container {
    padding-left: 0px;
    padding-right: 0px;
}

.navbar .container {
    padding-left: 0px;
    padding-right: 0px;
}

.topmenu {
    background-color: #666;
    padding-top: 10px;
    padding-bottom: 5px;
}

.topmenu a,
.topmenu button {
    padding: 5px;
    color: #fff;
    cursor: pointer;
}

.topmenu a:hover,
.topmenu button:hover {
    color: #efefef;
}

#content {
    min-height: 100%;
}

#content ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 0.3em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 20px;
    padding-left: 20px; /* Fallback für alte Browser */
}

#content ul li {
    font-size: 1em;
    line-height: 1.2em;
    margin-bottom: 10px;
}

.stellar {
    background-attachment: fixed !important;
    background-size: cover !important;
    background-position: 50% 50%;
    background-repeat: repeat-y;
    height: 260px;
    position: relative;
}

.stellar .overlay {
    padding-top: 200px;
}

.submenu {
    padding: 15px;
    height: 60px;
    background: rgba(255, 255, 255, 0.9);
}

.submenu h2 {
    margin-bottom: 0;
}

.submenu-nav {
    text-align: right;
    position: relative;
}

.submenu-nav a {
    color: #333;
    display: inline-block;
    padding-left: 15px;
    padding-top: 10px;
    cursor: pointer;
    /* A11Y: Transition in Media Query verschoben (siehe oben) */
    text-decoration: none;
}

.submenu-nav a:hover {
    color: #5a1b63;
    text-decoration: underline;
}

/* GRAUSTUFEN EFFEKTE */
.carousel-inner .item img {
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
    filter: gray;
    -webkit-filter: grayscale(70%);
}
@media (prefers-reduced-motion: no-preference) {
    .carousel-inner .item img {
        transition: all 0.8s ease-in-out;
    }
}

/* A11Y FIX: Auch bei Fokus (Tab) Farbe zeigen */
.carousel-inner .item:hover img,
.carousel-inner .item:focus-within img {
    filter: none;
    -webkit-filter: none;
}

/* SINGLE IMAGE / SWIPEBOX */
.swipebox-item {
    position: relative;
    height: auto;
    overflow: hidden;
}

.swipebox-item img {
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
    filter: gray;
    -webkit-filter: grayscale(70%);
}
@media (prefers-reduced-motion: no-preference) {
    .swipebox-item img {
        transition: all 0.8s ease-in-out;
    }
}

/* A11Y FIX: Auch bei Fokus (Tab) Farbe zeigen */
.swipebox-item:hover img,
.swipebox-item:focus-within img {
    filter: none;
    -webkit-filter: none;
}

.swipebox-item a.view {
    position: absolute;
    top: -10%;
    left: 50%;
    text-align: center;
    background: rgba(217, 179, 28, 0.9);
    color: #fff;
    display: inline-block;
    padding: 0.75em 2em;
    font-size: 1.25em;
    margin-top: -24px;
    margin-left: -70px;
}

.swipebox-item:hover a.view,
.swipebox-item:focus-within a.view {
    top: 50%;
    text-decoration: none;
}

/* STANDORTE OVERLAY */
#standorte {
    position: fixed;
    top: 0px;
    left: 0px;
    height: 100vh;
    width: 35vw;
    background: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    box-shadow: 10px 0px 20px #000000;
    /* A11Y: display: none ist sicherer als visibility: hidden für Screenreader, 
       aber wir nutzen hier JS für fadeOut, daher ok wenn aria-hidden gesetzt wird. */
    visibility: hidden;
}

#standorte.active {
    visibility: visible !important;
}

#standorte .header {
    height: 90px;
    background: #5a1b63;
    overflow-y: hidden;
}

#standorte .header h1 {
    font-size: 28px;
    padding: 29px;
}

#standorte .header .closer {
    position: absolute;
    right: 0px;
    top: 0px;
    padding: 15px;
    padding-right: 20px;
    color:white;
}
#standorte .header .closer:hover,
#standorte .header .closer:focus {
    color: #d8b52a;
}

#standorte .container {
    display: block;
    position: relative;
    height: 100%;
}

#standorte .container .standort {
    display: block;
    position: relative;
    height: 25%;
    background-size: cover !important;
    background-position: center center !important;
    margin: 0 auto;
    border-top: 5px #111 solid;
}

#standorte .container .standort .overlay {
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(80, 80, 80, 0.75);
    text-align: center;
    position: relative;
    padding: 10px;
    transition: background-color ease-in-out 0.7s;
}

#standorte .container .standort .overlay:hover,
#standorte .container .standort .overlay:focus {
    background-color: rgba(100, 100, 100, 0.45);
}

#standorte .container .standort .overlay .img-responsive {
    max-height: 100%;
    width: auto;
}

#standorte .container .standort.linz {
    background: url(../img/standort-bg-linz.jpg);
}

#standorte .container .standort.ischl {
    background: url(../img/standort-bg-ischl.jpg);
}

#standorte .container .standort.hagenberg {
    background: url(../img/standort-bg-hagenberg.jpg);
}

#standorte .container .standort.leonfelden {
    background: url(../img/standort-bg-leonfelden.jpg);
}

.embed-responsive {
    min-height: 500px;
}

.section-item {
    display: none;
}

.section-item.active {
    display: block !important;
}

.footer a.list {
    display: block;
    margin-bottom: 4px;
    margin-top: 3px;
    padding-block:3px;

}

/* STARTSEITE */
#hotelmenu {
    margin-top: -60px;
}

#hotelmenu a {
    display: block;
    padding: 0px !important;
    margin: 0px !important;
    text-decoration: none;
    color: white !important;
}
#hotelmenu a .location h2 {
    color: white !important;}

#hotelmenu a.DISABLED {
    cursor: default !important;
}

#hotelmenu .location {
    display: block;
    color: #fff !important;
    background: #5a1b63 !important;
    margin-left: 0 !important;
    height: 60px;
    padding: 0.8em;
    font: 700 1.25em Raleway;
    text-align: center;
    transition: all ease-in-out 0.8s;
    
}

  #hotelmenu a:hover .location h2,
    #hotelmenu a:focus .location h2 {
        color: #5a1b63 !important;
    }

    #hotelmenu a:hover .location,
    #hotelmenu a:focus .location {
        background: #eaeaea !important;
    }

        


@media (min-width: 1200px) {
  

    #hotelmenu a:hover,
    #hotelmenu a:focus {
        z-index: 999;
        transform: scale(1.4);
    }

    /* DISABLED STARTSEITE */
    #hotelmenu a.DISABLED:hover .location {
        color: #fff !important;
        background: #5a1b63 !important;
    }

    #hotelmenu a.DISABLED:hover {
        z-index: 999;
        transform: none !important;
    }
}

@media (min-width: 900px) {
    #hotelmenu a:hover .location,
    #hotelmenu a:focus .location {
        background: #eaeaea !important;
        color: #5a1b63 !important;
    }

    /* DISABLED STARTSEITE */
    #hotelmenu a.DISABLED:hover .location {
        color: #fff !important;
        background: #5a1b63 !important;
    }
}

#languages {
    padding: 20px;
    text-align: center;
}

#languages a {
    display: inline-block;
    color: #333;
    font-weight: 700;
    margin-left: 10px;
    margin-right: 10px;
    text-decoration: none;
    margin-top: 20px;
}
@media (prefers-reduced-motion: no-preference) {
    #languages a {
        transition: all ease-in-out 0.8s;
        -webkit-transition: all ease-in-out 0.8s;
    }
}

#languages a:hover,
#languages a:focus {
    color: #8c7310; /* Darker Gold */
}

#languages a img {
    -webkit-filter: grayscale(100%);
    filter: gray;
    filter: grayscale(100%);
}

#languages a:hover img,
#languages a:focus img {
    filter: none;
    -webkit-filter: none;
}

.img-p p {
    margin-bottom: 0px;
}

#logo img {
    width: 500px;
    height: auto;
}

/* BACKGROUND BANNER/STELLARS */
.banner.linz1 { background-image: url(../images/linz/overlay-first.jpg); }
.stellar.linz2 { background-image: url(../images/linz/overlay-stadt.jpg); }
.stellar.linz3 { background-image: url(../images/linz/overlay-arkadenhof.jpg); }
.stellar.linz4 { background-image: url(../images/linz/overlay-aec.jpg); }
.stellar.linz5 { background-image: url(../images/linz/overlay-sciencepark.jpg); }

.banner.hagenberg1 { background-image: url(../images/hagenberg/overlay-hagenberg-first2.jpg); }
.stellar.hagenberg2 { background-image: url(../images/hagenberg/overlay-hagenberg-first.jpg); }
.stellar.hagenberg3 { background-image: url(../images/hagenberg/overlay-hagenberg5.jpg); }
.stellar.hagenberg4 { background-image: url(../images/hagenberg/overlay-hagenberg2.jpg); }
.stellar.hagenberg5 { background-image: url(../images/hagenberg/overlay-hagenberg7.jpg); }

.banner.leonf1 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden-first.jpg); }
.stellar.leonf2 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden3.jpg); }
.stellar.leonf3 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden4.jpg); }
.stellar.leonf4 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden5.jpg); }
.stellar.leonf5 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden2.jpg); }

.banner.ischl1 { background-image: url(../images/ischl/badischl1.jpg); }
.stellar.ischl2 { background-image: url(../images/ischl/banner_badischl.jpg); }
.stellar.ischl3 { background-image: url(../images/ischl/badischl2.jpg); }
.stellar.ischl4 { background-image: url(../images/ischl/badischl3.jpg); }
.stellar.ischl5 { background-image: url(../images/ischl/badischl4.jpg); }

@media (max-width: 1200px) {
    #standorte {
        width: 60vw;
    }
    .img-p {
        min-height: 500px;
    }
}

@media (max-width: 960px) {
    #mainnav .nav > li > a {
        padding-right: 8px;
        padding-left: 8px;
        font-size: 14px;
        padding-top: 16px;
        padding-bottom: 16px;
    }
}

@media (max-width: 900px) {
    #standorte {
        width: 70vw;
    }
    .submenu {
        padding-left: 10px;
        padding-right: 10px;
    }
    .img-p {
        min-height: 300px;
    }
    #mainnav .nav > li > a {
        padding-right: 6px;
        padding-left: 6px;
        font-size: 14px;
        padding-top: 14px;
        padding-bottom: 14px;
    }
}

@media (max-width: 767px) {
    #standorte {
        width: 100vw;
    }
    .submenu {
        padding-left: 0px;
        padding-right: 0px;
    }
    .img-p {
        min-height: 300px;
    }
    #logo img {
        width: 400px;
        height: auto;
    }
    .submenu-nav a {
        color: #333;
        display: inline-block;
        padding-left: 10px;
        padding-top: 3px;
        font-size: 14px;
        cursor: pointer;
        text-decoration: none;
    }
    .topmenu a {
        padding: 3px;
        color: #fff;
        cursor: pointer;
        font-size: 14px;
    }
    #mainnav .nav {
        padding-left: 15px;
    }
    .embed-responsive {
        margin: 25px;
    }
    
    /* Mobile Backgrounds */
    .banner.linz1 { background-image: url(../images/linz/mobile/overlay-first.jpg); }
    .stellar.linz2 { background-image: url(../images/linz/mobile/overlay-stadt.jpg); }
    .stellar.linz3 { background-image: url(../images/linz/mobile/overlay-arkadenhof.jpg); }
    .stellar.linz4 { background-image: url(../images/linz/mobile/overlay-aec.jpg); }
    .stellar.linz5 { background-image: url(../images/linz/mobile/overlay-sciencepark.jpg); }

    .banner.hagenberg1 { background-image: url(../images/hagenberg/mobile/overlay-hagenberg-first2.jpg); }
    .stellar.hagenberg2 { background-image: url(../images/hagenberg/mobile/overlay-hagenberg-first.jpg); }
    .stellar.hagenberg3 { background-image: url(../images/hagenberg/mobile/overlay-hagenberg5.jpg); }
    .stellar.hagenberg4 { background-image: url(../images/hagenberg/mobile/overlay-hagenberg2.jpg); }
    .stellar.hagenberg5 { background-image: url(../images/hagenberg/mobile/overlay-hagenberg7.jpg); }

    .banner.leonf1 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden-first.jpg); }
    .stellar.leonf2 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden3.jpg); }
    .stellar.leonf3 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden4.jpg); }
    .stellar.leonf4 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden5.jpg); }
    .stellar.leonf5 { background-image: url(../images/leonfelden/mobile/overlay-leonfelden2.jpg); }

    .banner.ischl1 { background-image: url(../images/ischl/mobile/badischl1.jpg); }
    .stellar.ischl2 { background-image: url(../images/ischl/mobile/banner_badischl.jpg); }
    .stellar.ischl3 { background-image: url(../images/ischl/mobile/badischl2.jpg); }
    .stellar.ischl4 { background-image: url(../images/ischl/mobile/badischl3.jpg); }
    .stellar.ischl5 { background-image: url(../images/ischl/mobile/badischl4.jpg); }
}

@media (max-width: 487px) {
    #logo {
        padding-top: 100px;
    }
    #logo img {
        width: 320px;
        height: auto;
    }
}


/* ============================================================
   A11Y FIX: Touch Targets (Radio Buttons & Checkboxen)
   Google verlangt mind. 48x48px klickbare Fläche
   ============================================================ */

/* Das Label wird zur großen Klickfläche gemacht */
.radio-inline, .checkbox-inline {
    display: block !important;       /* Macht das Label zum Block-Element (ganze Breite) */
    min-height: 48px;                /* Mindesthöhe erzwingen */
    padding: 12px 15px 12px 35px;    /* Innenabstand vergrößern (35px links für den Button) */
    margin-bottom: 10px;             /* Abstand zum nächsten Element */
    margin-left: 0 !important;       /* Bootstrap Margin Reset */
    cursor: pointer;                 /* Zeigefinger-Icon bei Maus */
}

/* Der eigentliche Radio-Button wird positioniert und vergrößert */
.radio-inline input[type="radio"], 
.checkbox-inline input[type="checkbox"] {
    position: absolute;
    margin-left: -25px !important;   /* Zieht den Button in das linke Padding */
    margin-top: 2px !important;      /* Vertikale Ausrichtung zum Text */
    transform: scale(1.5);           /* Vergrößert den kleinen Kreis um 50% */
    accent-color: #5a1b63;           /* Färbt den Radio-Button lila (in modernen Browsern) */
}

/* Optional: Hover-Effekt für besseres Feedback */
.radio-inline:hover {
    background-color: rgba(90, 27, 99, 0.05); /* Ganz helles Lila beim Drüberfahren */
    border-radius: 4px;
}

#mainnav {
    height:60px !important;
    overflow:hidden !important;
}
@media (max-width: 767px) {
    #mainnav {
        height:auto !important;
    }
}