@charset "utf-8";
/* CSS Document */
body, div {
    margin: 0;
    padding: 0;
}
body {
    background-color: #fff;
}
.clear {
    clear: both;
}
.clear_responsive {
    clear: none;
}
#content {
    max-width: 1920px;
    min-width: 280px;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: left;
}
#content2 {
    width: 100%;
    float: none;
    position: relative;
    background: #fff;
    box-shadow: 0px 0px 100px #ccc;
}
/* Styling für den Cookie-Banner */
.cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: white;
    color: rgba(0, 0, 0, 0.87);
    padding: 15px 25px;
    box-shadow: 0 -2px 5px rgba(0,0,0,0.2);
    z-index: 1000;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.cookie-banner p {
    margin: 0;
    flex-grow: 1;
}

.cookie-banner-buttons button {
    padding: 8px 15px;
    border: 1px solid #fff;
    border-radius: 5px;
    background-color: transparent;
    color: #fff;
    cursor: pointer;
    margin-left: 10px;
    transition: background-color 0.3s, color 0.3s;
}

.cookie-banner-buttons button#cookie-accept-btn {
    background-color: #9b2a49; /* Ihre Theme-Farbe */
    border-color: #9b2a49;
}

 .cookie-banner-buttons button#cookie-decline-btn {
    background-color: white; /* Ihre Theme-Farbe */
    border-color: #9b2a49;
    color: #9b2a49;
}

.cookie-banner-buttons button:hover {
    background-color: #C53A60;
    transition: 0.3s;
}
.content_innen {
    max-width: 1200px;
    position: relative;
    margin: 0 auto;
}
#button {
    display: none;
    background-color: #cccccc;
    width: 50px;
    height: 50px;
    text-align: center;
    border-radius: 25px;
    margin: 25px 25px 14px 25px;
    position: fixed;
    bottom: 0px;
    right: 0px;
    transition: 0.3s;
    z-index: 998;
    opacity: 0.9;
}
#button:hover {
    cursor: pointer;
    background-color: #999999;
}
img.button_top {
    margin: 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 15px;
}
/* Underline From Center */
.hvr-underline-from-center {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    overflow: hidden;
}
.hvr-underline-from-center:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 51%;
    right: 51%;
    bottom: 0;
    background: #E0E0E0;
    height: 1px;
    -webkit-transition-property: left, right;
    transition-property: left, right;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}
.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {
    left: 0;
    right: 0;
}
/* Forward */
.hvr-forward {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    transition-property: transform;
}
.hvr-forward:hover {
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
}
p, ul, h1, h2, h3 {
    font-family: 'Open Sans', sans-serif;
    color: rgba(0, 0, 0, 0.87);
    font-size: 16px;
    margin: 0;
    padding: 0;
    text-align: left;
    line-height: 26px;
}
a {
    text-decoration: none;
    color: rgba(0, 0, 0, 0.87);
}
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 100;
    /* IE9 Compat Modes */
    src: url('fonts/roboto-v18-latin-regular.eot');
    src: local('Roboto Thin'), local('Roboto-Thin'), /* IE6-IE8 */ url('fonts/roboto-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* Super Modern Browsers */ url('fonts/roboto-v18-latin-regular.woff2') format('woff2'), /* Modern Browsers */ url('fonts/roboto-v18-latin-regular.woff') format('woff'), /* Safari, Android, iOS */ url('fonts/roboto-v18-latin-regular.ttf') format('truetype'), /* Legacy iOS */ url('fonts/roboto-v18-latin-regular.svg') format('svg');
}
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 100;
    /* IE9 Compat Modes */
    src: url('fonts/open-sans-v15-latin-regular.eot');
    src: local('Open Sans'), local('Open Sans'), /* IE6-IE8 */ url('fonts/open-sans-v15-latin-regular?#iefix') format('embedded-opentype'), /* Super Modern Browsers */ url('fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Modern Browsers */ url('fonts/open-sans-v15-latin-regular.woff') format('woff'), /* Safari, Android, iOS */ url('fonts/open-sans-v15-latin-regular.ttf') format('truetype'), /* Legacy iOS */ url('fonts/open-sans-v15-latin-regular.svg') format('svg');
}
/* Logo */
img.logo2 {
    margin-left: 0;
    padding-top: 25px;
    height: auto;
    width: 100%;
    max-width: 210px;
}
p.logo3 {
    padding: 0;
    margin: 0;
}
.logo {
    width: 35%;
    float: left;
    height: 190px;
    display: table;
}
/* Navigation */
.navi {
    width: 65%;
    float: right;
    height: 190px;
    display: table;
}
li.naviinline_office {
    display: inline;
    list-style-type: none;
    margin-left: 0px;
    font-size: 16px;
    text-transform: none;
    font-weight: bold;
    color: #9b2a49;
    background-image: url(/assets/img/worker.png);
    background-repeat: no-repeat;
    background-position: center 3px;
    padding-top: 40px;
    transition: ease 0.3s;
    background-size: 35px 35px;
}
li.naviinline_self {
    display: inline;
    list-style-type: none;
    margin-left: 50px;
    font-size: 16px;
    text-transform: none;
    font-weight: bold;
    color: #9b2a49;
    background-image: url(/assets/img/box.png);
    background-repeat: no-repeat;
    background-position: center 3px;
    padding-top: 30px;
    transition: ease 0.3s;
    background-size: 26px 26px;
}
li.naviinline_kontakt {
    display: inline;
    list-style-type: none;
    margin-left: 50px;
    margin-right: 0%;
    font-size: 16px;
    text-transform: none;
    font-weight: bold;
    color: #9b2a49;
    background-image: url(/assets/img/pin.png);
    background-repeat: no-repeat;
    background-position: center 3px;
    padding-top: 30px;
    transition: ease 0.3s;
    background-size: 26px 26px;
}
li.naviinline_buero {
    display: inline;
    list-style-type: none;
    margin-left: 0px;
    font-size: 16px;
    text-transform: none;
    font-weight: bold;
    color: #9b2a49;
    background-image: url(/assets/img/worker.png);
    background-repeat: no-repeat;
    background-position: center 3px;
    padding-top: 38px;
    transition: ease 0.3s;
    background-size: 35px 35px;
}
ul.navi2 {
    display: table-cell;
    vertical-align: bottom;
    padding-bottom: 15px;
    text-align: right;
    letter-spacing: 1px;
}
a.navi3 {
    text-decoration: none;
    color: #9b2a49;
}
a.navi3:hover {
    transition: all ease 0.2s;
    color: #205e4c;
    padding-bottom: 0px;
}
/* Slider */
img.slider1 {
    max-width: 1920px;
    height: auto;
    width: 100%;
    vertical-align: middle;
}
.slider_mobil {
    display: none;
}
img.slider_mobil_img {
    max-width: 480px;
    height: auto;
    width: 100%;
}
/* Einleitung Startseite */
h1 {
    font-size: 40px;
    text-align: center;
    line-height: 50px;
    color: #9b2a49;
    font-weight: bold;
    margin-top: 100px;
    margin-bottom: 30px;
}
h1.buero_headline {
    font-size: 40px;
    text-align: left;
    line-height: 50px;
    color: #9b2a49;
    font-weight: bold;
    margin-top: 100px;
    margin-bottom: 30px;
    margin-left: 5%;
    margin-right: 5%;
}
p.einleitung {
    text-align: center;
    font-size: 16px;
    line-height: 27px;
    margin-left: 15%;
    margin-right: 15%;
    margin-bottom: 100px;
}
div.alert button.close {
    border: none;
    float: right;
    background: none;
}
/* Buero Intro */
#buero {
    padding-bottom: 200px;
    padding-top: 50px;
}
#buero ul {
    list-style-type: none;
    padding-left: 50px;
    text-align: left;
    font-weight: 600;
}
#buero ul li:before {
    content: url("/assets/img/checkmark.png");
    position: absolute;
    top: 10px;
    left: 0;
}
#buero li {
    padding-left: 50px;
    padding-top: 10px;
    line-height: 35px;
    position: relative;
}
#buero div:nth-of-type(1) {
    float: left;
    width: 30%;
    margin-left: 20%;
}
#buero div:nth-of-type(2) {
    float: left;
    width: 40%;
}
.intro_buero ul {
    list-style-type: none;
    text-align: left;
    line-height: 35px;
    margin-bottom: 15px;
    margin-left: 5%;
    margin-right: 5%;
}
.intro_buero p {
    text-align: left;
    font-size: 16px;
    line-height: 27px;
    margin-left: 5%;
    margin-right: 5%;
    margin-bottom: 15px;
}
.intro_buero p:nth-of-type(4) {
    margin-bottom: 100px;
}
#kontakt_buero p {
    text-align: center;
    line-height: 30px;
    padding-bottom: 10px;
}
a.change_btn {
    font-family: 'Open Sans', sans-serif;
    background-color: #0e6135;
    color: #ffffff;
    padding: 10px 0px;
    position: absolute;
    left: 32%;
    top: 0;
    font-weight: 600;
    z-index: 999;
    transition: 0.3s;
    width: 280px;
    text-align: center;
}
@media screen and (max-width: 1699px) {
    a.change_btn {
        left: 27%;
    }
}
@media screen and (max-width: 1499px) {
    a.change_btn {
        left: 22%;
    }
}
@media screen and (max-width: 999px) {
    a.change_btn {
        left: 25%;
    }
}
@media screen and (max-width: 899px) {
    a.change_btn {
        left: 28%;
    }
}
a.change_btn:hover {
    background-color: #127E44;
    color: #ffffff;
    transition: 0.3s;
}
p.anfrage {
    text-align: center;
    margin-top: 60px;
}
a.anfrage_link {
    background-color: #9b2a49;
    color: #ffffff;
    padding: 15px 30px;
    font-size: 20px;
    border-radius: 5px;
    transition: 0.3s;
}
a.anfrage_link:hover {
    background-color: #C53A60;
    transition: 0.3s;
}
ul.buero_aufz {
    font-size: 16px;
    line-height: 25px;
    background-color: #ffffff;
    color: #205e4c;
    list-style-type: none;
}
li.buero {
    margin-left: 0px;
    margin-right: 10px;
    background-image: url(/assets/img/pfeil_greun.png);
    background-repeat: no-repeat;
    background-size: 10px 10px;
    background-position: 0px 11px;
    padding-left: 15px;
    padding-top: 5px;
}
@media screen and (max-width: 767px) {
    .mt-responsive {
        margin-top: 16px;
    }
    .startdate_responsive {
        display: none;
    }
}
@media screen and (max-width: 699px) {
    a.change_btn {
        padding: 10px 25px;
        position: fixed;
        width: 100%;
        text-align: center;
        left: 0;
    }
    a.change_btn:hover {
        padding: 10px 25px;
    }
    .intro_buero p {
        margin-bottom: 15px;
    }
    .intro_buero ul {
        padding-left: 5%;
        padding-right: 5%;
    }
    #buero {
        padding-bottom: 30px;
        padding-top: 0px;
    }
    h1 {
        margin-top: 30px;
    }
    #selfstorage {
        padding-bottom: 60px;
    }
    .intro_buero p:nth-of-type(4) {
        margin-bottom: 50px;
    }
}
@media screen and (max-width: 999px) {
    #buero div:nth-of-type(1) {
        float: none;
        width: 100%;
        margin-left: 0%;
    }
    #buero div:nth-of-type(2) {
        float: none;
        width: 100%;
    }
    #buero ul {
        list-style-type: none;
        padding-left: 0px;
        text-align: center;
        font-weight: 600;
    }
    #buero ul:nth-of-type(1) {
        list-style-type: none;
        padding-left: 0px;
        text-align: center;
        margin-bottom: 0px;
    }
    #buero li {
        padding-left: 10px;
        padding-top: 10px;
        line-height: 35px;
        position: relative;
    }
    #buero ul li:before {
        content: url("/assets/img/checkmark.png");
        position: relative;
        top: 10px;
        left: 0;
        padding-right: 15px;
    }
    #buero {
        padding-bottom: 50px;
        padding-top: 0px;
    }
}
/* Self Storage NEU!*/
.clear_selfstorage {
    clear: both;
}
#selfstorage h2 {
    padding-bottom: 30px;
}
#selfstorage {
    padding-bottom: 130px;
}
@media screen and (max-width: 699px) {
    p, ul, h1, h2, h3 {
        -ms-hyphens: auto;
        -webkit-hyphens: auto;
        hyphens: auto;
    }
    #selfstorage {
        padding-bottom: 60px;
    }
}
#selfstorage .kasten {
    width: 30%;
    background-color: #fff;
    padding: 0px;
    box-shadow: 0 10px 40px -10px rgba(0, 64, 128, .2);
    float: left;
    margin-top: 2.66%;
    margin-right: 1.66%;
    margin-left: 1.66%;
    border-radius: 5px;
}
#selfstorage .kasten img {
    width: 100%;
    max-width: 360px;
    height: auto;
    display: block;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
#selfstorage .kasten p.claim {
    color: #fff;
    font-weight: 500;
    padding: 15px 15px;
    background-color: #9b2a49;
    font-size: 16px;
}
#selfstorage .kasten_buero {
    width: 45%;
    background-color: #fff;
    padding: 0px;
    box-shadow: 0 10px 40px -10px rgba(0, 64, 128, .2);
    float: left;
    margin-top: 2.66%;
    margin-right: 1.66%;
    margin-left: 1.66%;
    border-radius: 5px;
}
#selfstorage .kasten_buero img {
    width: 100%;
    max-width: 600px;
    height: auto;
    display: block;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
@media screen and (max-width: 699px) {
    #selfstorage .kasten_buero {
        width: 90%;
        background-color: #fff;
        padding: 0px;
        box-shadow: 0 10px 40px -10px rgba(0, 64, 128, .2);
        float: left;
        margin-top: 35px;
        margin-right: 5%;
        margin-left: 2.66%;
        border-radius: 5px;
    }
    #selfstorage .kasten_buero img {
        width: 100%;
        max-width: 600px;
        height: auto;
        display: block;
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }
}
#selfstorage .kasten_buero p.claim {
    color: #9b2a49;
    font-weight: 800;
    padding: 15px 15px;
    background-color: #ffffff;
    font-size: 20px;
    text-align: center;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}
/* Self Storage */
.grau {
    background-color: #f9f9f9;
    display: table;
    margin: 0 auto;
    width: 100%;
}
.grau_abstand {
    padding-top: 50px;
}
h2 {
    font-size: 45px;
    text-align: center;
    line-height: 50px;
    color: #9b2a49;
    font-weight: bold;
    padding-bottom: 50px;
    padding-top: 100px;
}
.texte_block {
    width: 30%;
    float: left;
}
.block_links {
    margin-right: 5%
}
.block_rechts {
    margin-left: 5%;
    float: right;
}
p.selfstorage {
    font-size: 15px;
    line-height: 22px;
    background-color: #ffffff;
    padding: 0px 15px 15px 15px;
}
details p.selfstorage {
    font-size: 15px;
    line-height: 22px;
    background-color: #ffffff;
    padding: 15px 15px 0px 15px;
}
p.selfstorage_kleiner_abstand {
    font-size: 15px;
    line-height: 22px;
    background-color: #ffffff;
    padding: 0px 15px 10px 15px;
}
p.text_im_bild {
    position: absolute;
    padding: 10px 0 10px 3%;
    background-color: #9b2a49;
    opacity: 0.9;
    margin: 0;
    bottom: 0;
    left: 0;
    width: 97%;
}
span.weiss {
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    padding-left: 0px;
    padding-right: 10px;
}
span.weiss_handel {
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    padding-left: 0px;
    padding-right: 10px;
}
img.self {
    width: 100%;
    max-width: 360px;
    height: auto;
    margin-top: 20px;
    display: block;
}
img.mehr {
    margin-top: 22px;
}
.bild_text {
    position: relative;
}
ul.self_aufz {
    font-size: 14px;
    line-height: 22px;
    background-color: #ffffff;
    color: #205e4c;
    list-style-type: none;
}
li.self {
    margin-left: 15px;
    margin-right: 10px;
    background-image: url(/assets/img/pfeil_greun.png);
    background-repeat: no-repeat;
    background-size: 10px 10px;
    background-position: 0px 11px;
    padding-left: 15px;
    padding-top: 5px;
}
span.schwarz {
    color: #1a171b;
}
ul.studenten {
    padding-top: 10px;
}
summary {
    font-family: 'Roboto', sans-serif;
    color: #205e4c;
    font-size: 15px;
    margin-top: 0px;
    padding-top: 10px;
    padding-bottom: 20px;
    padding-left: 5px;
    padding-right: 7px;
    cursor: pointer;
    outline: none;
    background-color: #ffffff;
    height: 25px;
    letter-spacing: 0.5px;
}
.no-details details > summary:before {
    float: left;
    width: 20px;
    content: url(/assets/img/pfeil_mehr_1.png);
    background-color: #ffffff;
    height: 22px;
    padding-top: 1px;
    padding-left: 7px;
}
details {
    padding: 10px;
    padding-bottom: 20px;
}
.no-details summary {
    padding-left: 0px;
}
.no-details details.open > summary:before {
    content: url(/assets/img/pfeil_mehr_2.png);
    background-color: #ffffff;
    height: 22px;
}
.no-details details.open {
    padding-left: 0;
}
details[open] summary ~ * {
    animation: sweep .3s ease-in-out;
}
summary {
    list-style: none;
}
summary::-webkit-details-marker {
    display: none;
}
summary::before {
    padding-right: 7px;
    content: url(/assets/img/pfeil_mehr_1.png);
}
details[open] summary::before {
    padding-right: 7px;
    content: url(/assets/img/pfeil_mehr_2.png);
}
details[open] summary {
    font-weight: bold;
}
@keyframes sweep {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
p.moeglichkeiten {
    padding-top: 10px;
}
.grau_ie {
    background-color: #ffffff;
    min-height: 23px;
}
.block_rechts_res_platz {
    display: none;
}
.abstand_selfstorage_unten {
    height: 100px;
}
/* Angaben nur für Edge */
@supports (-ms-ime-align:auto) {
    summary {
        cursor: pointer;
        outline: none;
    }
    span.weiss {
        padding-right: 0px;
    }
    p.selfstorage {
        padding-top: 10px;
    }
    ul.self_aufz {
        padding-top: 10px;
    }
    ul.self_aufz_ie {
        padding-top: 0px;
    }
    .grau_ie {
        background-color: #ffffff;
        min-height: 30px;
    }
    .abstand_ie_summary {
        height: 4px;
    }
}
/* Angaben nur für IE */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    p.selfstorage {
        padding-top: 10px;
    }
    ul.self_aufz {
        padding-top: 10px;
    }
    ul.self_aufz_ie {
        padding-top: 0px;
    }
    .grau_ie {
        background-color: #ffffff;
        min-height: 30px;
    }
    .abstand_ie_summary {
        height: 4px;
    }
}
/* Kontakt */
.kontakt {
    float: left;
    width: 50%;
}
.oeffnungszeiten {
    float: right;
    width: 50%;
}
a.kontakt_link {
    text-decoration: none;
    color: #1a171b;
}
a.kontakt_link:hover {
    transition: all ease 0.2s;
    color: #9b2a49;
}
a.tel {
    text-decoration: none;
    color: #1a171b;
    cursor: default;
}
a.tel:hover {
    text-decoration: none;
    color: #1a171b;
    cursor: default;
}
p.abstand_kontakt_oben {
    margin-top: 15px;
}
p.oeffnung {
    font-weight: bold;
    margin-bottom: 15px;
    color: #205e4c;
}
p.kontakt_abstand {
    margin-left: 10px;
    text-align: right;
    margin-right: 5%;
}
p.oeffnung_abstand {
    margin-right: 10px;
    text-align: left;
    margin-left: 5%;
}
.karte {
    position: relative;
}
/* Styling für den Karten-Platzhalter, wenn Cookies abgelehnt werden */
.map-placeholder {
    position: relative; /* Wichtig für absolute Positionierung des Overlays */
    width: 100%;
    height: 360px; /* Oder eine andere feste Höhe, die zur Karte passt */
    overflow: hidden; /* Stellt sicher, dass das Bild innerhalb der Grenzen bleibt */
    display: flex; /* Für die zentrierte Anzeige, falls kein Overlay */
    justify-content: center;
    align-items: center;
    background-color: #f0f0f0; /* Fallback, falls Bild nicht lädt */
    border: none;
    text-align: center; /* Text innerhalb zentrieren */
    margin-top: 50px;
    margin-bottom: 50px;
}

.map-placeholder-image {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Bild füllt den Container ohne Verzerrung, schneidet aber ggf. Teile ab */
    display: block; /* Entfernt eventuellen zusätzlichen Leerraum unter dem Bild */
    filter: blur(2px); /* Leichte Unschärfe, wenn gewünscht */
}

.map-placeholder-overlay {
    position: absolute; /* Überlagert das Bild */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* Zentriert das Overlay exakt */
    background-color: #9b2a49; /* Ihre Theme-Farbe mit Transparenz */
    color: #fff !important;
    padding: 25px 35px;
    border-radius: 5px; /* Abgerundete Ecken */
    max-width: 80%; /* Maximale Breite des Info-Rechtecks */
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
    text-align: center;
}

.map-placeholder-overlay p {
    margin-bottom: 10px;
    font-size: 1.1em;
    line-height: 1.4;
}

.map-placeholder-overlay .change-consent-link {
    display: inline-block; /* Für Button-ähnliches Verhalten */
    margin-top: 15px;
    padding: 10px 20px;
    background-color: #fff;
    color: #9b2a49; /* Ihre Theme-Farbe */
    border: none;
    border-radius: 5px;
    text-decoration: none;
    font-weight: 600;
    transition: background-color 0.3s, color 0.3s;
}

.map-placeholder-overlay .change-consent-link:hover {
    background-color: #eee;
    color: #7b1a39;
}

/* Stellen Sie sicher, dass der Iframe die gleiche Höhe wie der Platzhalter hat, wenn er aktiv ist */
#google-maps-iframe {
    width: 100%;
    height: 360px; /* Gleiche Höhe wie der Platzhalter */
}
.karte iframe {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 400px;
    height: auto;
    border: 0;
    margin-top: 50px;
    margin-bottom: 50px;
}
/* Footer */
a.abschluss3 {
    text-decoration: none;
    color: #EDEDED;
}
a.abschluss3:hover {
    text-decoration: none;
}
p.copyright {
    padding-left: 28.64%;
    color: #EDEDED;
    display: table-cell;
    vertical-align: middle;
    font-size: 14px;
}
.abschluss {
    width: 100%;
    background: #9b2a49;
    height: 80px;
}
.abschluss_links {
    width: 55%;
    float: left;
    display: table;
    height: 80px;
}
.abschluss_rechts {
    width: 45%;
    float: right;
    display: table;
    height: 80px;
}
ul.abschluss1 {
    display: table-cell;
    vertical-align: middle;
    color: #EDEDED;
    text-align: right;
    font-size: 14px;
}
li.abschluss2 {
    list-style-type: none;
    display: inline;
}
li.abschluss_bull {
    list-style-type: none;
    padding-right: 10px;
    padding-left: 10px;
    display: inline;
}
li.abschluss2_daten {
    list-style-type: none;
    display: inline;
    margin-left: 0px;
    padding-right: 35%;
}
h2.impressum {
    font-size: 35px;
    text-align: center;
    line-height: 40px;
    color: #9b2a49;
    font-weight: bold;
    padding-bottom: 50px;
    padding-top: 70px;
}
p.impressum {
    text-align: center;
    font-size: 16px;
    line-height: 27px;
    margin-left: 15%;
    margin-right: 15%;
    margin-bottom: 70px;
}
li.naviinline_home {
    display: inline;
    list-style-type: none;
    margin-left: 0px;
    font-size: 16px;
    text-transform: none;
    font-weight: bold;
    color: #9b2a49;
    background-image: url(/assets/img/back.png);
    background-repeat: no-repeat;
    background-position: 5px 0px;
    margin-top: 30px;
    padding-left: 40px;
    background-size: 26px 26px;
    margin-right: 90px;
    transition: 0.3s;
}
li.naviinline_home:hover {
    background-position: 0px 0px;
    transition: 0.3s;
}
.carousel {
    margin-top: 0px;
}
.carousel-caption {
    position: absolute;
    z-index: 1;
    display: table;
    width: 100%;
    height: 100%;
}
.carousel-caption p.anfrage {
    text-align: left;
    margin: 0 0 0 50px;
}
.carousel_mobile_none {
    display: none;
}
.absolute-div {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.carousel-caption h3 {
    padding: 50px;
    text-align: left;
    font-size: 35px;
    line-height: 65px;
    color: #9b2a49;
    font-weight: 600;
}
.carousel-caption h3 span {
    background: rgba(255, 255, 255, .7); padding: 5px 15px;
}
.item {
    position: relative;
}
.carousel-indicators button {
    border-radius: 50%;
    width: 10px;
    height: 10px;
    background-color: #404040;
}
.carousel-indicators [data-bs-target] {
    width: 10px;
    height: 10px;
}
@media screen and (max-width: 1400px) {
    .carousel-caption h3 {
        padding: 30px 0 25px 0;
        text-align: left;
        font-size: 30px;
        line-height: 60px;
        color: #B30407;
    }
    .carousel-caption p.anfrage {
        text-align: left;
        margin: 0 0 0 0;
    }
    a.anfrage_link {
        padding: 10px 20px;
        font-size: 17px;
        border-radius: 5px;
        transition: 0.3s;
    }
}
@media screen and (max-width: 1200px) {
    .carousel-caption h3 {
        padding: 30px 0 25px 0;
        text-align: left;
        font-size: 30px;
        color: #B30407;
    }
    .carousel-caption p.anfrage {
        text-align: left;
        margin: 0 0 0 0;
    }
    a.anfrage_link {
        padding: 10px 20px;
        font-size: 17px;
        border-radius: 5px;
        transition: 0.3s;
    }
}
@media screen and (max-width: 899px) {
    .caption_none {
        display: none;
    }
    .carousel-caption p.anfrage {
        text-align: left;
        margin: 50px 0 0 50px;
    }
    .carousel-caption {
        left: 5%;
    }
}
@media screen and (max-width: 699px) {
    .carousel-caption p.anfrage {
        margin: 50px 0 0 50px;
    }
    .carousel_none {
        display: none;
    }
    .carousel_mobile_none {
        display: block;
    }
    h2.buero {
        text-align: left;
        margin-left: 5%;
        margin-right: 5%;
    }
    #buero ul:nth-of-type(1) {
        text-align: left;
    }
    #buero {
        margin-left: 3%;
        margin-right: 5%;
    }
}
/* Responsive Angaben */
@media screen and (max-width: 1200px) {
    p.logo3 {
        margin-left: 10%;
    }
    li.naviinline_kontakt {
        margin-right: 10%;
    }
    li.naviinline_home {
        margin-right: 10%;
    }
    .texte_block {
        width: 29%;
        float: left;
    }
    .block_links {
        margin-right: 3%;
        margin-left: 3%;
    }
    .block_rechts {
        margin-left: 3%;
        margin-right: 3%;
        float: right;
    }
    span.weiss_handel {
        font-size: 14px;
    }
    #selfstorage .kasten p.claim {
        font-size: 15px;
    }
}
@media screen and (max-width: 1115px) {
    #selfstorage .kasten p.claim {
        font-size: 14px;
    }
    @media screen and (max-width: 1060px) {
        span.weiss {
            font-size: 15px;
        }
        .grau_abstand {
            padding-top: 30px;
        }
        span.weiss_handel {
            font-size: 13px;
        }
        #selfstorage .kasten {
            width: 33.96%;
            margin-top: 2.66%;
            margin-right: 8.02%;
            margin-left: 8.02%;
        }
        #selfstorage .kasten p.claim {
            font-size: 15px;
        }
        .clear_responsive {
            clear: both;
        }
        .clear_selfstorage {
            clear: none;
        }
    }
}
@media screen and (max-width: 995px) {
    span.weiss {
        font-size: 14px;
    }
    .grau_abstand {
        padding-top: 20px;
    }
}
@media screen and (max-width: 980px) {
    #selfstorage .kasten {
        width: 36.73%;
        margin-right: 6.63%;
        margin-left: 6.63%;
    }
}
@media screen and (max-width: 950px) {
    span.weiss {
        font-size: 14px;
    }
    .texte_block {
        width: 40%;
        height: auto;
        max-width: 360px;
        float: none;
        margin-left: 0;
    }
    .block_links {
        margin-right: 0;
        margin-left: 0;
        float: none
    }
    .block_rechts {
        margin-left: 5%;
        margin-right: 5%;
        float: none;
    }
    .block_rechts_res {
        margin-right: 5%;
        margin-left: 5%;
        float: right;
    }
    .block_rechts_res_platz {
        margin-right: 5%;
        margin-left: 5%;
        float: right;
        display: block;
    }
    .block_rechts_doppelt {
        display: none;
    }
    .block_links_res {
        margin-right: 5%;
        margin-left: 5%;
        float: left;
    }
    .abstand_unten_res {
        margin-bottom: 20px;
    }
    p.oeffnung_abstand {
        margin-right: 5%;
    }
}
@media screen and (max-width: 902px) {
    #selfstorage .kasten {
        width: 39.91%;
        margin-right: 5%;
        margin-left: 5%;
    }
}
@media screen and (max-width: 890px) {
    .logo {
        width: 100%;
        float: none;
        height: 200px;
        margin-bottom: 35px;
    }
    .navi {
        width: 100%;
        float: none;
        height: auto;
    }
    img.logo2 {
        padding-left: 0px;
        padding-top: 30px;
        margin-left: 0;
    }
    p.logo3 {
        text-align: center;
        margin-left: 0;
    }
    ul.navi2 {
        text-align: center;
    }
    li.naviinline_kontakt {
        margin-right: 5%;
    }
    li.naviinline_office {
        margin-left: 5%;
    }
    li.naviinline_home {
        margin-right: 5%;
        margin-left: 5%;
    }
}
@media screen and (max-width: 768px) {
    #selfstorage .kasten {
        width: 46.88%;
        margin-right: 1.56%;
        margin-left: 1.56%;
    }
}

@media screen and (max-width: 699px) {
    #selfstorage .kasten {
        width: 51.5%;
        margin-right: 24.5%;
        margin-left: 24.5%;
    }

    li.naviinline_self {
        background-size: 24px 24px;
    }
    li.naviinline_kontakt {
        background-size: 24px 24px;
    }
    li.naviinline_home {
        background-size: 24px 24px;
    }
    p.logo3 {
        text-align: center;
        margin-left: 0;
    }
    ul.navi2 {
        text-align: center;
    }
    .texte_block {
        width: 80%;
        height: auto;
        max-width: 360px;
        float: none;
        margin: 0 auto;
    }
    .block_links {
        margin-right: 0;
        margin-left: 0;
        float: none;
    }
    .block_rechts {
        margin-left: 5%;
        margin-right: 5%;
        float: none;
    }
    .block_rechts_res {
        margin-right: 5%;
        margin-left: 5%;
        float: none;
    }
    .block_rechts_res_platz {
        margin-right: 5%;
        margin-left: 5%;
        float: none;
        display: block;
    }
    .block_rechts_doppelt {
        display: none;
    }
    .block_links_res {
        margin-right: 5%;
        margin-left: 5%;
        float: none;
    }
    .abstand_unten_res {
        margin-bottom: 20px;
    }
    .center_mobil {
        margin: 0 auto;
        padding-top: 20px;
    }
    .grau_abstand {
        padding-top: 0;
    }
    .abschluss_links {
        width: 100%;
        float: none;
        display: table;
        height: 30px;
    }
    .abschluss_rechts {
        width: 100%;
        float: none;
        display: table;
        height: 30px;
    }
    p.copyright {
        padding-left: 0;
        font-size: 14px;
        text-align: center;
        padding-top: 15px;
    }
    ul.abschluss1 {
        text-align: center;
        font-size: 14px;
    }
    li.abschluss2_daten {
        margin-left: 0px;
        padding-right: 0;
    }
    h1.buero_headline {
        margin-top: 30px;
    }
    /* Self Storage */
    p.einleitung {
        margin-left: 10%;
        margin-right: 10%;
        margin-bottom: 30px;
    }
    p.impressum {
        margin-left: 10%;
        margin-right: 10%;
    }
    h2 {
        font-size: 35px;
        line-height: 40px;
        padding-bottom: 10px;
        padding-top: 40px;
    }
    h2.kontakt_ueberschrift {
        padding-bottom: 40px;
    }
    /* Kontakt */
    .kontakt {
        float: none;
        width: 100%;
    }
    .oeffnungszeiten {
        float: none;
        width: 100%;
    }
    p.kontakt_abstand {
        text-align: center;
        margin-left: 5%;
        margin-right: 5%;
    }
    p.oeffnung_abstand {
        margin-right: 5%;
        text-align: center;
        margin-left: 5%;
    }
    p.oeffnung {
        margin-bottom: 15px;
        margin-top: 30px;
    }
    #cookie {
        padding: 20px;
        width: 90%;
        max-width: 600px;
        margin: 0 auto;
    }
}
@media screen and (max-width: 600px) {
    #selfstorage .kasten {
        width: 60%;
        margin-right: 20%;
        margin-left: 20%;
    }
}
@media screen and (max-width: 599px) {
    li.naviinline_office {
        display: block;
        background-image: none;
        margin-left: 5%;
        margin-right: 5%;
        border-bottom: solid 1px #E5E5E5;
        padding-bottom: 10px;
        padding-top: 10px;
    }
    li.naviinline_kontakt {
        display: block;
        background-image: none;
        margin-left: 5%;
        margin-right: 5%;
        padding-top: 10px;
    }
    li.naviinline_self {
        display: block;
        background-image: none;
        margin-left: 5%;
        margin-right: 5%;
        border-bottom: solid 1px #E5E5E5;
        padding-bottom: 10px;
        padding-top: 10px;
    }
    .logo {
        margin-bottom: 0;
    }
}
@media screen and (max-width: 480px) {
    .karte p {
        margin-left: 0;
        margin-right: 0;
    }
    #selfstorage .kasten {
        width: 75%;
        margin-right: 12.5%;
        margin-left: 12.5%;
    }
    /* Logo + Navi */
    h1 {
        font-size: 35px;
        line-height: 45px;
    }

    ul {
        padding-left: 0;
        padding-right: 0;
        margin-left: 0;
        margin-right: 0;
    }
    /* Slider Mobile */
    .slider_mobil_none {
        display: none;
    }
    .slider_mobil {
        display: block;
    }
    /* Self Storage */
    h2 {
        padding-bottom: 20px;
    }
    img.self {
        margin-top: 10px;
    }
    ul.abschluss1 {
        text-align: center;
    }
    li.abschluss2_daten {
        padding-right: 0%;
    }
    .abstand_selfstorage_unten {
        height: 60px;
    }
    .block_rechts {
        margin-left: 0;
        margin-right: 0;
        float: none;
        margin: 0 auto;
    }
    .block_rechts_res {
        margin-right: 0;
        margin-left: 0;
        float: none;
        margin: 0 auto;
    }
    .block_rechts_res_platz {
        margin-right: 0;
        margin-left: 0;
        float: none;
        display: block;
        margin: 0 auto;
    }
    span.weiss_handel {
        font-size: 15px;
    }
    .texte_block {
        width: 100%;
        height: auto;
        max-width: 360px;
        float: none;
        margin: 0 auto;
    }
    .center_mobil {
        padding-top: 5px;
    }
    p.selfstorage {
        font-size: 15px;
        line-height: 23px;
    }
    ul.self_aufz {
        font-size: 15px;
        line-height: 23px;
    }
    summary {
        font-size: 16px;
        font-weight: bold;
    }
    span.weiss {
        font-size: 17px;
    }
    a.tel {
        text-decoration: none;
        color: #1a171b;
        cursor: pointer;
    }
    a.tel:hover {
        transition: all ease 0.2s;
        color: #9b2a49;
        cursor: pointer;
    }
    p.impressum {
        margin-left: 5%;
        margin-right: 5%;
    }
    p.copyright {
        padding-left: 20px;
        font-size: 14px;
        text-align: left;
        padding-top: 15px;
    }
    ul.abschluss1 {
        text-align: left;
        font-size: 14px;
        padding-left: 20px;
    }
    #button {
        position: absolute;
        margin: 25px 20px 14px 25px;
    }
    @media screen and (max-width: 420px) {
        #selfstorage .kasten {
            width: 92%;
            margin-right: 4%;
            margin-left: 4%;
            margin-top: 30px;
        }
        #selfstorage .kasten img {
            max-width: 399px;
        }
    }
}