/* ===== LKWvermietung.de – Pine Green UI Variables (mobile-inspired) ===== */
:root{
  --brand: #2d5f41;        /* Corporate Green - basierend auf Logo */
  --brand-600:#1e4028;     /* Dunklerer Ton für Hover-Effekte */
  --brand-700:#0f2115;     /* Sehr dunkler Ton für Text/Akzente */
  --ring:#6ec985;          /* Hellerer Grünton für Hervorhebungen */
  --text:#0F172A;
  --muted:#6B7280;
  --card:#FFFFFF;
  --card-border:#E5E7EB;
  --bg:#F7F9FA;            /* ersetzt das alte .bg-grey */
}

/* ===== Modern Form Styling (mobile-inspired) ===== */
.search-box {
    padding: 20px;
    margin: 20px 0;
}

.search-box form, .search-form {
  background: var(--card);
  border: 1px solid var(--card-border);
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.search-box .form-control,
.search-box input[type="text"],
.search-box input[type="date"],
.search-box select {
  border: 1px solid var(--card-border);
  border-radius: 8px;
  padding: 12px 16px;
  background: var(--card);
  color: var(--text);
  font-size: 16px;
  transition: all 0.2s ease;
}

.search-box .form-control:focus,
.search-box input:focus,
.search-box select:focus {
  outline: none;
  border-color: var(--brand);
  box-shadow: 0 0 0 3px var(--ring);
}

.search-box .btn-primary,
.search-box button[type="submit"] {
  background: var(--brand);
  border: 1px solid var(--brand);
  border-radius: 8px;
  padding: 12px 24px;
  color: white;
  font-weight: 600;
  transition: all 0.2s ease;
}

.search-box .btn-primary:hover,
.search-box button[type="submit"]:hover {
  background: var(--brand-600);
  border-color: var(--brand-600);
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(22, 101, 52, 0.2);
}

.search-box .btn-primary:active,
.search-box button[type="submit"]:active {
  background: var(--brand-700);
  border-color: var(--brand-700);
  transform: translateY(0);
}

/* Fix: Verhindere schwarze Schriftfarbe bei besuchten Links (btn als <a>-Tag) */
.search-box .btn-primary:visited,
.search-box a.btn-primary:visited,
a.btn-primary:visited {
  color: white !important;
}

/* Animierte Pulsation nach Zeitbestätigung - zieht Aufmerksamkeit auf Button */
@keyframes btn-pulse-glow {
  0% {
    box-shadow: 0 0 0 0 rgba(45, 95, 65, 0.4);
    transform: scale(1);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(45, 95, 65, 0);
    transform: scale(1.02);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(45, 95, 65, 0);
    transform: scale(1);
  }
}

/* Button-Animation nach Formularinteraktion */
.btn-primary.ready-to-submit,
a.btn-primary.ready-to-submit {
  animation: btn-pulse-glow 2s ease-in-out infinite;
  background: linear-gradient(135deg, var(--brand) 0%, var(--brand-600) 100%);
}

.btn-primary.ready-to-submit:hover,
a.btn-primary.ready-to-submit:hover {
  animation: none;
  box-shadow: 0 6px 12px rgba(22, 101, 52, 0.3);
  transform: translateY(-2px);
}


/* Form Labels */
.search-box label {
  color: var(--text);
  font-weight: 500;
  margin-bottom: 8px;
  display: block;
}

/* Checkbox and Radio Styling */
.search-box input[type="checkbox"],
.search-box input[type="radio"] {
  accent-color: var(--brand);
  margin-right: 8px;
}

/* Tab Navigation (wenn vorhanden) */
.search-box .nav-tabs {
  border-bottom: 2px solid var(--card-border);
  padding-right: 35px;
}

.search-box .nav-tabs > li > a {
  padding: 10px 10px 10px 8px !important;
  margin-right: 3px !important;
  font-size: 13px !important;
}

.search-box .nav-tabs > li:last-child > a {
  margin-right: 0 !important;
}

.search-box .nav-tabs > li > a > .fa {
  width: 24px !important;
  height: 24px !important;
  line-height: 24px !important;
  margin-right: 5px !important;
}

.search-box .nav-tabs .nav-link {
  border: none;
  border-bottom: 2px solid transparent;
  color: var(--muted);
  padding: 12px 16px;
}

.search-box .nav-tabs .nav-link.active {
  border-bottom-color: var(--brand);
  color: var(--brand);
  background: transparent;
}

/* ===== Modern Car-Container/Angebots-Karten ===== */
.car-container {
  background: var(--card);
  border: 1px solid var(--card-border);
  border-radius: 12px;
  padding: 0;
  margin-bottom: 24px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  transition: all 0.2s ease;
  overflow: hidden;
}

.car-container:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 15px -1px rgba(0, 0, 0, 0.15);
}

.car-container .image {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 0;
}

.car-container .sale-details {
  padding: 20px;
}

.car-container .sale-details .title {
  color: var(--text);
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 8px;
}

.car-container .sale-details .details {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
  margin: 12px 0;
}

.car-container .sale-details .price {
  color: var(--brand);
  font-weight: 700;
  font-size: 20px;
  margin-top: 16px;
}

.car-container .sale-btn a {
  background: var(--brand);
  color: white;
  border-radius: 8px;
  padding: 12px 20px;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.car-container .sale-btn a:hover {
  background: var(--brand-600);
  transform: translateY(-1px);
  text-decoration: none;
  color: white;
}

.car-container .sale-btn a:active {
  background: var(--brand-700);
  transform: translateY(0);
}

/* ===== Modern FAQ-Akkordeons ===== */
.content .panel-group .panel {
  background: var(--card);
  border: 1px solid var(--card-border);
  border-radius: 8px;
  margin-bottom: 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  overflow: hidden;
}

.content .panel-group .panel-heading {
  background: var(--card);
  border-bottom: 1px solid var(--card-border);
  padding: 0;
}

.content .panel-group .panel-heading .panel-title a {
  display: block;
  padding: 16px 20px;
  color: var(--text);
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s ease;
}

.content .panel-group .panel-heading .panel-title a:hover {
  background: var(--bg);
  text-decoration: none;
  color: var(--brand);
}

.content .panel-group .panel-heading .panel-title a[aria-expanded="true"] {
  background: var(--brand);
  color: white;
}

.content .panel-group .panel-heading .panel-title a .fa {
  color: var(--brand);
  transition: all 0.2s ease;
}

.content .panel-group .panel-heading .panel-title a[aria-expanded="true"] .fa {
  color: white;
}

.content .panel-group .panel-collapse {
  border-top: none;
}

.content .panel-group .panel-body {
  padding: 20px;
  color: var(--text);
  line-height: 1.6;
  background: var(--card);
}

/* ===== Modern Tab-Navigation ===== */
.sales .nav-tabs,
.content .nav-tabs {
  border-bottom: 2px solid var(--card-border);
  margin-bottom: 24px;
}

.sales .nav-tabs li a,
.content .nav-tabs li a {
  border: none;
  border-bottom: 2px solid transparent;
  color: var(--muted);
  padding: 12px 20px;
  font-weight: 500;
  transition: all 0.2s ease;
  text-decoration: none;
}

.sales .nav-tabs li a:hover,
.content .nav-tabs li a:hover {
  border-bottom-color: var(--brand);
  color: var(--brand);
  background: transparent;
  text-decoration: none;
}

.sales .nav-tabs li.active a,
.content .nav-tabs li.active a,
.sales .nav-tabs li a[aria-expanded="true"],
.content .nav-tabs li a[aria-expanded="true"] {
  border-bottom-color: var(--brand);
  color: var(--brand);
  background: transparent;
  font-weight: 600;
}

/* Spezifische Anpassungen für Sales-Tabs */
.sales .nav-tabs li a span {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}

.sales .nav-tabs li.active a span,
.sales .nav-tabs li a:hover span {
  color: #fff;
}

/* Content-Tab-Panel harmonisieren */
.content .panel.with-nav-tabs .panel-heading {
  background: var(--card);
  border-bottom: 1px solid var(--card-border);
}

.content .panel.with-nav-tabs .panel-body {
  background: var(--card);
  padding: 24px;
}

/* ===== Bootstrap Color Override für Brand Consistency ===== */
/* Alle Bootstrap-Farben auf Brand Colors überschreiben */
.btn-primary, .bg-primary, .badge-primary, .alert-primary {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}

.btn-success, .bg-success, .badge-success, .alert-success {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}

.btn-info, .bg-info, .badge-info, .alert-info {
  background-color: white !important;
  border-color: var(--brand) !important;
}

.btn-warning, .bg-warning, .badge-warning, .alert-warning {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}

.btn-danger, .bg-danger, .badge-danger, .alert-danger {
  background-color: var(--brand-600) !important;
  border-color: var(--brand-600) !important;
}

.btn-secondary, .bg-secondary, .badge-secondary, .alert-secondary {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}

/* Text Colors */
.text-primary { color: var(--brand) !important; }
.text-success { color: var(--brand) !important; }
.text-info { color: var(--brand) !important; }
.text-warning { color: var(--brand-600) !important; }
.text-danger { color: var(--brand-600) !important; }
.text-secondary { color: var(--brand) !important; }

/* Button Hover States */
.btn-primary:hover, .btn-success:hover, .btn-info:hover, .btn-warning:hover, .btn-secondary:hover {
  background-color: var(--brand-600) !important;
  border-color: var(--brand-600) !important;
}

.btn-danger:hover {
  background-color: var(--brand-700) !important;
  border-color: var(--brand-700) !important;
}

/* Override any hardcoded blues, reds, yellows */
*[style*="#007bff"], *[style*="blue"], *[style*="#0066cc"] {
  color: var(--brand) !important;
  background-color: var(--brand) !important;
}

*[style*="#dc3545"], *[style*="red"], *[style*="#ff0000"] {
  color: var(--brand-600) !important;
  background-color: var(--brand-600) !important;
}

*[style*="#ffc107"], *[style*="yellow"], *[style*="#ffff00"] {
  color: var(--brand) !important;
  background-color: var(--brand) !important;
}

/* ===== Modern Customer Reviews (mobile-inspired) ===== */
.customer-reviews {
  background: var(--bg);
  padding: 60px 0;
  margin-bottom: 40px;
}

.customer-reviews .testimonials {
  max-width: 100%;
}

.customer-reviews .testimonials .title {
  font-size: 24px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 24px;
  text-align: center;
}

.customer-reviews .testimonials ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 24px;
}

.customer-reviews .testimonial-item {
  background: var(--card);
  border: 1px solid var(--card-border);
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  transition: all 0.2s ease;
}

.customer-reviews .testimonial-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.customer-reviews .testimonial-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 12px;
}

.customer-reviews .rating {
  display: flex;
  gap: 2px;
}

.customer-reviews .rating .fa-star {
  color: #FFA500;
  font-size: 16px;
}

.customer-reviews time {
  color: var(--muted);
  font-size: 14px;
  white-space: nowrap;
}

.customer-reviews blockquote {
  background: var(--bg);
  border-left: 4px solid var(--brand);
  padding: 12px 16px;
  margin: 12px 0;
  border-radius: 0 8px 8px 0;
  font-style: italic;
  color: var(--text);
  line-height: 1.5;
}

.customer-reviews .no-comment {
  background: var(--bg);
  padding: 12px 16px;
  margin: 12px 0;
  border-radius: 8px;
  color: var(--muted);
  font-style: italic;
}

.customer-reviews figcaption {
  margin-top: 16px;
  font-size: 14px;
}

.customer-reviews .customer-info {
  color: var(--text);
  font-weight: 500;
  margin-bottom: 4px;
}

.customer-reviews .rental-info {
  color: var(--muted);
}

/* Reviews More Button */
.reviews-more-button {
  text-align: center;
  margin-top: 20px;
  padding-top: 15px;
  border-top: 1px solid #e0e0e0;
}

.btn-reviews-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: transparent;
  color: var(--brand);
  text-decoration: none;
  border: 1px solid var(--brand);
  border-radius: 25px;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.3s ease;
}

.btn-reviews-more:hover {
  background: var(--brand);
  color: white;
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(22, 101, 52, 0.2);
}

.btn-reviews-more i {
  transition: transform 0.3s ease;
}

.btn-reviews-more:hover i {
  transform: translateX(3px);
}

/* ===== Optimierte Sidebar-Styles ===== */
.sidebar {
  background: rgba(0, 0, 0, 0.5) !important;
  border-radius: 12px;
  padding: 24px;
  margin-top: 20px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  min-height: 400px !important;
  height: auto !important;
}

.sidebar .content {
  margin-left: 0 !important;
}

.sidebar .content h2 {
  color: white;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 20px;
  border-bottom: 2px solid var(--brand);
  padding-bottom: 10px;
}

.sidebar .content .list-title {
  color: white !important;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 16px;
}

.sidebar .conditions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 0;
    list-style: none;
    align-items: stretch;
    /* margin-left: 20px; */
}

.sidebar .conditions li {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  padding: 16px 12px;
  text-align: center;
  color: white;
  font-size: 14px;
  line-height: 1.4;
  transition: all 0.3s ease;
  height: 148px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.sidebar .conditions li:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-2px);
}

.sidebar .conditions li .fa.bigicon {
  display: block;
  font-size: 24px;
  color: #E5E7EB !important;
  margin-bottom: 4px;
  line-height: 1;
  vertical-align: baseline;
}

/**
 * Webfonts
**/
@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.5.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.5.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.5.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.5.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.5.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal;font-display:swap}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{contentradio label::before:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}

/* poppins-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/poppins-v20-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('../fonts/poppins-v20-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-regular.svg#Poppins') format('svg'); /* Legacy iOS */
}

@font-face {
	font-family: 'arial_blackregular';
	src: url('../fonts/arial_black-webfont.eot');
	src: url('../fonts/arial_black-webfont.eot?#iefix') format('embedded-opentype'),
	url('../fonts/arial_black-webfont.woff2') format('woff2'),
	url('../fonts/arial_black-webfont.woff') format('woff'),
	url('../fonts/arial_black-webfont.ttf') format('truetype'),
	url('../fonts/arial_black-webfont.svg#arial_blackregular') format('svg');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-500 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-500.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-800 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-800.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-800.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-800.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-300italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-300italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-300italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-300italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-500italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-500italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-500italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-600italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-700italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-800italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url('../fonts/open-sans-v34-latin-800italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-800italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-800italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-800italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-800italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-800italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/roboto-v30-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v30-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v30-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v30-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v30-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v30-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}

/**
 * Globals
**/
* {
	margin: 0;
	padding: 0;
}

a:hover, a:active, a:focus {
	outline: 0;
}

textarea:hover,
input:hover,
textarea:active,
input:active,
textarea:focus,
input:focus,
button:focus,
button:active,
button:hover
{
	outline:0px !important;
	-webkit-appearance:none;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px #fff inset !important;
}

html, body, .loading-container {
	width: 100%;
	height: 100%;
}

html, body {
	font-family: 'Open Sans', Arial, sans-serif;
}

body {
	font-family: 'Open Sans', Arial, sans-serif;
	-webkit-text-size-adjust: auto;
}

img {
	max-width: 100%;
	height: auto;
}

.tab-content .fa-check-circle {
	color: var(--brand);
}

.tab-content .fa-minus-circle {
	color: #ba0000;
}

.btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn.active.focus {
	outline: none;
}

.btn-w-150 {
	min-width: 150px;
}

.btn-red {
	background-color: var(--brand);
	color: #fff;
	border-color: var(--brand);
	-moz-transition: all 0.3s ease-in-out;
	  -o-transition: all 0.3s ease-in-out;
	  -webkit-transition: all 0.3s ease-in-out;
	  -ms-transition: all 0.3s ease-in-out;
	  transition: all 0.3s ease-in-out;
}

.btn-red:hover {
	background-color: var(--brand-600);
	color: #fff;
	border-color: var(--brand-600);
	cursor: pointer;
	outline: none;
}

.btn-red:disabled,
.btn-red.disabled {
	background-color: #9ca3af;
	border-color: #9ca3af;
	color: #fff;
	cursor: not-allowed;
	opacity: 0.7;
}
.btn-red:disabled:hover,
.btn-red.disabled:hover {
	background-color: #9ca3af;
	border-color: #9ca3af;
}

.btn-green {
	background-color: var(--brand);
	color: #fff;
	border-color: var(--brand);
	padding: 5px 40px;
}


.btn-green:focus,
.btn-green:hover {
	background-color: var(--brand-600);
	color: #fff;
}

.btn-green-rwd {
	background-color: #ccc;
	color: var(--brand);
	border-color: #ccc;
	padding: 5px 40px;
}

.btn-green-rwd:focus,
.btn-green-rwd:hover {
	background-color: var(--brand);
	color: #fff;
	border-color: var(--brand);
}

.has-error .input-group-addon {
	border-color: #e10000;
}

.has-error .select2-selection,
.has-error .select2-container .select2-selection,
.has-error .select2-container--default .select2-selection--single {
	border-color: #e10000 !important;
}

.has-error .select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-top-color: #e10000 !important;
}

.tip {
	display: none;
}

.alert-error {
	background-color: #e7e7e7;
	border-color: #e10000;
	border-radius: 0;
	padding: 10px;
	padding-bottom:6px;
	padding-top:6px;
	color: #e10000;
	font-size: 11px;
}

.alert-error.white-bg {
	background-color: #fff;
	font-size: 15px;
	line-height: 24px;
}

/* ===== Freundliche Formular-Hinweise (Pine Green Design) ===== */
.alert-form-hint {
	background: #f8faf9;
	border: 1px solid #e0e8e3;
	border-radius: 8px;
	padding: 14px 18px;
	margin-bottom: 16px;
	color: #374840;
	font-size: 13px;
	line-height: 1.5;
}

.alert-form-hint .hint-title {
	display: flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	font-size: 14px;
	margin-bottom: 6px;
	color: #2d5f41;
}

.alert-form-hint .hint-title i {
	font-size: 16px;
	color: #2d5f41;
}

.alert-form-hint .hint-item {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 3px 0;
}

.alert-form-hint .hint-item i {
	color: #4a8c64;
	margin-top: 3px;
	font-size: 10px;
}

.alert-form-hint .hint-item:last-child {
	padding-bottom: 0;
}

.alert-form-hint .opening-hours-table td {
	color: #1a3d28;
}

.alert-form-hint .opening-hours-table td span {
	color: #6b8f7a;
}

.alert-success {
	background-color: #e7e7e7;
	border-color: var(--brand);
	border-radius: 0;
	padding: 10px;
	color: var(--brand);
	font-size: 14px;
	margin-bottom: 15px;
}

.alert-warning {
	background-color: #f5f5f5;
	border-color: #ff9600;
	color: #ff9600;
	padding: 13px 20px;
	margin-bottom: 10px;
}

.alert-warning2 {
	border-color: #ba0000;
	color: #ba0000;
}

.alert-notice {
	background-color: #e7e7e7;
	border-color: #006CC6;
	padding: 10px;
	color: #006CC6;
}

.alert-notice {
	padding: 10px 20px;
}

.alert-notice .icon, .alert-warning .icon {
	float: left;
	width: 2%;
}

.alert-notice .message, .alert-warning .message {
	float: right;
	width: 97%;
}

.datepicker table tr td.today {
	color: #fff;
	background-color: #ba0000;
	border-color: #ba0000;
}

.datepicker-dropdown.datepicker-orient-left:before {
	left: 9px;
}

.datepicker-dropdown.datepicker-orient-left:after {
	left: 10px;
}

.frontpage-header .bfh-timepicker-toggle>input[readonly] {
	background-color: #e7e7e7;
}

.frontpage-header .bfh-timepicker-popover input {
	background-color: #fff;
	border-left: 1px solid #ccc;
}

.frontpage-header .bfh-timepicker-popover .input-group-addon {
	padding: 6px 12px;
	border-right: 1px solid #ccc;
	color: var(--brand);
	background-color: #e7e7e7;
}

.frontpage-header .bfh-timepicker-popover .input-group-addon:focus,
.frontpage-header .bfh-timepicker-popover .input-group-addon:hover {
	color: #fff;
	background-color: var(--brand);
}

.frontpage-header .bfh-datepicker-toggle>input[readonly] {
	background-color: #e7e7e7;
}

.tt-dropdown-menu {
	width: 100%;
	margin-top: 0;
	padding-left: 9px;
	background: #fff;
	border: 1px solid #e6e6e6;
	max-height: 300px;
	overflow-y: auto;
	white-space: nowrap;
}


/**
 * Startseite
**/
.frontpage-header-bg {
	background-image: url(../img/bg.webp);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover !important;
	background-attachment: fixed;
	min-height: 690px;
}

.frontpage-header .logo {
    background-color: white;
    padding-top: 27px;
    padding-bottom: 20px;
    padding-left: 10px;
    padding-right: 10px;
    height: 87px !important;
    margin-top: -10px;
    border: 1px;
    border-radius: 12px;
}

#home .frontpage-header .search-box {
	margin-bottom: 45px;
}

.frontpage-header .search-box .nav-tabs {
	border-bottom: 1px solid transparent;
}

.frontpage-header .search-box .nav-tabs > li > a {
	background-color: rgba(0,0,0,0.4);
	color: #fff;
	font-weight: 700;
	border: none;
	border-radius: 0;
	padding: 10px 15px 10px 10px;
	margin-right: 10px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

.frontpage-header .search-box .nav-tabs > li:last-child > a {
	margin-right: 0;
	/* display: none; */
}

.frontpage-header .search-box .nav-tabs > li.active > a {
	background-color: var(--brand);
	color: #fff;
	border: none;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

.frontpage-header .search-box .nav-tabs > li > a > .fa {
	background: rgba(0, 0, 0, .3);
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	border-radius: 50%;
	margin-right: 10px;
}

.frontpage-header .search-box .nav-tabs > li:not(.active):hover > a > .fa {
	background: var(--brand);
}

.frontpage-header .search-box .tab-content {
	padding-right: 28px;
}

.frontpage-header .search-box .tab-content > .tab-pane {
	background-color: #fff;
	padding: 25px 40px 15px;
}

.frontpage-header .search-box .tab-content > .tab-pane h1 {
	color: var(--brand);
	font-size: 28px;
	font-weight: 700;
	margin-top: 0;
}

.frontpage-header .search-box .tab-content > .tab-pane .alert {
	margin-bottom: 0;
}

.frontpage-header .search-box .tab-content > .tab-pane form {
	margin-top: 20px;
	margin-top: 20px;
}

.frontpage-header .search-box .tab-content > .tab-pane label {
	font-weight: 400
}

.frontpage-header .search-box .radio+.radio { margin-top: -10px; }

.frontpage-header .anmietort {
	position: relative;
}

.frontpage-header .anmietort:before {
	content: "\f041";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.has-error input[id="anmietort"]::-webkit-input-placeholder {color:#e10000;}
.has-error input[id="anmietort"]::-moz-placeholder {color:#e10000;} /* firefox 19+ */
.has-error input[id="anmietort"]:-moz-placeholder {color:#e10000;}
.has-error input[id="anmietort"]:-ms-input-placeholder {color:#e10000;} /* ie */

.has-error input[id="rueckgabeort"]::-webkit-input-placeholder {color:#e10000;}
.has-error input[id="rueckgabeort"]::-moz-placeholder {color:#e10000;} /* firefox 19+ */
.has-error input[id="rueckgabeort"]:-moz-placeholder {color:#e10000;}
.has-error input[id="rueckgabeort"]:-ms-input-placeholder {color:#e10000;} /* ie */

.has-error .form-control {
	border-color: #e10000;
}

.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
	color: #e10000 !important;
}

#kundendaten .ui-menu-item:before,
#extras .ui-menu-item:before,
#home .ui-menu-item:before {
	content: "\f041";
	position: absolute;
	top: 5px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .anmietort input {
	padding-left: 35px;
}

.frontpage-header .anmietdatum {
	position: relative;
}

.frontpage-header .anmietdatum:before {
	content: "\f073";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .anmietdatum input {
	padding-left: 35px;
}

.frontpage-header .anmietzeit {
	position: relative;
}

.frontpage-header .anmietzeit:before {
	content: "\f017";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .anmietzeit select {
	padding-left: 35px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
}

.frontpage-header .rueckgabeort {
	position: relative;
}

.frontpage-header .rueckgabeort:before {
	content: "\f041";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .rueckgabeort input {
	padding-left: 35px;
}

.frontpage-header .rueckgabedatum {
	position: relative;
}

.frontpage-header .rueckgabedatum:before {
	content: "\f073";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .rueckgabedatum input {
	padding-left: 35px;
}

.frontpage-header .rueckgabezeit {
	position: relative;
}

.frontpage-header .rueckgabezeit:before {
	content: "\f017";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .rueckgabezeit select {
	padding-left: 35px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
}

.frontpage-header .geburtsdatum {
	position: relative;
}

.frontpage-header .geburtsdatum:before {
	content: "\f073";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .geburtsdatum input {
	padding-left: 35px;
}

.frontpage-header .plz {
	position: relative;
}

.frontpage-header .plz:before {
	content: "\f003";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .plz input {
	padding-left: 35px;
}

.frontpage-header .umkreis {
	position: relative;
}

.frontpage-header .umkreis:before {
	content: "\f140";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.frontpage-header .umkreis select {
	padding-left: 35px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
}

.frontpage-header .search-box .tab-content > .tab-pane .customer {
	line-height: 14px;
}

.frontpage-header .search-box .tab-content > .tab-pane .customer .checkbox label {
	padding-left: 17px;
}

.frontpage-header .search-box .tab-content > .tab-pane .customer .checkbox label::before {
	top: -1px;
}

.frontpage-header .search-box .tab-content > .tab-pane .customer .checkbox label::after {
	top: -1px;
}

.frontpage-header .search-box .tab-content > .tab-pane .customer > .checkbox.inline.title {
	line-height: 34px;
	margin-right: 7px;
	padding-left: 0;
	cursor: default;
}

.frontpage-header .search-box .tab-content > .tab-pane .customer > .checkbox.inline {
	padding-left: 11px;
}

.frontpage-header .search-box .tab-content > .tab-pane .customer input[type=checkbox],
.frontpage-header .search-box .tab-content > .tab-pane .customer input[type=radio] {
	margin: 0 0 0 -20px;
	margin-right: 35px;
}

.frontpage-header .search-box .tab-content > .tab-pane .birthday label {
	font-weight: 700;
	line-height: 34px;
	margin-bottom: 0;
}

.frontpage-header .search-box .tab-content > .tab-pane .vehicle-class {
	margin-bottom: 10px;
}

.frontpage-header .search-box .tab-content > .tab-pane .vehicle-class label.title {
	font-weight: 700;
	margin-bottom: 5px;
}

.frontpage-header .search-box .tab-content > .tab-pane .vehicle-class .radio.first {
	margin-top: 0;
}

.frontpage-header .search-box .tab-content > .tab-pane .vehicle-class .radio.fwd {
	margin-top: 0;
}

.frontpage-header .search-box .tab-content > .tab-pane .vehicle-class .radio label {
	margin-bottom: 0;
}

label.inactive {
	cursor:auto !important;
}

.frontpage-header .search-box .tab-content > .tab-pane .location-search label {
	font-weight: 700;
	margin-bottom: 5px;
}

.frontpage-header .search-box .tab-content > .tab-pane .btn-red {
	margin-top: 10px;
	font-weight: bold;
}

.frontpage-header select > option {
	background-color: #fff;
}

.frontpage-header .sidebar .nav-tabs > li > a {
	background-color: rgba(0,0,0,0.4);
	color: #fff;
	font-weight: 700;
	border: none;
	border-radius: 0;
	margin-right: 0;
	cursor: pointer;
}

.frontpage-header .sidebar .nav-tabs > li.active > a {
	background-color: var(--brand);
	color: #fff;
	border: none;
	border-radius: 0;
}

.frontpage-header .sidebar .expande {
	background-color: #444;
	color: #fff;
	font-weight: 700;
	width: 100%;
	border: none;
}

.frontpage-header .sidebar .expande:hover {
	background-color: var(--brand);
	color: #fff;
}

.frontpage-header .sidebar .tab-content > .tab-pane {
	position: relative;
	background-color: #fff;
	padding: 20px 20px 20px;
}

.frontpage-header .sidebar .tab-content > #bynumber.tab-pane {
	min-height: auto;
}

.frontpage-header .sidebar .tab-content > #byaccount.tab-pane {
	padding-bottom: 20px;
}

.frontpage-header .sidebar .tab-content > #byaccount.tab-pane .login-m {
	min-height: auto;
}

.frontpage-header .sidebar .tab-content > #byvermieter.tab-pane {
	padding-bottom: 20px;
}

#byaccount .forgot-id-m .btn-green {
	margin-top: 0;
}

#byvermieter .btn-green {
	margin-top: -40px;
}

#byvermieter .forgot-id-v .btn-green {
	margin-top: 0;
}

.frontpage-header .sidebar .tab-content > .tab-pane .grey-box {
	position: relative;
	width: calc(100% + 40px);
	background-color: #e7e7e7;
	color: var(--brand);
	margin: 20px -20px 0 -20px;
	padding: 15px 20px 20px;
	border-radius: 0;
}

#bynumber .grey-box {
	min-height: auto;
}

#byaccount .grey-box {
	min-height: auto;
	padding: 15px 20px 15px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .grey-box .title {
	color: #444;
	font-size: 22px;
	font-weight: 400;
	line-height: 28px;
	margin-top: 20px;
	margin-bottom: 10px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .grey-box ul {
	list-style: none;
	margin: 0;
	padding-left: 25px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .grey-box ul > li {
	position: relative;
	margin-bottom: 10px;
	font-size: 15px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .grey-box ul > li:last-child {
	margin-bottom: 4px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .grey-box ul > li:before {
	position: absolute;
	top: 0;
	left: -25px;
	font-family: FontAwesome;
	content: "\f00c";
	font-size: 15px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .close-btn {
	position: absolute;
	bottom: 0;
	width: 100%;
	background-color: var(--brand);
	min-height: 30px;
	color: #fff;
	text-align: center;
	margin: 0 -20px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .close-btn:hover {
	background-color: #fff;
}

.frontpage-header .sidebar .tab-content > .tab-pane .close-btn > a {
	color: #fff;
	line-height: 30px;
}

.frontpage-header .sidebar .tab-content > .tab-pane .close-btn:hover > a {
	color: var(--brand);
	text-decoration: none;
}

.frontpage-header .sidebar .greetings {
	color: #fff;
}

.frontpage-header .search-box .form-group {
	margin-bottom: 10px;
}

.frontpage-header .form-control,.google-address-form .form-control {
	background-color: #fff;
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	padding: 6px 10px;
}

.frontpage-header .form-control:focus {
	border-color: #ccc;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.frontpage-header .has-error .form-control:focus {
	border-color: #e10000;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.frontpage-header #anmietort {
	color: #555;
}

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
	border-left: none;
}

.frontpage-header .input-group-addon {
	background-color: #fff;
	padding: 6px 0 6px 10px;
	border: none !important;
	border-radius: 0;
	color: var(--brand);
}

.frontpage-header .partner {
	background: rgba(255, 255, 255, 0.3);
	min-height: 100px;
	border-radius: 3px;
}

.frontpage-header .partner .title {
	display: table-cell;
	height: 100px;
	vertical-align: middle;
	text-align: center;
	color: #fff;
	font-size: 22px;
	text-transform: uppercase;
	padding: 0 35px 0 40px;
}

.frontpage-header .partner ul {
	display: table-cell;
	list-style: none;
	margin: 0;
	padding: 0;
}

.frontpage-header .partner ul > li {
	display: table-cell;
	height: 100px;
	vertical-align: middle;
	padding: 0 5px;
}

.frontpage-header .partner ul > li:first-child {
	padding-right: 5px;
	padding-left: 0;
}

.frontpage-header .partner ul > li:last-child {
	padding-right: 0;
	padding-left: 5px;
}

.frontpage-header .sidebar {
	background: rgba(30, 30, 30, 0.85);
	min-height: auto;
	padding: 15px 18px;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255,255,255,0.1);
}

.frontpage-header .sidebar .btn-green {
	min-width: 150px;
}

.frontpage-header .sidebar nav {
	padding-left: 0;
    margin-bottom: 8px;
    display: flex;
    gap: 8px;
	align-items: center;
}

.frontpage-header .sidebar nav .btn-loginarea {
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	font-size: 13px;
	padding: 10px 8px;
	margin-right: 0;
    border-radius: 4px;
    border: 1px solid rgba(255,255,255,0.2);
    transition: all 0.3s ease;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    text-align: left;
    white-space: normal;
    line-height: 1.2;
}

.frontpage-header .sidebar nav .btn-loginarea i {
    flex-shrink: 0;
}

.frontpage-header .sidebar nav .btn-loginarea:focus,
.frontpage-header .sidebar nav .btn-loginarea:hover {
	background: rgba(255, 255, 255, 0.2);
	color: #ffe100;
    border-color: #ffe100;
    text-decoration: none;
}

.frontpage-header .sidebar nav .btn-loginarea:last-child {
	margin-right: 0;
}

.frontpage-header .sidebar .content {
	margin-left: 0;
}

.frontpage-header .sidebar .content h2 {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 10px;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

.frontpage-header .sidebar .member-view .content h2 {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 6px;
}

.frontpage-header .sidebar .content .list-title {
	display: none; /* Hide redundant subtitle */
}

.frontpage-header .sidebar .content ul.conditions {
	list-style: none;
	margin-bottom: 0;
	padding-left: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
	height: 234px;
}

.frontpage-header .sidebar .content ul.conditions > li {
	position: relative;
	color: #f0f0f0;
	margin-bottom: 0;
	font-size: 15px;
	line-height: 1.3;
	text-align: left;
	border: none;
	border-radius: 0;
	padding: 2px 0;
	background: none;
	font-weight: 500;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 12px;
}

/* Icon-Kreise Design - Corporate Green */
.frontpage-header .sidebar .content ul.conditions .icon-circle {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 50%;
    background: rgba(110,201,133,0.15);
    border: 1.5px solid #6ec985;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.frontpage-header .sidebar .content ul.conditions .icon-circle svg {
    width: 20px;
    height: 20px;
    color: #6ec985;
}

/* Stroke-based icons (shield, percent, clock) */
.frontpage-header .sidebar .content ul.conditions .icon-circle svg[stroke="currentColor"] {
    stroke: #6ec985;
    fill: none;
}

/* Fill-based icons (euro) */
.frontpage-header .sidebar .content ul.conditions .icon-circle svg[fill="currentColor"] {
    fill: #6ec985;
    stroke: none;
}

.frontpage-header .sidebar .content ul.conditions > li:hover .icon-circle {
    background: rgba(110,201,133,0.25);
    transform: scale(1.05);
}

.frontpage-header .sidebar .content ul.conditions .benefit-text {
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.3;
    flex: 1;
}

/* Fallback für alte bigicon Klasse */
.frontpage-header .sidebar .content ul > li .bigicon {
    font-size: 18px;
    color: #6ec985;
    display: inline-block;
    margin-bottom: 0;
    width: 20px;
    text-align: center;
    flex-shrink: 0;
}

.frontpage-header .sidebar nav .btn-loginarea {
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	font-size: 13px;
	padding: 10px 8px;
	margin-right: 0;
    border-radius: 4px;
    border: 1px solid rgba(255,255,255,0.2);
    transition: all 0.3s ease;
    flex: 1;
    text-align: center;
    white-space: normal;
    overflow: visible;
    min-height: 44px;
    line-height: 1.3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.frontpage-header .sidebar .testimonials .title {
	background-color: var(--brand);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	padding: 10px 20px;
}

.frontpage-header .sidebar .testimonials ul {
	background-color: #fff;
	list-style: none;
	padding: 10px 20px;
}

.frontpage-header .sidebar .testimonials ul > li:first-child {
	padding-bottom: 15px;
}

.frontpage-header .sidebar .testimonials .rating i {
	color: #FF9600;
	margin-right: 3px;
	line-height: 20px;
}

.frontpage-header .sidebar .testimonials .rating i:last-child {
	margin-right: 0;
}

.frontpage-header .sidebar .testimonials time {
	display: block;
	font-size: 12px;
	line-height: 20px;
	text-align: right;
}

.frontpage-header .sidebar .testimonials blockquote {
	font-size: 14px;
	font-weight: 700;
	font-style: italic;
	text-align: justify;
	padding: 10px 0 5px;
	margin: 0;
	border-left: 0;
}

.frontpage-header .sidebar .testimonials figcaption {
	font-size: 12px;
	text-align: right;
}

.frontpage-header .sidebar .btn-close {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: var(--brand);
	color: #fff;
	padding: 4px 12px;
	border-radius: 0;
}

.frontpage-header .sidebar .btn-close .fa {
	margin-right: 10px;
}

.frontpage-header .sidebar .btn-close:focus,
.frontpage-header .sidebar .btn-close:hover {
	background-color: #558000;
	color: #fff;
}

.frontpage-header .sidebar .login-view {
	display: none;
	margin-right: -18px;
	margin-left: -18px;
    border-radius: 0 0 8px 8px;
    overflow: hidden;
}

.frontpage-header .sidebar .login-view .nav-tabs {
	display: flex;
	flex-direction: column;
	border-bottom: none;
}

.frontpage-header .sidebar .login-view .nav-tabs > li {
	width: 100%;
	float: none;
	margin-bottom: 0;
}

.frontpage-header .sidebar .login-view .nav-tabs > li > a {
	font-size: 14px;
	padding: 14px 20px;
	text-align: left;
	white-space: normal;
	display: block;
	border-radius: 0;
}

.frontpage-header .sidebar .login-view .nav-tabs > li > a > .fa {
	margin-right: 10px;
}

.frontpage-header .sidebar .login-view .nav-tabs > li:first-child > a {
	padding-left: 20px;
	border-radius: 0;
}

.frontpage-header .sidebar .login-view .nav-tabs > li:last-child > a {
	padding-left: 20px;
	padding-right: 20px;
}

.frontpage-header .sidebar .login-view .title {
	font-size: 16px;
	font-weight: 700;
	line-height: 22px;
	margin-bottom: 10px;
    padding-left: 18px;
    padding-right: 18px;
}

.frontpage-header .sidebar .login-view .form-group {
	margin-bottom: 20px;
    padding-left: 18px;
    padding-right: 18px;
}

.frontpage-header .sidebar .login-view .form-group > label {
	font-weight: 400;
}

.frontpage-header .sidebar .login-view .form-group > .help-block > a {
	color: #444;
	text-decoration: underline;
	cursor: pointer;
}

.frontpage-header .sidebar .login-view .form-group > .help-block > a:focus,
.frontpage-header .sidebar .login-view .form-group > .help-block > a:hover {
	color: var(--brand);
	text-decoration: underline;
}

.frontpage-header .sidebar .login-view .forgot-pw-m {
	display: none;
    padding: 0 18px;
}

.frontpage-header .sidebar .login-view .forgot-id-m {
	display: none;
	margin-top: 25px;
    padding: 0 18px;
}

.frontpage-header .sidebar .vermieter-view {
	display: none;
	margin-right: -18px;
	margin-left: -18px;
    border-radius: 0 0 8px 8px;
    overflow: hidden;
}

.frontpage-header .sidebar .vermieter-view .title {
	font-size: 16px;
	font-weight: 700;
	line-height: 22px;
	margin-bottom: 10px;
    padding-left: 18px;
    padding-right: 18px;
}

.frontpage-header .sidebar .vermieter-view .form-group {
	margin-bottom: 20px;
    padding-left: 18px;
    padding-right: 18px;
}

.frontpage-header .sidebar .vermieter-view .form-group > label {
	font-weight: 400;
}

.frontpage-header .sidebar .vermieter-view .form-group > .help-block > a {
	color: #444;
	text-decoration: underline;
	cursor: pointer;
}

.frontpage-header .sidebar .vermieter-view .form-group > .help-block > a:focus,
.frontpage-header .sidebar .vermieter-view .form-group > .help-block > a:hover {
	color: var(--brand);
	text-decoration: underline;
}

.frontpage-header .sidebar .vermieter-view .forgot-pw-v {
	display: none;
    padding: 0 18px;
}

.frontpage-header .sidebar .vermieter-view .forgot-id-v {
	display: none;
	margin-top: 25px;
    padding: 0 18px;
}

.frontpage-header .sidebar .member-view .greetings {
	display: inline-block;
	font-size: 14px;
	line-height: 16.8px;
	padding: 6px 0;
	margin-right: 15px;
}

.frontpage-header .sidebar .member-view .greetingsCustom {
	color: #fff;
	margin-top:5px
}

.frontpage-header .sidebar .member-view .user-menu,
.frontpage-header #navHomeTablet .user-menu{
	position: relative;
	display: inline-block;
	color: #ffe100;
	text-decoration: underline;
	font-size: 14px;
	line-height: 30px;
	padding: 0 0 5px;
	cursor: pointer;
}
/* add */
.frontpage-header .sidebar .member-view .user-menu2:before,
.frontpage-header #navHomeTablet .user-menu2:before{
	content: "\f007";
	display: inline-block;
	padding-right: 5px;
	position: relative;
	font-family: FontAwesome;
	top: 0;
	left: 0;
}
/* add end */
.frontpage-header .sidebar .member-view .user-menu > .bubble,
.frontpage-header #navHomeTablet .user-menu > .bubble{
	display: none;
	position: absolute;
	top: 35px;
	right: -40px;
	background-color: #fff;
	color: #444;
	width: 250px;
	min-height: 100px;
	max-width: 276px;
	z-index: 1060;
	border: 1px solid rgba(0,0,0,0.2);
	border-radius: 6px;
	-webkit-box-shadow: 0 5px 10px rgba(0,0,0,0.2);
	box-shadow: 0 5px 10px rgba(0,0,0,0.2);
}

.frontpage-header .sidebar .member-view .user-menu > .bubble:before,
.frontpage-header #navHomeTablet .user-menu > .bubble:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: #fff;
	border-style: solid;
	border-width: 0 6px 10px;
	top: -10px;
	right: 36%;
	z-index: 1060;
}

/* add */
.frontpage-header .sidebar .member-view .user-menu > .bubble:after,
.frontpage-header #navHomeTablet .user-menu > .bubble:after{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: rgba(0,0,0,0.2);;
	border-style: solid;
	border-width: 0 8px 11px;
	top: -11px;
	right: 35.25%;
	z-index: 1059;
}
/* add end */

.frontpage-header .sidebar .member-view .user-menu:focus > .bubble,
.frontpage-header .sidebar .member-view .user-menu:hover > .bubble,
.frontpage-header #navHomeTablet .user-menu:focus > .bubble,
.frontpage-header #navHomeTablet .user-menu:hover > .bubble{
	display: block;
}

/* add */
.frontpage-header .sidebar .servicenumber {
	position: relative;
}
.frontpage-header .sidebar .servicenumber:before {
	content: "\f0d1";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}
.frontpage-header .sidebar .servicenumber input {
	padding-left: 35px;
}
.frontpage-header .sidebar .mail-adress {
	position: relative;
}
.frontpage-header .sidebar .mail-adress:before {
	content: "\f003";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}
.frontpage-header .sidebar .mail-adress input {
	padding-left: 35px;
}
.frontpage-header .sidebar .mail-adress-f {
	position: relative;
}
.frontpage-header .sidebar .mail-adress-f:before {
	content: "\f0e0";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}
.frontpage-header .sidebar .mail-adress-f input {
	padding-left: 35px;
}
.frontpage-header .sidebar .password {
	position: relative;
}
.frontpage-header .sidebar .password:before {
	content: "\f023";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}
.frontpage-header .sidebar .password input {
	padding-left: 35px;
}
.frontpage-header .sidebar .user-id {
	position: relative;
}
.frontpage-header .sidebar .user-id:before {
	content: "\f007";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}
.frontpage-header .sidebar .user-id input {
	padding-left: 35px;
}
/* add end */

.bubble .login-panel {
	float: left;
	width: 123px;
	padding: 10px 0;
	cursor: default;
}

.bubble .login-panel .fa-user {
	font-size: 60px;
	line-height: 60px;
}

.bubble .login-panel .username {
	font-size: 11px;
	font-weight: 700;
	line-height: 20px;
}

.bubble .login-panel ul {
	list-style: none;
	padding-left: 30px;
	margin: 0;
}

.bubble .login-panel ul > li {
	position: relative;
	font-size: 11px;
	line-height: 18px;
	margin: 2px 0;
	text-align:left;
}

.bubble .login-panel ul > li:before {
	position: absolute;
	font-family: 'FontAwesome';
	font-size: 12px;
	left: -25px;
}

.bubble .login-panel ul > li:hover::before {
	color: var(--brand);
}

.bubble .login-panel ul > li.membernav-1:before {
	content: "\f0c9";
}

.bubble .login-panel ul > li.membernav-2:before {
	content: "\f0d1";
}

.bubble .login-panel ul > li.membernav-3:before {
	content: "\f005";
}

.bubble .login-panel ul > li.membernav-4:before {
	content: "\f013";
}

.bubble .login-panel ul > li.membernav-5:before {
	content: "\f08b";
}

.bubble .login-panel ul > li:first-child {
	margin: 0 0 2px;
}

.bubble .login-panel ul > li:last-child {
	margin: 2px 0 0;
}

.bubble .login-panel ul > li > a {
	color: #000;
	text-decoration: none;
}

.bubble .login-panel ul > li > a:hover {
	color: var(--brand);
	text-decoration: none;
}


.sales .title {
	color: #444;
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	line-height: 43px;
	margin-top: 15px;
	margin-bottom: 15px;
}

.sales .nav-tabs {
	border-bottom: none;
}

.sales .nav-tabs .tip {
	position: absolute;
	bottom: 58px;
	right: 35px;
	background-color: #ffe100;
	color: #444;
	font-size: 12px;
	line-height: 14px;
	width: 260px;
	padding: 10px;
	text-align: left;
	border-radius: 10px;
}

.sales .nav-tabs .tip:after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-top-color: #ffe100;
	border-style: solid;
	border-width: 10px 5px 0;
	bottom: -10px;
	left: 73%;
}

.sales .nav-tabs .first .tip {
	position: absolute;
	bottom: 58px;
	left: 25px;
	background-color: #ffe100;
	color: #444;
	font-size: 12px;
	line-height: 14px;
	width: 260px;
	padding: 10px;
	text-align: left;
	border-radius: 10px;
}

.sales .nav-tabs .first .tip:after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-top-color: #ffe100;
	border-style: solid;
	border-width: 10px 5px 0;
	bottom: -10px;
	left: 27%;
}

.sales .nav-tabs .tip.bottom {
	position: absolute;
	bottom: -65px;
	right: 35px;
	background-color: #ffe100;
	color: #444;
	font-size: 12px;
	line-height: 14px;
	width: 260px;
	padding: 10px;
	text-align: left;
	border-radius: 10px;
	z-index: 10;
}

.sales .nav-tabs .tip.bottom:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: #ffe100;
	border-style: solid;
	border-width: 0 5px 10px;
	top: -10px;
	left: 73%;
}

.sales .nav-tabs .first .tip.bottom {
	position: absolute;
	bottom: -65px;
	left: 25px;
	background-color: #ffe100;
	color: #444;
	font-size: 12px;
	line-height: 14px;
	width: 260px;
	padding: 10px;
	text-align: left;
	border-radius: 10px;
	z-index: 10;
}

.sales .nav-tabs .first .tip.bottom:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: #ffe100;
	border-style: solid;
	border-width: 0 5px 10px;
	top: -10px;
	left: 27%;
}

.sales .nav-tabs .tip.bottom:after {
	content: none;
}

.sales .nav-tabs .first .tip.bottom:after {
	content: none;
}

.sales .nav-tabs > li {
	min-width: 180px;
	text-align: center;
	margin-right: 10px;
	margin-bottom: 0;
}

.sales .nav-tabs > li:last-child {
	margin-right: 0;
}

.sales .nav-tabs > li:hover > .tip {
	display: block;
}

.sales .nav-tabs > li > a {
	background-color: #e7e7e7;
	color: #444;
	font-weight: 700;
	border: none;
	border-radius: 0;
	padding: 10px 7px;
	margin-right: 0;
}

.sales .nav-tabs > li > a > span {
	display: block;
	font-size: 11px;
}

.sales .nav-tabs > li.active > a {
	background-color: var(--brand) !important;
	color: #fff;
	border: none;
	border-radius: 0;
}

.sales .nav-tabs > li:hover > a {
	background: #444;
	color: #fff;
}

.sales .tab-content {
	padding-top: 30px;
	padding-bottom: 30px;
}

.sales .specials {
	position: relative;
	overflow: hidden;
}

.sales .specials::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url(/frontend_dektop/img/bg_quotes.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	filter: blur(18px);
	z-index: -1;
}

.sales .car-container {
	float: left;
	max-width: 235px;
	width: 100%;
	text-align: center;
	margin-right: 70px;
	overflow: hidden;
	background: #ffffff;
	border: 2px solid #e5e7eb;
	transition: border-color 0.2s ease;
}

.sales .car-container:hover {
	border-color: var(--brand);
	background: #f8fafc;
}

.sales .car-container:last-child {
	margin-right: 0;
}

.sales .car-container .image {
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	background-color: #ffffff;
	height: 125px;
	border-bottom: 1px solid #e5e7eb;
}

.sales .car-container .sale-details {
	background: #ffffff;
	color: #374151;
	font-size: 14px;
	line-height: 20px;
	text-align: center;
	padding: 20px;
	min-height: 280px;
}

.sales .car-container .title {
	color: var(--brand);
	font-size: 20px;
	font-weight: 700;
	line-height: 26px;
	margin-top: 0;
	margin-bottom: 8px;
}

.sales .car-container .highlight {
	background-color: #fff;
	color: #000;
	font-size: 16px;
	text-transform: uppercase;
	line-height: 20px;
	font-weight: 700;
	height: 50px;
	border-radius: 5px;
	padding: 5px 10px;
	display: table-cell;
	width: 171px;
	vertical-align: middle;
}

.sales .car-container .details {
	margin-top: 10px;
	min-height:100px;
}

.sales .car-container .price {
	font-size: 24px;
	line-height: 28px;
	font-weight: 700;
	margin-top: 15px;
	color: var(--brand);
}

.sales .car-container .sale-btn {
	background-color: var(--brand);
	margin-top: 20px;
	border: none;
	transition: background-color 0.2s ease;
}

.sales .car-container .sale-btn > a {
	display: block;
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	line-height: 50px;
	text-decoration: none;
}

.sales .car-container .sale-btn:hover {
	background-color: var(--brand-600);
}

.sales .car-container .sale-btn > a:hover {
	text-decoration: none;
	color: #fff;
}

.sales .car-container .sale-btn i{
	margin-left:6px;
}

section.content {
	padding-top: 25px;
	padding-bottom: 25px;
}

section.breadcrumb {
	padding-top: 0px;
	padding-bottom: 0px;
}

section.content h2.title,
main section.content h2{
	color: #444;
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	line-height: 43px;
	margin-top: 0;
	margin-bottom: 15px;
}

section.content.transport {
	/*
	background-image: url(../img/frontpage-4-2048x1310.jpg);
	background-position: center 59%;
	background-repeat: no-repeat;*/
}

section.content.text-white h3.title {
	color: #fff;
	font-size: 28px;
	font-weight: 700;
	line-height: 33.5px;
	margin-top: 0;
	margin-bottom: 15px;
}

section.content h3.title,
.heading3.title{
	color: #444;
	font-size: 26px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 15px;
}

section.content h4.title {
	color: #444;
	font-size: 22px;
	font-weight: 400;
	line-height: 28px;
	margin-top: 0;
	margin-bottom: 5px;
}

section.content .link-list {
	float: left;
	width: 265px;
	margin-right: 20px;
}

section.content .link-list:last-child {
	margin-right: 0;
}

section.content .link-list ul {
	list-style: none;
	padding-left: 0;
	margin: 0;
}

section.content .link-list ul > li > a {
	color: #444;
	font-size: 14px;
	text-decoration: underline;
	line-height: 30px;
}

section.content .link-list ul > li > a:hover {
	color: #444;
	text-decoration: none;
}

section.content ul.signed {
	list-style: none;
	padding-left: 19px;
	margin: 0;
}

section.content ul.signed > li {
	position: relative;
	line-height: 30px;
	padding: 0;
}


section.content ul.signed > li.mark {
	background-color: transparent;
}


section.content ul.signed > li.ferry:before {
	position: absolute !important;
	top: -1px;
	left: -19px;
	content: "\f21a";
	font-family: FontAwesome;
	font-size: 16px;
	color: var(--brand);
}

section.content ul.signed > li.city:before,
section.content ul.signed > li.mark:before {
	position: absolute !important;
	top: -1px;
	left: -19px;
	content: "\f041";
	font-family: FontAwesome;
	font-size: 16px;
	color: var(--brand);
}

section.content ul.signed > li.train_station:before,
section.content ul.signed > li.train:before {
	position: absolute !important;
	top:-1px;
	left: -19px;
	content: "\f238";
	font-family: FontAwesome;
	font-size: 16px;
	color: var(--brand);
}

section.content ul.signed > li.airport:before,
section.content ul.signed > li.plane:before {
	position: absolute !important;
	top: 0;
	left: -19px;
	content: "\f072";
	font-family: FontAwesome;
	font-size: 16px;
	color: var(--brand);
}

section.content ul.signed > li.thumb-up {
	position: relative;
	color: var(--brand);
	font-size: 24px;
	line-height: 30px;
	padding: 0;
	margin-bottom: 6px;
}

section.content ul.signed > li.thumb-up:before {
	position: absolute !important;
	top: 0;
	left: -35px;
	content: "\f087";
	font-family: FontAwesome;
	font-size: 24px;
	color: var(--brand);
}

section.content ul.signed > li > a {
	color: var(--brand);
	font-size: 14px;
	text-decoration: none;
	line-height: 30px;
}

section.content ul.signed > li > a:hover {
	color: var(--brand);
	text-decoration: underline;
}

section.content ul.near-by {
	list-style: none;
	padding-left: 0;
	padding-bottom: 8px;
	margin: 8px 0 0;
}

section.content ul.near-by > li {
	position: relative;
	margin-bottom: 6px;
}

section.content ul.near-by > li > strong {
	position: absolute;
	top: 0;
	left: 63px;
	color: var(--brand);
	line-height: 50px;
}

section.content ul.near-by > li > span {
	position: absolute;
	top: 0;
	left: 151px;
	color: var(--brand);
	line-height: 50px;
}

section.content ul.without {
	list-style: none;
	padding-left: 0;
	margin: 0;
}

section.content ul.without > li {
	font-size: 16px;
	margin-bottom: 2px;
}

section.content ul.without > li > a {
	color: var(--brand);
	font-size: 16px;
	text-decoration: none;
}

section.content ul.without > li > .fa-map-marker {
	margin-left: 5px;
	margin-right: 3px;
}

section.content ul.without > li > a:hover {
	color: var(--brand);
	text-decoration: underline;
}

.green-lane {
	background-color: var(--brand);
	color: #fff;
	padding-top: 34px !important;
	padding-bottom: 34px !important;
}

.green-lane .title {
	color: #fff !important;
	font-size: 22px;
	font-weight: 700;
	text-align: center;
	line-height: 26.5px;
}


/**
 * Landingpage
**/
#landingpage .frontpage-header-other-bg {
	min-height: 335px;
	position: relative;
}

#landingpage .city-station-header {
	min-height: 235px;
}

#landingpage .frontpage-header-other-bg:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-image: url(../img/sitemap-de-map-2048x1365.jpg);
	background-position: center 13%;
	background-repeat: no-repeat;
	background-size: 100%;
	z-index: -2;
}

#landingpage .frontpage-header-other-bg:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-color: rgba(0, 0, 0, .2);
	z-index: -1;
}

#landingpage .frontpage-header .sidebar {
	min-height: 335px;
}

#landingpage.auto-h .frontpage-header .sidebar {
	min-height: 690px;
}

#landingpage .grey-area {
	background-color: #e7e7e7;
}

#landingpage .grey-area.light {
	background-color: #f5f5f5;
}

#landingpage .grey-area h4.title {
	color: #444;
	font-size: 22px;
	font-weight: 400;
	line-height: 28px;
	margin-top: 0;
	margin-bottom: 5px;
	text-transform: none;
}

#landingpage .grey-area .title,
#landingpage main section.grey-area h2{
	font-size: 28px;
	font-weight: 700;
	text-transform: uppercase;
	/*margin-top: 0;
	margin-bottom: 24px;*/
}

#landingpage .sales.grey-area .title {
	font-size: 36px;
}

#landingpage .sales .car-container .title {
	font-size: 22px;
}

#landingpage section.content .title-h1 {
	color: #444;
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	line-height: 32px;
	margin-top: 0;
	margin-bottom: 15px;
}

#landingpage section.content h2.title,
#landingpage main section h2{
	text-align: left;
	line-height: 32px;
}

#landingpage section.content .title-h2 {
	color: #444;
	font-size: 28px;
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 0;
	margin-bottom: 15px;
}

#landingpage section.content h3.title {
	font-size: 28px;
	text-transform: uppercase;
}

#landingpage section.content .title-h3 {
	font-size: 20px;
	margin-top: 5px;
}

#landingpage section.content .title-h4 {
	color: #444;
	font-size: 22px;
	font-weight: 400;
	line-height: 28px;
	margin-top: 0;
	margin-bottom: 5px;
}

#landingpage section.content .to-top {
	position: absolute;
	top: 0;
	right: 30px;
	font-size: 12px;
}

#landingpage section.content .to-top:before {
	position: absolute;
	top: 1px;
	left: -13px;
	font-family: FontAwesome;
	content: "\f106";
	color: var(--brand);
}

#landingpage section.content .to-top > a {
	color: var(--brand);
	text-decoration: none;
}

#landingpage section.content .to-top > a:hover {
	color: var(--brand);
	text-decoration: underline;
}

#landingpage section.content.green-lane h3.title {
	font-size: 26px;
	text-transform:	none;
	line-height: 1.42857143;
	margin-bottom: 0;
}

/*#landingpage .grey-area .sales .title {
	color: #444;
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	line-height: 43px;
	margin-top: 15px;
	margin-bottom: 15px;
}*/

#landingpage .sales .title {
	text-transform: uppercase;
	/*margin-top: 20px;*/
}

#landingpage section.content .link-list {
	width: 272px;
}

#landingpage section.content .link-list ul > li > a {
	color: var(--brand);
	text-decoration: underline;
}

#landingpage section.content .link-list ul > li > a:hover {
	color: var(--brand);
	text-decoration: none;
}

#landingpage section.content ul.signed > li > a {
	color: var(--brand);
	text-decoration: none;
}

#landingpage section.content ul.signed > li > a:hover {
	color: var(--brand);
	text-decoration: underline;
}

#landingpage section.content .link-list-small {
	float: left;
	width: 280px;
	margin-right: 10px;
}

#landingpage section.content .link-list-small:last-child {
	margin-right: 0;
}

#landingpage table.stations th {
	font-weight: 400;
	line-height: 30px;
}

#landingpage table.stations tbody tr:nth-child(even) {
	background-color: #f5f5f5;
}

#landingpage table.stations tbody tr:nth-child(odd) {
	background-color: #e7e7e7;
}

#landingpage table.stations td {
	line-height: 51px;
}

#landingpage table.stations .diff {
	width: 88px;
}

#landingpage table.stations .carrier {
	width: 92px;
}

#landingpage table.stations .place {
	width: 296px;
}

#landingpage table.stations .place-small {
	width: 185px;
}

#landingpage table.stations .price {
	width: 97px;
}

#landingpage table.stations td a {
	color: var(--brand);
}

#landingpage .fleet {
	background-color: #fff;
	border: 1px solid var(--brand);
	text-align: center;
	padding-bottom: 12px;
}

#landingpage .fleet .header {
	background-color: var(--brand);
	color: #fff;
	text-align: center;
	border-bottom: 5px solid #e7e7e7;
	padding-top: 5px;
	padding-bottom: 12px;
}

#landingpage .fleet .header h4 {
	font-size: 22px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 3px;
}

#landingpage .fleet .image {
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	background-color: #fff;
	height: 125px;
}

#landingpage .fleet .vol {
	margin-top: 5px;
}

#landingpage .fleet .price {
	color: var(--brand);
	font-size: 22px;
	font-weight: 700;
	line-height: 30px;
}


/**
 * Breadcrumb
**/
.breadcrumb {
	padding: 11px 0;
	margin-bottom: 0;
	background-color: #fff;
	border-radius: 0;
}

.breadcrumb > li {
	font-size: 18px;
}

.breadcrumb > li:first-child::before {
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-right: 6px;
	vertical-align: -2px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238E939C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/><polyline points='9 22 9 12 15 12 15 22'/></svg>");
	background-size: 14px 14px;
	background-repeat: no-repeat;
	transition: filter .15s ease;
}

.breadcrumb [itemprop="name"] {
	color: #8E939C !important;
}

.breadcrumb > li+li:before {
	content: "\f105";
	color: #444;
	font-size: 18px;
	font-family: FontAwesome;
	padding: 0 9px 0 8px;
}

.breadcrumb > li > a {
	color: var(--brand);
	text-decoration: none;
}

.breadcrumb > li > a:hover {
	color: var(--brand);
	text-decoration: underline;
}

.breadcrumb > .active {
	color: #444;
}

/**
 * Schmaler Header
**/
.header-small {
	height: 63px;
}

.header-small .lettering {
	font-family: 'Roboto';
	font-weight: 700;
}

.header-small .lettering .txt-green {
	color: var(--brand);
	font-size: 35px;
	line-height: 42px;
}

.header-small .lettering .txt-grey {
	color: #ccc;
	font-size: 27px;
	line-height: 32.4px;
}

.header-small .account {
	font-size: 14px;
	line-height: 60px;
}

.header-small .account .user-menu {
	position: relative;
	display: inline-block;
	color: var(--brand);
	text-decoration: underline;
	padding: 0 0 5px;
	cursor: pointer;
}

.header-small .account .user-menu:before {
	content: "\f007";
	display: inline-block;
	padding-right: 5px;
	position: relative;
	font-family: FontAwesome;
	top: 0;
	left: 0;
}

.header-small .account .user-menu > .bubble {
	display: none;
	position: absolute;
	top: 50px;
	right: -40px;
	background-color: #fff;
	color: #444;
	width: 250px;
	min-height: 100px;
	max-width: 276px;
	z-index: 1060;
	border: 1px solid rgba(0,0,0,0.2);
	border-radius: 6px;
	-webkit-box-shadow: 0 5px 10px rgba(0,0,0,0.2);
	box-shadow: 0 5px 10px rgba(0,0,0,0.2);
}

.header-small .account .user-menu > .bubble:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: #fff;
	border-style: solid;
	border-width: 0 6px 10px;
	top: -10px;
	right: 36%;
	z-index: 1060;
}

.header-small .account .user-menu > .bubble:after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: rgba(0,0,0,0.2);;
	border-style: solid;
	border-width: 0 8px 11px;
	top: -11px;
	right: 35.25%;
	z-index: 1059;
}

.header-small .account .user-menu:focus > .bubble,
.header-small .account .user-menu:hover > .bubble {
	display: block;
}



/**
 * Suchdetailleiste
**/
.search-data {
	position: relative;
	color: var(--text);
	min-height: 50px;
}

.search-data:after {
	content: "";
	background-image: url(../img/frontpage-3-2048x1310.jpg);
	background-position: center top;
	background-repeat: no-repeat;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1;
	opacity: .5;
}

.search-data .container {
	background-color: var(--card);
	padding-top: 8px;
	padding-bottom: 9px;
	border-radius: 8px;
}

.search-data .from {
	float: left;
	width: 325px;
	font-size: 17px;
	font-weight: 700;
	line-height: 16px;
	margin-right: 20px;
}

.search-data .from > .time {
	font-size: 12px;
	line-height: 16px;
	font-weight: 400;
}

.search-data .to {
	float: left;
	width: 250px;
	font-size: 14px;
	font-weight: 700;
	line-height: 16px;
	padding-top: 1px;
}

.search-data .to > .time {
	font-size: 12px;
	line-height: 16px;
	font-weight: 400;
}

.search-data .num-result {
	float: left;
	width: 325px;
	font-size: 20px;
	line-height: 25px;
	margin-top: 3px;
}

.search-data .search-btn {
	float: right;
	width: 230px;
	padding-left: 20px;
}

.search-data .search-btn .btn-green,
.search-data .search-btn .btn-greenInverse {
	width: 100%;
	font-size: 14px;
	padding: 5px 10px;
	margin-top: 2px;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
}

.search-data .search-btn .btn-greenInverse{
	background-color: #ba0000;
	font-weight: bolder;
}

.search-data .search-btn .btn-green:focus,
.search-data .search-btn .btn-green:hover {
	background-color: #ba0000;
	color: #fff;
	border-color: #ba0000;
}

.search-data .search-btn .btn-greenInverse:focus,
.search-data .search-btn .btn-greenInverse:hover {
	background-color: #558000;
	color: #fff;
	border-color: #558000;
}

.search-data .edit {
	display: none;
}

.search-data .edit .search-btn {
	float: right;
	width: 210px;
	padding-left: 0;
}

.search-data .edit ul.search {
	list-style: none;
	margin: 0;
	padding: 6px 0 0;
}

.search-data .edit ul.search > li {
	float: left;
    margin-right: 11px;
    margin-top: -4px;
}

.search-data .edit ul.search > li:last-child {
	float: left;
	margin-right: 0;
}

.search-data .edit .from-label {
	width: 35px;
	font-size: 12px;
	font-weight: 400;
	line-height: 23px;
	margin-right: 0 !important;
}

.search-data .edit .ort .sbHolder {
	width: 180px;
	height: 25px;
}

.search-data .edit .time .sbHolder {
	width: 80px;
	height: 25px;
}

.search-data .edit .sbOptions a:link,
.search-data .edit .sbOptions a:visited {
	padding: 2px 0 2px 16px;
}

.search-data .edit .time .sbSelector {
	padding-left: 16px;
}

.search-data .edit .time .sbSelector:before {
	content: "\f017";
	position: absolute;
	top: 0;
	left: -3px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.search-data .edit .icon-toggle {
	line-height: 23px;
}

.search-data .edit .sbSelector {
	height: 25px;
	line-height: 25px;
}

.search-data .edit .anmietdatum {
	position: relative;
}


.search-data .edit .anmietdatum:before {
	content: "\f073";
    position: absolute;
    top: 7px;
    left: 7px;
    font-family: FontAwesome;
    font-size: 14px;
    color: var(--brand);
    z-index: 1;
}

.search-data .edit .anmietdatum input {
	padding-left: 30px;
    width: 128px;
    background-color: #FFF;
	font-size: 13px !important;
}

.search-data .edit .anmietzeit {
	position: relative;
}

.search-data .edit .anmietzeit:before {
	content: "\f017";
	position: absolute;
	top: 7px;
	left: 7px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.search-data .edit .anmietzeit select {
	padding-left: 25px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
	width: 80px;
}

.search-data .edit .to-label {
	width: 35px;
	font-size: 12px;
	font-weight: 400;
	line-height: 23px;
	margin-right: 0 !important;
}

.search-data .edit .rueckgabedatum {
	position: relative;
}

.search-data .edit .rueckgabedatum:before {
	content: "\f073";
	position: absolute;
	top: 7px;
	left: 7px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.search-data .edit .rueckgabedatum input {
	padding-left: 30px;
	width: 128px;
	background-color: #FFF;
	font-size: 13px !important;
}

.search-data .edit .rueckgabezeit {
	position: relative;
}

.search-data .edit .rueckgabezeit:before {
	content: "\f017";
	position: absolute;
	top: 2px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.search-data .edit .rueckgabezeit select {
	padding-left: 25px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
	width: 85px;
}

.search-data .edit label {
	width: 40px;
	font-size: 12px;
	font-weight: 400;
	line-height: 14.4px;
}

.search-data .edit .end-location label {
	font-size: 12px;
	font-weight: 400;
	line-height: 14.4px;
	text-align: center;
}

.search-data .edit .form-control {
	height: 25px;
	font-size: 12px;
	border-radius: 0;
	padding: 2px 0 2px 5px;
}

.search-data .edit input:focus {
	border-color: #ccc;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.search-data .edit .form-group {
	margin-top: 6px;
	margin-right: 10px;
}

.search-data .edit .form-group:last-child {
	margin-right: 0px;
}

.search-data .edit .input-group-addon {
	background-color: #fff;
	color: var(--brand);
	border-radius: 0;
	padding: 2px 0 2px 10px;
}

.search-data .edit .input-group .form-control {
	border-left: none;
	padding: 2px 5px;
}


/**
 * Suchergebnisse
**/
.panel-result {
	border-color: #ccc;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
}

.panel-result > .panel-heading {
	color: var(--brand);
	background-color: #fff;
	border-color: #ccc;
	padding: 10px;
	border-bottom: none;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}

.panel-result > .panel-heading .panel-title {
	font-weight: 700;
}

.panel-result > .panel-heading .panel-title > .badge {
	background-color: #e7e7e7;
	color: var(--brand);
	font-size: 14px;
	font-weight: 400;
	padding: 5px 10px;
	margin-right: 10px;
	margin-left:4px;
}

.panel-result > .panel-heading .label {
	display: block;
	width: 137px;
	font-size: 12px;
	line-height: 14.4px;
	padding: .2em 0 .1em;
	margin-top: 2px;
	position: relative;
}


.panel-result > .panel-heading .tariftype {
	margin-left:-13px;
}

.panel-result > .panel-heading .label .tip {
	position: absolute;
	bottom: 28px;
	right: 15px;
	background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%);
	color: #ffffff;
	font-size: 13px;
	line-height: 1.6;
	width: 280px;
	padding: 14px 18px;
	text-align: left;
	border-radius: 12px;
	white-space: normal;
	font-weight: 400;
	z-index: 10000;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.15);
	animation: tooltipSlideIn 0.25s ease-out;
}

.panel-result > .panel-heading .label .tip:after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-top-color: #2d5f41;
	border-style: solid;
	border-width: 10px 5px 0;
	bottom: -10px;
	left: 85%;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.panel-result > .panel-heading .label .tip.bottom {
	position: absolute;
	bottom: -72px;
	right: 15px;
	background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%);
	color: #ffffff;
	font-size: 13px;
	line-height: 1.6;
	width: 280px;
	padding: 14px 18px;
	text-align: left;
	border-radius: 12px;
	white-space: normal;
	font-weight: 400;
	z-index: 10000;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.15);
	animation: tooltipSlideIn 0.25s ease-out;
}

.panel-result > .panel-heading .label .tip.bottom:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: #1e4029;
	border-style: solid;
	border-width: 0 5px 10px;
	top: -10px;
	left: 85%;
	filter: drop-shadow(0 -2px 4px rgba(0, 0, 0, 0.2));
}

.panel-result > .panel-heading .label .tip.bottom:after {
	content: none;
}

.panel-result > .panel-heading .label:hover > .tip {
	display: block;
}






.panel-result .result_info {
	display: block;
	font-size: 12px;
	line-height: 14.4px;
	padding: .2em 0 .1em;
	margin-top: 2px;
	position: relative;
}


.panel-result .result_info .tip {
	position: absolute;
	bottom: 28px;
	right: -28px;
	background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%);
	color: #ffffff;
	font-size: 13px;
	line-height: 1.6;
	width: 280px;
	padding: 14px 18px;
	text-align: left;
	border-radius: 12px;
	white-space: normal;
	font-weight: 400;
	z-index: 10000;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.15);
	animation: tooltipSlideIn 0.25s ease-out;
}

.panel-result .result_info .tip:after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-top-color: #2d5f41;
	border-style: solid;
	border-width: 10px 5px 0;
	bottom: -10px;
	left: 85%;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.panel-result .result_info .tip.bottom {
	position: absolute;
	bottom: -72px;
	right: 15px;
	background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%);
	color: #ffffff;
	font-size: 13px;
	line-height: 1.6;
	width: 280px;
	padding: 14px 18px;
	text-align: left;
	border-radius: 12px;
	white-space: normal;
	font-weight: 400;
	z-index: 10000;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.15);
	animation: tooltipSlideIn 0.25s ease-out;
}

.panel-result .result_info .tip.bottom:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: #1e4029;
	border-style: solid;
	border-width: 0 5px 10px;
	top: -10px;
	left: 85%;
	filter: drop-shadow(0 -2px 4px rgba(0, 0, 0, 0.2));
}

.panel-result .result_info .tip.bottom:after {
	content: none;
}

.panel-result .result_info:hover > .tip {
	display: block;
}




.code-box-tip .tip {
	position: absolute;
	bottom: 93px;
	right: 52px;
	background-color: #ffe100;
	color: #444;
	font-size: 12px;
	line-height: 14px;
	width: 260px;
	padding: 10px;
	text-align: left;
	border-radius: 10px;
	white-space: normal;
	font-weight: 400;
	z-index: 5;
}

.code-box-tip .tip:after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-top-color: #ffe100;
	border-style: solid;
	border-width: 10px 5px 0;
	bottom: -10px;
	left: 85%;
}

.code-box-tip:hover > .tip {
	display: block;
}



.panel-result > .panel-heading .label-available {
	background-color: var(--brand);
	cursor: default;
}

.panel-result > .panel-heading .label-request {
	background-color: #e7e7e7;
	color: #777;
	cursor: default;
}

.panel-result > .panel-heading .label-studentrate {
	background-color: #ff9600;
	cursor: default;
}

.panel-result > .panel-heading .label-privaterate {
	background-color: #ccc;
	cursor: default;
}

.panel-result > .panel-heading .label-companyrate {
	background-color: #006cc6;
	cursor: default;
}

.panel-result > .panel-heading .interprise {
	color: #333;
	font-weight: 700;
	text-transform: uppercase;
	text-align: right;
	margin-right: 5px;
	margin-top: 2px;
	font-size:12px;
}

.panel-result > .panel-body {
	background-color: #f5f5f5;
	padding: 10px 15px 20px;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.panel-result .form-group {
	margin-bottom: 10px;
}

.panel-result .form-group+.form-group {
	margin-top: -5px;
}

.panel-result > .panel-body label {
	font-size: 12px;
	margin-bottom: 0;
	font-weight: 400
}

.panel-result > .panel-body .map-link {
	color: #ba0000;
	font-size: 12px;
	cursor: pointer;
	position: relative;
	display: none;
}

.panel-result > .panel-body .map-link:before {
	content: "\f041";
	display: inline-block;
	padding-right: 5px;
	position: relative;
	font-family: FontAwesome;
	top: 0;
	left: 0;
}

.panel-result > .panel-body .map-lin:focus,
.panel-result > .panel-body .map-link:hover {
	color: #ba0000;
	text-decoration: underline;
}

.panel-result > .panel-body .caption > .desc {
	background-color: #ccc;
	font-size: 12px;
	line-height: 20px;
}

.panel-result > .panel-body ul.basics {
	margin: 15px 0 0 -5px;
	padding-left: 25px;
}

.panel-result > .panel-body ul.basics > li {
	font-size: 12px;
}

.panel-result > .panel-body ul.misc {
	list-style: none;
	margin-bottom: 0;
	padding-left: 20px;
}

.panel-result > .panel-body ul.misc.mb-10 {
	margin-bottom: 10px;
}

.panel-result > .panel-body ul.misc > li {
	position: relative;
	font-size: 12px;
}

.panel-result > .panel-body ul.misc > li:before {
	position: absolute;
	left: -20px;
	content: "\f00c";
	font-family: FontAwesome;
	color: var(--brand);
	top: 2px;
	font-size:10px;
}

.panel-result > .panel-body .price {
	font-size: 36px;
	text-align: right;
	line-height: 36px;
	margin-top: 10px;
}

.panel-result > .panel-body .price_info {
	font-size: 14px;
	text-align: right;
	margin-top: 10px;
	width: 110px;
	float: right;
}

.panel-result > .panel-body .btn-red {
	position: absolute;
	right: 20px;
	top: -60px;
	width: 150px;
	padding: 9px 0;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
}

.panel-result > .panel-body .details {
	color: #ba0000;
	font-size: 13px;
	text-align: left;
	margin-bottom: 0;
}

.panel-result > .panel-body .details > a > .read-less {
	display: block;
	color: #ba0000;
}

.panel-result > .panel-body .details > a > .read-less:after {
	content: "\f102";
	padding-left: 5px;
	display: inline-block;
	position: relative;
	font-family: FontAwesome;
	top: 0;
	right: 0;
}

.panel-result > .panel-body .details > a.collapsed > .read-more {
	display: block;
	color: #ba0000;
	position: relative;
}

.panel-result > .panel-body .details > a.collapsed > .read-more:after {
	content: "\f103";
	display: inline-block;
	padding-left: 5px;
	position: relative;
	font-family: FontAwesome;
	top: 0;
	right: 0;
}

.panel-result > .panel-body .details > a > .read-more {
	display: none;
}

.panel-result > .panel-body .details > a.collapsed > .read-less {
	display: none;
}

.panel-result > .panel-body .details > a:focus,
.panel-result > .panel-body .details > a:hover {
	color: #ba0000;
}

.panel-result > .panel-body .votes {
	color: #ba0000;
	font-size: 13px;
	text-align: right;
}

.panel-result > .panel-body .votes:hover span {
	color: #ba0000;
	text-decoration: underline;
}

.panel-result > .panel-body .votes > .fa {
	color: #ff9600;
}

.panel-result > .panel-body .tell {
	color: #ba0000;
	position: relative;
	font-size: 13px;
	text-align: right;
	cursor: pointer;
}

.panel-result > .panel-body .tell:focus,
.panel-result > .panel-body .tell:hover {
	color: #ba0000;
	text-decoration: underline;
}

.panel-result > .panel-body .tell:after {
	content: "\f064";
	display: inline-block;
	padding-left: 5px;
	position: relative;
	font-family: FontAwesome;
	top: 0;
	right: 0;
}

.panel-result > .panel-body .detail {
	margin-top: 15px;
}

.panel-result > .panel-body .detail .nav-tabs > li > a {
	background-color: #ccc;
	color: #333;
	border: 1px solid #ccc;
	border-radius: 0;
	margin-right: 5px;
}

.panel-result > .panel-body .detail .nav > li > a {
	font-size: 13px;
	line-height: 20px;
	padding: 1px 20px 2px;
	margin-right: 10px;
}

.panel-result > .panel-body .detail .nav > li > a.close-details {
	background-color: #fff;
	color: #ba0000;
	padding: 1px 6px 2px;
	margin-right: 0;
	cursor: pointer;
}

.panel-result > .panel-body .detail .nav-tabs > li.active > a,
.panel-result > .panel-body .detail .nav-tabs > li.active > a:focus,
.panel-result > .panel-body .detail .nav-tabs > li.active > a:hover {
	background-color: #fff;
	color: var(--brand);
	border: 1px solid #ccc;
	border-bottom-color: transparent;
}

.panel-result > .panel-body .detail .tab-content {
	background-color: #fff;
	border: 1px solid #ccc;
	border-top-color: transparent;
	padding: 10px;
}

.panel-result > .panel-body .detail .tab-content h4 {
	font-family: "Roboto", sans-serif;
}

.panel-result > .panel-body .detail .tab-content .text-green {
	color: var(--brand);
}

.panel-result > .panel-body .detail .tab-content .odd-even {
	font-size: 14px;
	line-height: 22px;
}

.panel-result > .panel-body .detail .tab-content .odd-even .row:nth-child(odd) {
	background-color: #f5f5f5;
}

.panel-result > .panel-body .detail .tab-content .odd-even .row:nth-child(even) {
	background-color: #fff;
}

.panel-result > .panel-body .detail .tab-content .odd-even .young-driver-fee-line {
	display: contents;
}

.panel-result > .panel-body .detail .tab-content .odd-even .young-driver-fee-line > .row {
	background-color: #fff;
}

.panel-result > .panel-body .detail .tab-content .odd-even .pl-44 {
	padding-left: 44px;
}

.panel-result > .panel-body .detail .tab-content .tab-footer {
	font-size: 13px;
	line-height: 20px;
	margin-top: 35px;
}

.panel-result > .panel-body .detail .tab-content .tab-footer .have-it {
	float: left;
	margin-right: 25px;
}

.panel-result > .panel-body .detail .tab-content .tab-footer .have-it .fa {
	color: var(--brand);
}

.panel-result > .panel-body .detail .tab-content .tab-footer .not-have-it .fa {
	color: #ba0000;
}

.panel-result > .panel-body .detail .tab-content .tab-footer a {
	color: #ba0000;
	float: right;
}

.panel-result > .panel-body .detail .tab-content .tab-footer a:focus,
.panel-result > .panel-body .detail .tab-content .tab-footer a:hover {
	color: #ba0000;
}

.panel-result > .panel-body .detail .tab-content .rating-overview {
	padding-left: 0;
}

.panel-result > .panel-body .detail .tab-content .rating-overview li {
	list-style: none;
	overflow: auto;
	margin-bottom: 6px;
}

.panel-result > .panel-body .detail .tab-content .rating-overview li a {
	display: inline-block;
	float: left;
	font-size: 12px;
	margin-right: 10px;
	text-decoration: underline;
	width: 20%;
}

.panel-result > .panel-body .detail .tab-content .rating-overview li a:hover,
.panel-result > .panel-body .detail .tab-content .rating-overview li a:focus {
	text-decoration: none;
}

.panel-result > .panel-body .detail .tab-content .rating-overview li .progress {
	float: left;
	display: inline-block;
	height: 15px;
	margin-bottom: 0;
	margin-right: 10px;
	margin-top: 3px;
	width: 50%;
}

.panel-result > .panel-body .detail .tab-content .rating-overview li span {
	font-size: 12px;
	display: inline-block;
	color: #737373;
}

.panel-result > .panel-body .detail .tab-content .ratings {
	background-color: #f7f7f7;
	border-radius: 5px;
	padding: 10px 20px;
	overflow: auto;
	margin-bottom: 20px;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header {
	overflow: hidden;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header > .stars {
	margin: 5px 10px 0 0;
	display: inline-block;
	font-size: 16px;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header > .stars .fa {
	min-width: 15px;
	min-height: 16px;
	position: relative;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header > .stars .fa-star {
	color: #ff9600;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header > .stars .fa-star-half:before {
	color: #ff9600;
	position: absolute;
	top: 3px;
	left: 0;
	z-index: 2;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header > .stars .fa-star-half:after {
	content: "\f006";
	color: #ccc;
	position: absolute;
	top: 3px;
	left: 0;
	z-index: 1;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header > .stars .fa-star-o {
	color: #ccc;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-header > .customer {
	font-size: 12px;
	font-weight: 700;
	margin: 0;
	display: inline-block;
}

.panel-result > .panel-body .detail .tab-content .last-half-year {
	margin: 10px 0;
	line-height: 1.6em;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-comment {
	font-size: 13px;
	line-height: 14px;
	margin: 5px 0;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-footer {
	overflow: hidden;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-footer a {
	float: right;
	margin-bottom: 10px;
	font-size: 11px;
	line-height: 2em;
	text-decoration: underline;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-footer a:hover,
.panel-result > .panel-body .detail .tab-content .ratings .rating-footer a:focus {
	text-decoration: none;
}

.panel-result > .panel-body .detail .tab-content .ratings .rating-footer time {
	font-weight: bold;
	font-size: 11px;
	line-height: 2em;
	float: left;
	margin-bottom: 10px;
}

.panel-result > .panel-body .detail .tab-content .ratings hr {
	margin: 3px;
}

.panel-result > .panel-body .detail .tab-content .pagination {
	margin: 0;
	list-style: none;
	padding: 0;
	overflow: hidden;
	display: block;
	font-size: 12px;
	-webkit-border-radius: 0;
	border-radius: 0;
}

.panel-result > .panel-body .detail .tab-content .pagination > li {
	display: block;
	float: left;
	min-width: 35px;
}

.panel-result > .panel-body .detail .tab-content .pagination > li.dots {
	line-height: 16px;
	text-align: center;
	font-size: 30px;
	color: #ccc;
}

.panel-result > .panel-body .detail .tab-content .pagination > li > a {
	border: none;
	color: #ba0000;
	-webkit-border-radius: 0 !important;
	border-radius: 0 !important;
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	-o-transition: 0.2s;
	-ms-transition: 0.2s;
	transition: 0.2s;
}

.panel-result > .panel-body .detail .tab-content .pagination > li > a:hover {
	background: #4d4d4d;
	color: #fff;
}

.panel-result > .panel-body .detail .tab-content .pagination > li.active > a,
.panel-result > .panel-body .detail .tab-content .pagination > li.active > a:hover {
	background: #ba0000;
	color: #fff;
}

.panel-result > .panel-body .location {
	position: relative;
}

.panel-result > .panel-body .location:after {
	content: "\f0d7";
	position: absolute;
	top: 4px;
	right: 5px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.panel-result > .panel-body .form-control {
	background-color: #fff;
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	padding: 0 10px;
	height: 30px;
	font-size: 12px;
}

.panel-result > .panel-body select {
	padding-left: 35px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
}

.panel-result > .panel-body .link-box {
	position: absolute;
	bottom: -2px;
	right: 0;
}


/**
 * Checkout-Steps
**/
.steps nav{
	margin: 5px -20px 10px;
}

.steps ul {
	list-style: none;
	padding: 0;
	margin: 0;
	overflow: hidden;
	min-width: 100%;
}

.steps ul > li {
	position: relative;
	background-color: var(--card-border);
	font-size: 14px;
	line-height: 30px;
	float: left;
	width: 18.95%;
	padding-left: 20px;
	color: var(--muted);
}

.steps ul > li:first-child {
	padding-left: 0;
	width: 24.2%;
}

.steps ul > li.active {
	background-color: var(--brand);
	color: white;
	font-size: 16px;
	font-weight: 700;
	line-height: 30px;
}

.steps ul > li > a {
	color: var(--brand);
	text-decoration: underline;
}

.steps ul > li > a:focus,
.steps ul > li > a:hover {
	color: var(--brand);
	text-decoration: none;
}

.steps ul > li.active > a {
	color: white;
	text-decoration: none;
}

.steps ul > li.active > a:focus,
.steps ul > li.active > a:hover {
	color: white;
	text-decoration: none;
}

.steps ul > li .ssl {
	display: inline-block;
	color: var(--brand);
	font-size: 12px;
	font-weight: 700;
	line-height: 1em;
	padding-right: 5px;
}

.steps ul > li.active .ssl {
	color: white;
}

/**
 * Filter-Sidebar
**/
#filtering {
	margin-top: -5px;
	margin-bottom: 35px;
}

#filtering .selected-filter {
	padding: 0 20px;
	margin-bottom: 20px;
}

#filtering .selected-filter .label-filter {
	display: block;
	width: 200px;
	background-color: #ffe100;
	color: #333;
	font-size: 13px;
	line-height: 15.6px;
	font-weight: 400;
	text-align: left;
	padding: 5px 5px 4px 10px;
	margin-bottom: 5px;
}

#filtering .selected-filter .label-filter:last-child {
	margin-bottom: 20px;
}

#filtering .selected-filter .label-filter .fa {
	color: #ba0000;
	margin-right: 5px;
	cursor: pointer;
}

#filtering .btn-clear {
	color: #ba0000;
	background-color: #e7e7e7;
	border-color: #ccc;
	font-size: 14px;
	width: 200px;
	padding: 7px 5px 8px 10px;
	text-align: left;
}

#filtering .btn-clear:focus,
#filtering .btn-clear:hover {
	color: #ba0000;
	background-color: #ccc;
	border-color: #ccc;
}

#filtering .btn-clear .fa{
	font-size: 13px;
	margin-right: 5px;
}

#filtering .panel-group {
	margin-bottom: 15px;
}

#filtering .panel-group .panel+.panel {
	margin-top: 0;
}

#filtering .panel {
	border: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

#filtering .panel:nth-child(even) {
	background-color: #f5f5f5;
}

#filtering .panel:nth-child(odd) {
	background-color: #fff;
}

#filtering .panel {
	border: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	border-radius: 0;
}

#filtering .panel-heading {
	padding: 10px 20px;
}

#filtering .panel .panel-heading a {
	display: block;
	color: var(--brand);
	font-size: 18px;
	font-weight: 700;
}

#filtering .panel .panel-heading a:focus {
	text-decoration: none;
}

#filtering .panel .panel-heading a:hover {
	color: #333;
	text-decoration: none;
}

#filtering .panel .panel-heading a .angle:after {
	font-family: FontAwesome;
	content: "\f106";
	font-weight: 400
}

#filtering .panel .panel-heading a.collapsed .angle:after {
	font-family: FontAwesome;
	content: "\f107";
	font-weight: 400
}

#filtering .panel .panel-heading a.collapsed {
	display: block;
	color: #333;
	font-size: 18px;
	font-weight: 700;
}

#filtering .panel .panel-heading a.collapsed:focus {
	text-decoration: none;
}

#filtering .panel .panel-heading a.collapsed:hover {
	color: var(--brand);
	text-decoration: none;
}

#filtering .panel-group .panel-heading+.panel-collapse > .list-group,
#filtering .panel-group .panel-heading+.panel-collapse > .panel-body {
	border-top: none;
}

#filtering .panel-body {
	font-size: 13px;
	/*padding: 0 20px;*/
	padding: 0 5px;
}

#filtering .panel-body .form-group {
	margin-top: -10px;
	margin-bottom: 10px;
}

#filtering .panel-body .form-group.has-sub-groups {
	margin-top: 0;
}

#filtering .panel-body .form-group .radio,
#filtering .panel-body .form-group .checkbox {
	margin-bottom: 7px;
	padding: 0;
}

#filtering .panel-body .form-group .sub-menu {
	position: relative;
}

#filtering .panel-body .form-group .sub-menu .btn-red {
	width: 100%;
	margin-top: 5px;
}

#filtering .panel-body .form-group > .sub-menu > .bubble {
	display: none;
	position: absolute;
	bottom: -88px;
	left: 257px;
	width: 470px;
	height: 280px;
	background-color: #fff;
	border: 1px solid var(--brand);
	border-radius: 6px;
	padding: 15px 15px 10px 20px;
	z-index: 10;
}

#filtering .panel-body .form-group > .sub-menu > .bubble > button.close {
	position: absolute;
	top: 10px;
	right: 20px;
	font-size: 14px;
	line-height: 20px;
}

#filtering .panel-body .form-group > .sub-menu > .bubble:before {
	content: "";
	position: absolute;
	bottom: 90px;
	left: -19px;
	width: 0;
	height: 0;
	border-top: 14px solid transparent;
	border-bottom: 14px solid transparent;
	border-right: 19px solid var(--brand);
	z-index: 9;
}

#filtering .panel-body .form-group > .sub-menu > .bubble:after {
	content: "";
	position: absolute;
	bottom: 91px;
	left: -18px;
	width: 0;
	height: 0;
	border-top: 13px solid transparent;
	border-bottom: 13px solid transparent;
	border-right: 18px solid #fff;
	z-index: 10;
}

#filtering .panel-body .form-group > .sub-menu > .bubble .title {
	font-size: 22px;
	line-height: 28px;
	margin-bottom: 10px;
}

#filtering .panel-body .form-group > .sub-menu > .bubble .col-one {
	display: table-cell;
	width: 245px;
	font-size: 14px;
	padding-right: 20px;
}

#filtering .panel-body .form-group > .sub-menu > .bubble .col-two {
	display: table-cell;
	width: 188px;
	font-size: 14px;
}

#filtering .panel-body .form-group > .sub-menu > .bubble .subtitle {
	color: #ba0000;
	font-size: 16px;
	font-weight: 700;
	line-height: 22px;
}

#filtering .panel-body .form-group > .sub-menu > .bubble label {
	display: block;
}

#filtering .panel-body .form-group > .sub-menu > .bubble .col-one label > span {
	float: right;
	width: 65px;
}

#filtering .panel-body .form-group > .sub-menu > .bubble .col-two label > span {
	float: right;
	width: 50px;
}

#filtering .btn-green {
	width: 100%;
	padding: 8px 12px;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
}

#filtering .panel-body .form-group > .sub-menu > .bubble .btn-green {
	position: absolute;
	bottom: 10px;
	left: 15px;
	right: 10px;
	width: 443px;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	line-height: 16.8px;
	padding: 6px 0;
}

#filtering .checkbox:focus,
#filtering .checkbox:hover {
	background-color: #dbe3cc;
	color: #000;
}

.panel-sidebar {
	border-color: #ccc;
}

.panel-sidebar > .panel-heading {
	color: var(--brand);
	background-color: #fff;
	border-color: #ccc;
	padding: 15px 20px;
	border-top-right-radius: 4px;
	border-top-left-radius: 4px;
}

.panel-sidebar > .panel-heading > .panel-title {
	font-size: 18px;
	font-weight: 700;
	line-height: 21.6px;
}

.panel-sidebar > .panel-body {
	background-color: #f5f5f5;
	padding: 15px 20px;
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
}

.panel-sidebar > .panel-body .text {
	font-size: 14px;
	padding-bottom: 20px;
}

.panel-sidebar > .panel-body .title {
	color: var(--brand);
	font-size: 16px;
	font-weight: 700;
	line-height: 22px;
	padding-bottom: 5px;
}

.panel-sidebar > .panel-body .tel-box {
	font-size: 28px;
	font-weight: 700;
	line-height: 22px;
	padding-bottom: 25px;
}

.panel-sidebar > .panel-body .tel-box > .service-time {
	display: block;
	font-size: 15px;
	line-height: 20px;
	margin-top: 5px;
}

.panel-sidebar > .panel-body .code-box {
	font-size: 14px;
}

.panel-sidebar > .panel-body .code-box .fa {
	color: var(--brand);
	font-size: 14px;
}

.panel-sidebar > .panel-body .code {
	font-size: 22px;
	line-height: 28px;
}

/**
 * Footer
**/
footer {
	padding-top: 40px;
	padding-bottom: 20px;
}

footer .box {
	float: left;
	width: 100%;
	margin-right: 60px;
	margin-bottom: 30px;
}

footer .box:last-child {
	margin-right: 0;
}

footer .box.box-1 {
	max-width: 345px;
	font-size: 13px;
	line-height: 1.6;
}

footer .box.box-2 {
	max-width: 325px;
}

footer .box.box-3 {
	max-width: 345px;
	font-size: 14px;
	line-height: 1.5;
}

footer .brand {
	margin: 0 0 20px 0;
	display: block;
	transition: transform 0.3s ease;
}

footer .brand:hover {
	transform: scale(1.05);
}

.newsletter h4.title {
	color: #fff;
	font-size: 24px;
	margin-bottom: 20px;
	font-weight: 600;
	line-height: 1.3;
	margin-top: 0px;
}

@media (max-width: 767px) {
.newsletter h4.title {
	margin-top: 40px;
}
}

.newsletter .mail-adress {
	position: relative;
}

.newsletter .mail-adress:before {
	content: "\f003";
	position: absolute;
	top: 8px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

.newsletter .mail-adress input {
	padding-left: 35px;
}

.newsletter .form-control,
.newsletter .form-control-input {
	background-color: #fff;
	border-radius: 8px;
	border: 2px solid rgba(255,255,255,0.3);
	-webkit-box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	transition: all 0.3s ease;
}

.newsletter .form-control:focus,
.newsletter .form-control-input:focus {
	border-color: rgba(255,255,255,0.8);
	box-shadow: 0 4px 15px rgba(0,0,0,0.15);
	outline: none;
}

.newsletter .btn-red {
	background: var(--brand);
	border: none;
	border-radius: 8px;
	padding: 12px 24px;
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
	transition: background-color 0.2s ease, box-shadow 0.2s ease;
	box-shadow: 0 2px 8px rgba(45, 95, 65, 0.2);
}

.newsletter .btn-red:hover {
	background: var(--brand-600);
	box-shadow: 0 3px 12px rgba(45, 95, 65, 0.25);
}

.newsletter .help-block {
	color: rgba(255,255,255,0.9);
	font-size: 12px;
	line-height: 16.8px;
	margin-bottom: 0;
}

.newsletter .help-block.thx {
	color: #ffe100;
	font-size: 14px;
	text-align: center;
	line-height: 16.8px;
	margin-top: 10px;
	margin-bottom: 10px;
}

footer .contact {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.6;
	color: rgba(255,255,255,0.95);
}

footer .contact .tel {
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
	margin: 15px 0;
	padding: 8px 0;
	border-radius: 6px;
	transition: color 0.3s ease;
}

footer .contact .tel:hover {
	color: var(--ring);
}

.grey-lane {
	position: relative;
	background: linear-gradient(135deg, #4a4a4a 0%, #333333 100%);
	color: #fff;
	box-shadow: 0 -4px 20px rgba(0,0,0,0.1);
}

.grey-lane .pseudo-bg {
	position: absolute;
	top: 0;
	/*width: 1190px;*/
	height: 100%;
	background: #444;
	margin: 0;
	z-index: -2;
}
.grey-lane .pseudo-bg-white {
	position: absolute;
	bottom: 0;
	/*width: 1190px;*/
	height: 30px;
	background: #fff;
	margin: 0;
	z-index: -1;
}

.footer-nav {
	margin-top: 30px;
	padding: 25px 0;
	border-top: 1px solid rgba(255,255,255,0.2);
}

.white-lane {
	background-color: #f8f9fa;
	position: relative;
	border-top: 1px solid #e9ecef;
}

@media only screen and (max-width: 750px) {
	.white-lane {
		height: 110px;
	}
}

nav.navigation {
	font-size: 13px;
	line-height: 1.4;
	text-align: center;
}

nav.navigation > ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

nav.navigation > ul > li {
	padding: 4px 8px;
	color: #666;
}

nav.navigation > ul > li > a {
	color: var(--brand);
	text-decoration: none;
	transition: color 0.3s ease;
	font-weight: 500;
}

nav.navigation > ul > li > a:hover {
	color: var(--brand-600);
	text-decoration: none;
}

nav.navigation > ul > li:after {
	content: "•";
	color: #ccc;
	margin-left: 8px;
	font-size: 10px;
}

nav.navigation > ul > li:last-child:after {
	content: none;
	margin-left: 0;
}

nav.navigation > ul > li > span {
	color: #666;
	font-weight: 400;
}


/**
 * Modals
**/
/* --- Modernized Desktop Footer (scoped) --- */
footer.site-footer.grey-lane {
    background-color: #1f2937; /* slate-800 */
    color: #e5e7eb; /* gray-200 */
}

footer.site-footer .footer-grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr 1fr;
    gap: 32px;
}

@media (max-width: 1199px) {
    footer.site-footer .footer-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

footer.site-footer .box {
    float: none;
    margin: 0;
    width: auto;
    max-width: none;
}

footer.site-footer .brand {
    margin: 8px 0 16px 0;
}

footer.site-footer .footer-about {
    font-size: 14px;
    line-height: 1.65;
    color: rgba(255,255,255,0.85);
}
footer.site-footer .footer-links-group { margin-top: 18px; }
footer.site-footer .footer-links-title {
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 10px;
}
footer.site-footer .footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
    column-count: 2;
    column-gap: 24px;
}
footer.site-footer .footer-links.cols-3 { column-count: 3; }
@media (max-width: 1199px) {
    footer.site-footer .footer-links { column-count: 1; }
}
footer.site-footer .footer-links li { margin: 6px 0; break-inside: avoid; }
footer.site-footer .footer-links a {
    color: rgba(255,255,255,0.85);
    text-decoration: none;
}
footer.site-footer .footer-links a:hover { color: #fff; text-decoration: underline; }

footer.site-footer .newsletter h4.title {
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 12px;
}

footer.site-footer .newsletter-row { display: block; }

footer.site-footer .newsletter .mail-adress { flex: 1; }
footer.site-footer .newsletter .newsletter-submit { margin-top: 10px; }

footer.site-footer .newsletter .mail-adress input.form-control-input {
    width: 100%;
    height: 52px;
    padding: 12px 14px 12px 38px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,0.18);
    background: #fff;
    color: #111827;
    font-size: 16px;
}

footer.site-footer .newsletter .mail-adress:before {
    top: 14px;
    left: 12px;
    color: var(--ring);
}

footer.site-footer .newsletter .btn,
footer.site-footer .newsletter .btn.btn-red {
    height: 52px;
    line-height: 52px;
    padding: 0 18px;
    border-radius: 10px;
    white-space: nowrap;
    background: var(--brand);
    border: 1px solid var(--brand);
    box-shadow: none;
    text-transform: none;
    letter-spacing: 0;
}

footer.site-footer .newsletter .btn:hover,
footer.site-footer .newsletter .btn.btn-red:hover {
    background: var(--brand-600);
    border-color: var(--brand-600);
}

footer.site-footer .newsletter .btn.full-w { width: auto; }

footer.site-footer .newsletter .help-block,
footer.site-footer .newsletter .help-block.small-note {
    color: rgba(255,255,255,0.75);
    margin-top: 8px;
}

footer.site-footer .newsletter .help-block.thx { color: var(--ring); }

footer.site-footer .contact {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6;
    color: rgba(255,255,255,0.9);
    width: 341px;
}

footer.site-footer .contact .tel {
    color: var(--brand);
    font-size: 26px;
    line-height: 1.3;
    margin: 14px 0;
}

footer.site-footer .contact .social-media-icons a {
    color: #6B7280;
    transition: color 0.2s ease;
    text-decoration: none;
}

footer.site-footer .contact .social-media-icons a:hover {
    color: var(--brand);
}

footer.site-footer .newsletter .mail-adress input.form-control-input::placeholder{
    color:#6b7280;
}

footer.site-footer .footer-nav.white-lane {
    background: transparent;
    border-top: 1px solid rgba(255,255,255,0.12);
    margin-top: 32px;
}

footer.site-footer nav.navigation {
    height: auto;
    line-height: normal;
}

footer.site-footer nav.navigation > ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
}

footer.site-footer nav.navigation > ul > li {
    padding: 0;
}

footer.site-footer nav.navigation > ul > li:after { content: none !important; }

footer.site-footer nav.navigation a.footer-link, 
footer.site-footer nav.navigation span.footer-link-label {
    color: rgba(255,255,255,0.85);
    text-decoration: none;
}

footer.site-footer nav.navigation a.footer-link:hover {
    color: #fff;
    text-decoration: underline;
}

footer.site-footer .pseudo-bg,
footer.site-footer .pseudo-bg-white { display: none; }

/* Footer links row */
footer.site-footer .footer-links-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    margin-top: 12px;
}
footer.site-footer .footer-links-row .links-col { min-width: 0; }
footer.site-footer .footer-links-row .footer-links-group { margin-top: 0; }
@media (max-width: 1199px) {
    footer.site-footer .footer-links-row { grid-template-columns: 1fr; }
}

/* Social Media Icons */
footer.site-footer .social-icons {
    display: flex;
    gap: 16px;
    align-items: center;
}
footer.site-footer .social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    color: rgba(255,255,255,0.7);
    text-decoration: none;
    border-radius: 8px;
    background: rgba(255,255,255,0.1);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    border: 1px solid rgba(255,255,255,0.2);
}
footer.site-footer .social-icon:hover {
    color: rgba(255,255,255,1);
    background: rgba(255,255,255,0.2);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    text-decoration: none;
}
footer.site-footer .social-icon svg {
    transition: opacity 0.3s ease;
}
footer.site-footer .social-icon:hover svg {
    opacity: 1 !important;
}

/* Scroll to Top Button */
.scroll-to-top {
    position: fixed;
    bottom: 24px;
    right: 24px;
    width: 56px;
    height: 56px;
    background: var(--brand);
    color: white;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(45, 95, 65, 0.3);
    z-index: 1000;
}
.scroll-to-top.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.scroll-to-top:hover {
    background: var(--brand-600);
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(45, 95, 65, 0.4);
}
.scroll-to-top:active {
    transform: translateY(0);
}
@media (max-width: 768px) {
    .scroll-to-top {
        bottom: 16px;
        right: 16px;
        width: 48px;
        height: 48px;
    }
}

button.close {
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 18px;
	line-height: 20px;
	z-index: 1;
}

.close {
	color: #ba0000;
	opacity: 1;
}

.close:focus,
.close:hover {
	color: #d9534f;
	opacity: 1;
}

.modal-dialog {
	max-width: 770px;
}

.modal .modal-body {
	position: relative;
	padding: 25px 35px;
}

.modal .modal-body .title {
	font-size: 26px;
	line-height: 32px;
	padding-bottom: 5px;
}

.modal .modal-body .subline-32 {
	font-size: 14px;
	line-height: 32px;
}

.modal .modal-body .tarif-highlight {
	color: #ba0000;
	font-size: 32px;
	font-weight: 700;
	line-height: 48px;
	margin-top: 5px;
}

.modal .modal-body .subline-20 {
	font-size: 14px;
	line-height: 20px;
	margin-top: -5px;
}

.modal .modal-footer {
	padding: 0 35px 30px;
	text-align: center;
	border-top: none;
}

.modal .modal-footer .btn {
	width: 325px;
	font-size: 14px;
	padding: 3px 0 4px;
}

.modal .form-control {
	background-color: #fff;
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	padding: 0 10px;
	height: 30px;
	font-size: 12px;
}
#search-fail2 .modal-body .title,
#search-fail .modal-body .title {
	font-size: 26px;
	line-height: 32px;
	padding-bottom: 25px;
}
#search-fail2 .modal-body,
#search-fail .modal-body {
	padding: 25px 35px 20px;
}
#search-fail2 .modal-body .subline,
#search-fail .modal-body .subline {
	font-size: 14px;
	line-height: 20px;
	margin-top: 35px;
	margin-bottom: 20px;
}

/* Next available day modal */
#search-fail-nextday .modal-body .title {
	font-size: 26px;
	line-height: 32px;
	padding-bottom: 25px;
}
#search-fail-nextday .modal-body {
	padding: 25px 35px 20px;
}
#search-fail-nextday .modal-body .subline-20 {
	font-size: 16px;
	line-height: 24px;
}
#search-fail-nextday .modal-footer .row {
	display: flex;
	align-items: stretch;
}
#search-fail-nextday .modal-footer .btn {
	width: 100%;
	min-height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#register-msg .modal-body .title {
	margin-top: 10px;
	padding-bottom: 25px;
}

#tell .modal-header {
	padding: 20px 20px 15px;
	border-bottom: none;
}

#tell button.close {
	background: transparent;
	font-size: 18px;
	border: 0;
	padding: 0;
	cursor: pointer;
	-webkit-appearance: none;
}

#tell .modal-title {
	font-size: 22px;
	line-height: 28px;
}

#tell .modal-body {
	padding: 0 20px 20px;
}

#tell .form-group {
	border-radius: 0;
	margin-bottom: 10px;
}

#tell input {
	width: 325px;
	height: 40px;
	font-size: 16px;
}

#tell .btn-green {
	width: 325px;
	height: 30px;
	padding: 4px 0;
}

#pickup-retun-diff .modal-content {
	border-radius: 0;
}

#pickup-retun-diff .modal-body {
	padding: 20px 45px 15px 20px;
}

#pickup-retun-diff .modal-body .title {
	font-size: 22px;
	line-height: 28px;
	padding-bottom: 10px;
}

#pickup-retun-diff .modal-body .location {
	font-size: 16px;
	line-height: 22px;
	margin-bottom: 15px;
}

#pickup-retun-diff .modal-body label {
	font-size: 14px;
	font-weight: 400;
}

#pickup-retun-diff .modal-body .form-control {
	height: 40px;
	font-size: 16px;
	border-radius: 0;
}

#pickup-retun-diff .pr-15 {
	padding-right: 15px;
}

#pickup-retun-diff .pr-25 {
	padding-right: 25px;
}

#pickup-retun-diff .pl-30 {
	padding-left: 30px;
}

#pickup-retun-same .modal-content {
	border-radius: 0;
}

#pickup-retun-same .modal-body {
	padding: 20px;
}

#pickup-retun-same .modal-body .title {
	font-size: 22px;
	line-height: 28px;
	padding-bottom: 10px;
}

#pickup-retun-same .modal-body .location {
	font-size: 16px;
	line-height: 22px;
	margin-bottom: 15px;
}

#pickup-retun-same .modal-body label {
	font-size: 14px;
	font-weight: 400;
}

#pickup-retun-same .modal-body .form-control {
	height: 40px;
	font-size: 16px;
	border-radius: 0;
}

#change-data .modal-dialog {
	width: 680px;
}

#change-data .modal-header {
	border-bottom: none;
	padding: 15px 20px 0;
}

#change-data .modal-title {
	font-size: 22px;
}

#change-data .modal-body {
	padding: 20px 20px 25px;
}

#change-data .alert-error {
	margin-bottom: 20px;
}

#change-data .form-group {
	margin-bottom: 10px;
}

#change-data label {
	font-weight: 400;
	margin-bottom: 1px;
}

#change-data .form-control {
	height: 34px;
	font-size: 14px
}

#change-data .anmietort {
	position: relative;
}

#change-data .anmietort:before {
	content: "\f041";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .anmietort input {
	padding-left: 35px;
}

#change-data .anmietdatum {
	position: relative;
}

#change-data .anmietdatum:before {
	content: "\f073";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .anmietdatum input {
	padding-left: 35px;
}

#change-data .anmietzeit {
	position: relative;
}

#change-data .anmietzeit:before {
	content: "\f017";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .anmietzeit select {
	padding-left: 35px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
}

#change-data .rueckgabeort {
	position: relative;
}

#change-data .rueckgabeort:before {
	content: "\f041";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .rueckgabeort input {
	padding-left: 35px;
}

#change-data .rueckgabedatum {
	position: relative;
}

#change-data .rueckgabedatum:before {
	content: "\f073";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .rueckgabedatum input {
	padding-left: 35px;
}

#change-data .rueckgabezeit {
	position: relative;
}

#change-data .rueckgabezeit:before {
	content: "\f017";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .rueckgabezeit select {
	padding-left: 35px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
}

#change-data .geburtsdatum {
	position: relative;
}

#change-data .geburtsdatum:before {
	content: "\f073";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .geburtsdatum input {
	padding-left: 35px;
}

#change-data .plz {
	position: relative;
}

#change-data .plz:before {
	content: "\f003";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .plz input {
	padding-left: 35px;
}

#change-data .umkreis {
	position: relative;
}

#change-data .umkreis:before {
	content: "\f140";
	position: absolute;
	top: 7px;
	left: 10px;
	font-family: FontAwesome;
	font-size: 14px;
	color: var(--brand);
	z-index: 1;
}

#change-data .umkreis select {
	padding-left: 35px;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	position: relative;
}

#change-data .checkbox label::before {
	top: 3px;
}

#change-data .customer .checkbox label::after {
	top: -1px;
}

#change-data .customer > .checkbox.inline.title {
	font-size: 14px;
	line-height: 34px;
	margin-right: 7px;
	padding-left: 0;
	cursor: default;
}

#change-data .customer > .checkbox.inline {
	padding-left: 8px;
}

#change-data .checkbox.inline+.checkbox.inline, #change-data .radio.inline+.radio.inline {
	margin-top: -5px;
}

#change-data .customer input[type=checkbox],
#change-data .customer input[type=radio] {
	margin: 0 0 0 -20px;
	margin-right: 35px;
}

#change-data .birthday {
	margin-bottom: 5px;
}

#change-data .birthday label {
	font-weight: 700;
	line-height: 34px;
	margin-bottom: 0;
}

#change-data .vehicle-class {
	margin-bottom: 10px;
}

#change-data .vehicle-class label.title {
	font-weight: 700;
	margin-bottom: 5px;
	font-size: 14px;
	line-height: 20px;
	padding-bottom: 0;
}

#change-data .vehicle-class .radio.first {
	margin-top: 0;
}

#change-data .vehicle-class .radio.fwd {
	margin-top: 0;
}

#change-data .vehicle-class .radio label {
	margin-bottom: 0;
}

#change-data .location-search label {
	font-weight: 700;
	margin-bottom: 5px;
}

#change-data .btn-red {
	margin-top: 2px;
	padding: 13px 16px;
}

#change-data .radio+.radio {
	margin-top: -10px;
}

select.ui-datepicker-month::selection {
	background-color: var(--brand) !important;
	color: #fff !important;
}
select.ui-datepicker-month option:checked {
	background-color: #ccc !important;
	color: #444 !important;
}
select.ui-datepicker-month:focus {
	outline: none !important;
}
select.ui-datepicker-month option:focus {
	outline: none !important;
}
select.ui-datepicker-year:focus {
	outline: none !important;
}
select.ui-datepicker-year option:focus {
	outline: none !important;
}


/**
 * Loadingscreen
**/
.loadingscreen {
	/* background: url(../img/frontpage-2048x1365.jpg) no-repeat center;
	background-size: cover; */
	color: #fff;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.loadingscreen .logo {
    max-width: 318px;
    max-height: 62px;
    margin-top: 20px;
    margin-left: 39%;
}

.loadingscreen .loading-icon {
	font-size: 200px;
	line-height: 240px;
	margin-top: 55px;
}

.loadingscreen .content-area {
	margin-top: 75px;
}

.loadingscreen .content-area .title {
	font-size: 28px;
	font-weight: 700;
	line-height: 36px;
}

.loadingscreen .content-area .loading-info {
	font-size: 16px;
	font-weight: 700;
	line-height: 28px;
	color: darkgrey;
}

.loadingscreen .content-area .search-nums {
	font-size: 16px;
	font-weight: 700;
	line-height: 22px;
	margin-top: 25px;
}

.loadingscreen .content-area .btn-red {
	height: 50px;
	width: 650px;
	font-size: 22px;
	padding: 9px 0 10px;
	margin-top: 20px;
}


/**
 * Pretty Radio and Checkboxes
**/
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
	margin-left: 0;
}

.checkbox {
	padding-left: 0;
}
.checkbox label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-left: 20px;
}
.checkbox label::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 14px;
	height: 14px;
	left: 0;
	top: 1px;
	margin-left: 0;
	border: 1px solid var(--brand);
	border-radius: 3px;
	background-color: #fff;
	-webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
	-o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
	transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
}
.checkbox label::after {
	display: inline-block;
	position: absolute;
	width: 14px;
	height: 17px;
	left: 0;
	top: -4px;
	margin-left: 0;
	padding-left: 0;
	padding-top: 0;
	font-size: 17px;
	color: var(--brand);
}
/*.checkbox:hover label::after {
	left: 2px;
	color: #ba0000;
}*/
.checkbox input[type="checkbox"],
.checkbox input[type="radio"] {
	opacity: 0;
	z-index: 1;
	cursor: pointer;
}
.checkbox input[type="checkbox"]:focus + label::before,
.checkbox input[type="radio"]:focus + label::before {
	outline: none; /* thin dotted; */
	outline: none; /* 5px auto -webkit-focus-ring-color; */
	outline-offset: 0; /* -2px; */
}

/*.checkbox:hover input[type="checkbox"]:checked + label::before {
	border: 1px solid #ba0000;
}*/

.checkbox input[type="checkbox"]:checked + label::after,
.checkbox input[type="radio"]:checked + label::after {
	font-family: "FontAwesome";
	content: "\f00c";
}
/*.checkbox:hover input[type="checkbox"]:checked + label::after {
	font-family: "FontAwesome";
	content: "\f00d";
}*/
.checkbox input[type="checkbox"]:disabled + label,
.checkbox input[type="radio"]:disabled + label {
	opacity: 0.65;
}
.checkbox input[type="checkbox"]:disabled + label::before,
.checkbox input[type="radio"]:disabled + label::before {
	background-color: #eeeeee;
	cursor: auto; /*not allowed*/
}

.extras .checkbox input[type="checkbox"]:disabled, .extras .checkbox input[type="radio"]:disabled {
	cursor: auto; /*not allowed*/
}

.checkbox.checkbox-circle label::before {
	border-radius: 50%;
}
.checkbox.checkbox-inline {
	margin-top: 0;
}

.checkbox-primary input[type="checkbox"]:checked + label::before,
.checkbox-primary input[type="radio"]:checked + label::before {
	background-color: #337ab7;
	border-color: #337ab7;
}
.checkbox-primary input[type="checkbox"]:checked + label::after,
.checkbox-primary input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-danger input[type="checkbox"]:checked + label::before,
.checkbox-danger input[type="radio"]:checked + label::before {
	background-color: #d9534f;
	border-color: #d9534f;
}
.checkbox-danger input[type="checkbox"]:checked + label::after,
.checkbox-danger input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-info input[type="checkbox"]:checked + label::before,
.checkbox-info input[type="radio"]:checked + label::before {
	background-color: #5bc0de;
	border-color: #5bc0de;
}
.checkbox-info input[type="checkbox"]:checked + label::after,
.checkbox-info input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-warning input[type="checkbox"]:checked + label::before,
.checkbox-warning input[type="radio"]:checked + label::before {
	background-color: #f0ad4e;
	border-color: #f0ad4e;
}
.checkbox-warning input[type="checkbox"]:checked + label::after,
.checkbox-warning input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-success input[type="checkbox"]:checked + label::before,
.checkbox-success input[type="radio"]:checked + label::before {
	background-color: #5cb85c;
	border-color: #5cb85c;
}
.checkbox-success input[type="checkbox"]:checked + label::after,
.checkbox-success input[type="radio"]:checked + label::after {
	color: #fff;
}

.radio {
	padding-left: 0;
}
.radio label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-left: 20px;
}
.radio label::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 14px;
	height: 14px;
	left: 0;
	top: 1px;
	margin-left: 0;
	border: 1px solid var(--brand);
	border-radius: 50%;
	background-color: #fff;
	-webkit-transition: border 0.15s ease-in-out;
	-o-transition: border 0.15s ease-in-out;
	transition: border 0.15s ease-in-out;
}

#searchForm .radio label::before {
	top:2px;
}

.radio label::after {
	display: inline-block;
	position: absolute;
	content: " ";
	width: 11px;
	height: 11px;
	left: 0;
	top: -4px;
	margin-left: 0;
	border-radius: 50%;
	background-color: transparent;
	color: var(--brand);
	-webkit-transform: scale(0, 0);
	-ms-transform: scale(0, 0);
	-o-transform: scale(0, 0);
	transform: scale(0, 0);
	-webkit-transition: -webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	-moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	-o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
}

#searchForm .radio label::after {
	top:-3px;
}

.radio input[type="radio"] {
	opacity: 0;
	z-index: 1;
	cursor: pointer;
}
.radio input[type="radio"]:focus + label::before {
	outline: none;
	outline-offset: 0;
}
.radio input[type="radio"]:checked + label::after {
	-webkit-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
}
.radio input[type="radio"]:disabled + label {
	opacity: 0.65;
}
.radio input[type="radio"]:disabled {
	cursor: auto; /*not allowed*/
}
.radio.radio-inline {
	margin-top: 0;
	padding-left: 0;
	margin-left: 0;
}

.radio-primary input[type="radio"] + label::after {
	background-color: #337ab7;
}
.radio-primary input[type="radio"]:checked + label::before {
	border-color: #337ab7;
}
.radio-primary input[type="radio"]:checked + label::after {
	background-color: #337ab7;
}

.radio-danger input[type="radio"] + label::after {
	background-color: #d9534f;
}
.radio-danger input[type="radio"]:checked + label::before {
	border-color: #d9534f;
}
.radio-danger input[type="radio"]:checked + label::after {
	background-color: #d9534f;
}

.radio-info input[type="radio"] + label::after {
	background-color: #5bc0de;
}
.radio-info input[type="radio"]:checked + label::before {
	border-color: #5bc0de;
}
.radio-info input[type="radio"]:checked + label::after {
	background-color: #5bc0de;
}

.radio-warning input[type="radio"] + label::after {
	background-color: #f0ad4e;
}
.radio-warning input[type="radio"]:checked + label::before {
	border-color: #f0ad4e;
}
.radio-warning input[type="radio"]:checked + label::after {
	background-color: #f0ad4e;
}

.radio-success input[type="radio"] + label::after {
	background-color: #5cb85c;
}
.radio-success input[type="radio"]:checked + label::before {
	border-color: #5cb85c;
}
.radio-success input[type="radio"]:checked + label::after {
	background-color: #5cb85c;
}

input[type="checkbox"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f14a"; /* content: "\f00c"; */
	font-size: 16px;
	cursor: pointer;
}
input[type="radio"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f192";
	font-size: 19px;
}
input[type="checkbox"] .styled:checked + label::before,
input[type="radio"] .styled:checked + label::before {
	color: #fff;
}
input[type="checkbox"] .styled:checked + label::after,
input[type="radio"] .styled:checked + label::after {
	color: #fff;
}


.search-data div.container{
	padding-right: 16px;
}

.checkbox.inline,
.radio.inline {
	position: relative;
	display: inline-block;
	padding-left: 0;
	margin-top: 0;
	margin-bottom: 0;
	font-weight: 400;
	vertical-align: middle;
	cursor: pointer;
}

.checkbox.inline+.checkbox.inline, .radio.inline+.radio.inline {
	margin-top: 0;
}

#filtering .checkbox {
	margin-top: -5px;
}

#filtering .sub-group {
	display: none;
	padding-top: 8px;
	padding-left: 21px;
}

#filtering .sub-group .subtitle {
	color: var(--brand);
	font-weight: 700;
	margin-left: 14px;
}
#filtering label > span,
#filtering .sub-group label > span {
	float: right;
	margin-right: 14px;
}
#filtering label > span.notvis,
#filtering .sub-group label > span.notvis{
	color:#a1a1a1
}

#filtering .checkbox {
	background-color: transparent;
	color: #333;
	padding-left: 20px;
}

/*
#filtering .checkbox.checked {
	background-color: var(--brand);
	color: #fff;
}
*/

#filtering .checkbox.checked:hover {
	background-color: #ebcccc;
	color: #000;
}

/* Modern Checkbox Styling for Filter Sections */
#filtering .checkbox {
	margin-bottom: 8px;
	display: flex;
	align-items: center;
}

#filtering .checkbox label {
	display: flex;
	align-items: center;
	cursor: pointer;
	font-size: 14px;
	color: #333;
	line-height: 1.4;
	transition: color 0.2s ease;
	position: relative;
	padding-left: 0;
}

#filtering .checkbox label:hover {
	color: var(--brand);
}

/* Hide default checkbox */
#filtering .checkbox input[type="checkbox"] {
	opacity: 0;
	position: absolute;
	width: 0;
	height: 0;
}

/* Custom checkbox */
#filtering .checkbox label::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-right: 10px;
	border: 2px solid #ddd;
	border-radius: 4px;
	background-color: #fff;
	transition: all 0.2s ease;
	flex-shrink: 0;
}

/* Checkbox hover state */
#filtering .checkbox label:hover::before {
	border-color: var(--brand);
	box-shadow: 0 0 0 2px rgba(76, 156, 89, 0.1);
}

/* Checkbox checked state */
#filtering .checkbox input[type="checkbox"]:checked + label::before {
	background-color: var(--brand);
	border-color: var(--brand);
}

/* Checkmark */
#filtering .checkbox input[type="checkbox"]:checked + label::after {
    content: "✓";
    position: absolute;
    left: 4px;
    top: 6px !important;
    transform: translateY(-50%);
    color: white;
    font-size: 12px;
    font-weight: bold;
}

.page-search .checkbox input[type="checkbox"]:checked + label:after {
    width: 5px;
    height: 9px;
    /* border: solid white; */
    border-width: 0 2px 2px 0;
    /* transform: rotate(1deg); */
    background: transparent;
    left: 0px;
    top: -2px !important;
}

#filtering .checkbox label {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 14px;
    color: #333;
    line-height: 1.4;
    transition: color 0.2s ease;
    position: relative;
    padding-left: 23px;
}

.page-search .checkbox.checked label, .page-search .radio.checked label {
    color: var(--brand);
    font-weight: 600;
}

.page-search .form-group label {
    color: var(--text);
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 6px;
}

.page-search .steps nav ul li.active {
    color: #ffffff;
    font-weight: 600;
}

/* Focus state for accessibility */
#filtering .checkbox input[type="checkbox"]:focus + label::before {
	outline: 2px solid var(--brand);
	outline-offset: 2px;
}

/* Disabled state */
#filtering .checkbox input[type="checkbox"]:disabled + label {
	opacity: 0.6;
	cursor: not-allowed;
}

#filtering .checkbox input[type="checkbox"]:disabled + label::before {
	background-color: #f5f5f5;
	border-color: #ddd;
}


#filtering .radio {
	padding-left: 20px;
}

#filtering .radio.checked {
	/*background-color: var(--brand);*/
	color: #000;
}

#filtering .radio:hover {
	background-color: #dbe3cc;
	color: #000;
}

#filtering .radio label {
	display: block;
	vertical-align: middle;
	position: relative;
	padding-left: 35px;
	cursor: pointer;
}

#filtering .radio label:before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 14px;
	height: 14px;
	left: 35px;
	top: 2px;
	margin-left: -20px;
	border: 1px solid var(--brand);
	border-radius: 50%;
	background-color: #fff;
	-webkit-transition: border 0.15s ease-in-out;
	-o-transition: border 0.15s ease-in-out;
	transition: border 0.15s ease-in-out;
}

#filtering .radio label:after {
	display: inline-block;
	position: absolute;
	content: " ";
	width: 11px;
	height: 11px;
	left: 35px;
	top: -3px;
	margin-left: -20px;
	border-radius: 50%;
	background-color: transparent;
	color: var(--brand);
	-webkit-transform: scale(0, 0);
	-ms-transform: scale(0, 0);
	-o-transform: scale(0, 0);
	transform: scale(0, 0);
	-webkit-transition: -webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	-moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	-o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
}

#filtering .radio input[type="radio"] {
	opacity: 0;
	z-index: 1;
	cursor: pointer;
	margin-left: 0;
}

#filtering input[type="radio"].styled:checked + label {
	cursor: default;
}

#filtering .radio input[type="radio"]:focus + label::before {
	outline: none;
	outline-offset: 0;
}

#filtering .radio input[type="radio"]:checked + label::after {
	-webkit-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
}

#filtering .radio input[type="radio"]:disabled + label {
	opacity: 0.65;
}

#filtering .radio input[type="radio"]:disabled + label::before {
	cursor: auto; /*not allowed*/
}

#filtering .radio.radio-inline {
	margin-top: 0;
}

#filtering .radio-primary input[type="radio"] + label::after {
	background-color: #337ab7;
}

#filtering .radio-primary input[type="radio"]:checked + label::before {
	border-color: #337ab7;
}

#filtering .radio-primary input[type="radio"]:checked + label::after {
	background-color: #337ab7;
}

#filtering .radio-danger input[type="radio"] + label::after {
	background-color: #d9534f;
}

#filtering .radio-danger input[type="radio"]:checked + label::before {
	border-color: #d9534f;
}

#filtering .radio-danger input[type="radio"]:checked + label::after {
	background-color: #d9534f;
}

#filtering .radio-info input[type="radio"] + label::after {
	background-color: #5bc0de;
}

#filtering .radio-info input[type="radio"]:checked + label::before {
	border-color: #5bc0de;
}

#filtering .radio-info input[type="radio"]:checked + label::after {
	background-color: #5bc0de;
}

#filtering .radio-warning input[type="radio"] + label::after {
	background-color: #f0ad4e;
}

#filtering .radio-warning input[type="radio"]:checked + label::before {
	border-color: #f0ad4e;
}

#filtering .radio-warning input[type="radio"]:checked + label::after {
	background-color: #f0ad4e;
}

#filtering .radio-success input[type="radio"] + label::after {
	background-color: #5cb85c;
}

#filtering .radio-success input[type="radio"]:checked + label::before {
	border-color: #5cb85c;
}

#filtering .radio-success input[type="radio"]:checked + label::after {
	background-color: #5cb85c;
}

#filtering input[type="checkbox"].styled:checked + label:after {
    font-family: 'FontAwesome';
    content: "\f00c";
    font-size: 13px;
    cursor: default;
}

#filtering .checkbox:hover input[type="checkbox"].styled:checked + label:after {
    font-family: 'FontAwesome';
    content: "\f00d";
    font-size: 13px;
    cursor: pointer;
}

#filtering input[type="radio"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f192";
	font-size: 17px;
	cursor: default;
}

#filtering input[type="checkbox"] .styled:checked + label::before,
#filtering input[type="radio"] .styled:checked + label::before {
	color: #fff;
}


#filtering .checkbox.inline,
#filtering .radio.inline {
	position: relative;
	display: block;
	padding-left: 20px;
	margin-top: 0;
	margin-bottom: 0;
	font-weight: 400;
	vertical-align: middle;
	cursor: pointer;
}

#filtering .checkbox.inline+.checkbox.inline, .radio.inline+.radio.inline {
	margin-top: 0;
}

.frontpage-header .checkbox.inline+.checkbox.inline, .frontpage-header .radio.inline+.radio.inline {
	margin-top: 3px;
}

.checkbox.inline.title,
.radio.inline.title {
	font-weight: 700;
	padding-left: 0;
}

#filtering .has-sub-groups .radio {
	margin-top: 0;
	margin-bottom: 2px !important;
}

/**
 * Checkout: Extras
**/
.ur-choice {
	color: var(--brand);
	font-size: 22px;
	padding-top: 10px;
	margin-left:15px;
}

.vehicle-img {
	position: relative;
	width: 300px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	margin-left:15px;
	margin-bottom:15px;
	/*overflow: hidden;*/
}

.vehicle-img .company-logo {
	position: absolute;
	top: 14px;
	left: 0;
	z-index: 1;
}

.details {
	line-height: 20px;
	margin-bottom: 15px;
	margin-left:15px;
}

.details .title {
	font-size: 20px;
	line-height: 24px;
}

.details .vehicle {
	margin-top: 5px;
}

.grey-box {
	background-color: #f5f5f5;
	padding: 13px 15px;
	margin-bottom: 15px;
}

.grey-box .title {
	color: var(--brand);
	font-weight: 700;
	font-size: 18px;
	margin-bottom: 4px;
}

.grey-box .subtitle {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 0px;
}

.grey-box .place-data {
	margin-bottom: 10px;
}

.grey-box .btn-green {
	width: 100%;
	padding: 10px 40px;
	margin-top: 2px;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
}

.white-box {
	position: relative;
}

/*
.basket {
	position: absolute;
	top: 50%;
	width: 100%;
	margin-top: -57px;
}*/

.basket .endprice {
	font-size: 22px;
	font-weight: bold;
}

.basket .taxes {
	font-size: 16px;

}

.extras .well a {
	line-height: 42px;
	color: var(--brand);
}

.extras .well .btn-red {
	width: 100%;
	padding: 10px 0;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	font-weight: bold;
}

.extras .panel-result > .panel-heading {
	padding: 23px 20px;
}

.extras .panel-result > .panel-heading.no-radius {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.extras .panel-result > .panel-heading .panel-title {
	font-size: 22px;
}

.extras .panel-result > .panel-heading .baseprice {
	color: #333;
	font-weight: 700;
	text-align: right;
	margin-top: 2px;
	font-size: 16px;
}

.extras .panel-result > .panel-body {
	padding: 10px 0;
}

.extras .panel-result > .panel-body.no-radius {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.extras .panel-result > .panel-body label {
	font-size: 16px;
}

.extras .extra-price {
	float: right;
	font-size: 16px;
	font-weight: 700;
}

.extras .help-block {
	padding-left: 20px;
	margin-top: 0;
	margin-bottom: 0px;
	color: #aaa;
	cursor: pointer;
}

.extras .features .help-block {
	cursor: pointer;
}

.extras .checked .help-block {
	color: #444;
}

.extras .sub-group {
	display: none;
	padding-top: 0;
	padding-left: 18px;
}

.extras .sub-group .small-dist {
	margin-top: 0;
}

.extras .checkbox {
	background-color: transparent;
	color: #aaa;
	padding-left: 20px;
	padding-right: 20px;
}

.extras .checkbox:focus,
.extras .checkbox:hover {
	background-color: #dbe3cc;
	color: #444;
}

.extras .checkbox.checked {
	color: #444;
}

.extras .checkbox.checked.disabled .extra-price,
.extras .radio.checked.disabled .extra-price{
	color: #444;
}

.extras .checkbox.checked:hover {
	background-color: none;
	color: #000;
}

.extras .checkbox.checked.disabled:hover,
.extras .radio.checked.disabled:hover{
	background-color: transparent;
	color: #777;
}

.extras .checkbox label {
	display: block;
	vertical-align: middle;
	position: relative;
	padding-left: 20px;
	cursor: pointer;
}

.extras .features .checkbox label {
	display: inline-block;
	width: 135px;
}

.extras .checkbox label:before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 14px;
	height: 14px;
	left: 20px;
	top: 4px;
	margin-left: -20px;
	border: 1px solid var(--brand);
	border-radius: 3px;
	background-color: #fff;
	-webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
	-o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
	transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
	cursor: pointer;
}

.extras .features .checkbox.checked label:before {
	display: none;
}

.extras .checkbox label:after {
	display: inline-block;
	position: absolute;
	content: "";
	width: 17px;
	height: 17px;
	left: 21px;
	top: 0;
	margin-left: -20px;
	padding-left: 0;
	padding-top: 0;
	font-size: 13px;
	color: var(--brand);
	cursor: pointer;
}

.extras .checkbox:hover input[type="checkbox"]:checked + label::before {
	border: 1px solid var(--brand);
	background-color: #fff;
	cursor: pointer;
}

/*.extras .checkbox.checked:hover label:after {
	display: inline-block;
	position: absolute;
	width: 17px;
	height: 17px;
	left: 22px;
	top: 2px;
	margin-left: -20px;
	padding-left: 0;
	padding-top: 0;
	font-size: 13px;
	color: #ba0000;
	cursor: pointer;
}*/

.extras .checkbox input[type="checkbox"],
.extras .checkbox input[type="radio"] {
	opacity: 0;
	z-index: 1;
	cursor: pointer;
	margin-left: 0;
}

.extras .checkbox input[type="checkbox"]:focus + label::before,
.extras .checkbox input[type="radio"]:focus + label::before {
	outline: none;
	outline-offset: 0;
}

.extras .checkbox input[type="checkbox"]:checked + label::after,
.extras .checkbox input[type="radio"]:checked + label::after {
	font-family: "FontAwesome";
	content: "\f00c";
}

.extras .checkbox input[type="checkbox"]:disabled + label,
.extras .checkbox input[type="radio"]:disabled + label,
.extras .radio input[type="radio"]:disabled + label{
	opacity: 1;
	color: #777;
	cursor: auto; /*not allowed*/
}

.extras .checkbox input[type="checkbox"]:disabled + label::before,
.extras .checkbox input[type="radio"]:disabled + label::before,
.extras .radio input[type="radio"]:disabled + label::before{
	cursor: auto; /*not allowed*/
	border: 1px solid #777;
	background-color: transparent;
}

.extras .checkbox input[type="checkbox"]:disabled + label::after,
.extras .checkbox input[type="radio"]:disabled + label::after,
.extras .radio input[type="radio"]:disabled + label::after{
	cursor: auto !important; /*not allowed*/
	color: #777;
}

.extras .checkbox.checkbox-circle label::before {
	border-radius: 50%;
}

.extras .checkbox.checkbox-inline {
	margin-top: 0;
}

.extras .checkbox-primary input[type="checkbox"]:checked + label::before,
.extras .checkbox-primary input[type="radio"]:checked + label::before {
	background-color: #337ab7;
	border-color: #337ab7;
}

.extras .checkbox-primary input[type="checkbox"]:checked + label::after,
.extras .checkbox-primary input[type="radio"]:checked + label::after {
	color: #fff;
}

.extras .checkbox-danger input[type="checkbox"]:checked + label::before,
.extras .checkbox-danger input[type="radio"]:checked + label::before {
	background-color: #d9534f;
	border-color: #d9534f;
}

.extras .checkbox-danger input[type="checkbox"]:checked + label::after,
.extras .checkbox-danger input[type="radio"]:checked + label::after {
	color: #fff;
}

.extras .checkbox-info input[type="checkbox"]:checked + label::before,
.extras .checkbox-info input[type="radio"]:checked + label::before {
	background-color: #5bc0de;
	border-color: #5bc0de;
}

.extras .checkbox-info input[type="checkbox"]:checked + label::after,
.extras .checkbox-info input[type="radio"]:checked + label::after {
	color: #fff;
}

.extras .checkbox-warning input[type="checkbox"]:checked + label::before,
.extras .checkbox-warning input[type="radio"]:checked + label::before {
	background-color: #f0ad4e;
	border-color: #f0ad4e;
}

.extras .checkbox-warning input[type="checkbox"]:checked + label::after,
.extras .checkbox-warning input[type="radio"]:checked + label::after {
	color: #fff;
}

.extras .checkbox-success input[type="checkbox"]:checked + label::before,
.extras .checkbox-success input[type="radio"]:checked + label::before {
	background-color: #5cb85c;
	border-color: #5cb85c;
}

.extras .checkbox-success input[type="checkbox"]:checked + label::after,
.extras .checkbox-success input[type="radio"]:checked + label::after {
	color: #fff;
}

.extras .radio {
	padding-left: 20px;
	padding-right: 20px;
	color: #aaa;
}

.extras .radio.checked {
	/*background-color: var(--brand);*/
	color: #444;
}

.extras .radio:hover {
	background-color: #dbe3cc;
	color: #444;
}

.extras .radio label {
	display: block;
	vertical-align: middle;
	position: relative;
	padding-left: 20px;
	cursor: pointer;
}

.extras .radio label:before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 14px;
	height: 14px;
	left: 20px;
	top: 4px;
	margin-left: -20px;
	border: 1px solid var(--brand);
	border-radius: 50%;
	background-color: #fff;
	-webkit-transition: border 0.15s ease-in-out;
	-o-transition: border 0.15s ease-in-out;
	transition: border 0.15s ease-in-out;
}

.extras .radio label:after {
	display: inline-block;
	position: absolute;
	content: "";
	width: 11px;
	height: 11px;
	left: 20px;
	top: -1px;
	margin-left: -20px;
	border-radius: 50%;
	background-color: transparent;
	color: var(--brand);
	-webkit-transform: scale(0, 0);
	-ms-transform: scale(0, 0);
	-o-transform: scale(0, 0);
	transform: scale(0, 0);
	-webkit-transition: -webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	-moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	-o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
	transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
}

.extras .radio input[type="radio"] {
	opacity: 0;
	z-index: 1;
	cursor: pointer;
	margin-left: 0;
}

.extras .radio input[type="radio"]:focus + label::before {
	outline: none;
	outline-offset: 0;
}

.extras .radio input[type="radio"]:checked + label::after {
	-webkit-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	-o-transform: scale(1, 1);
	transform: scale(1, 1);
}

.extras .radio input[type="radio"]:disabled + label {
	opacity: 0.65;
}

.extras .radio input[type="radio"]:disabled + label::before {
	cursor: auto; /*not allowed*/
}

.extras .radio.radio-inline {
	margin-top: 0;
}

.extras .radio-primary input[type="radio"] + label::after {
	background-color: #337ab7;
}

.extras .radio-primary input[type="radio"]:checked + label::before {
	border-color: #337ab7;
}

.extras .radio-primary input[type="radio"]:checked + label::after {
	background-color: #337ab7;
}

.extras .radio-danger input[type="radio"] + label::after {
	background-color: #d9534f;
}

.extras .radio-danger input[type="radio"]:checked + label::before {
	border-color: #d9534f;
}

.extras .radio-danger input[type="radio"]:checked + label::after {
	background-color: #d9534f;
}

.extras .radio-info input[type="radio"] + label::after {
	background-color: #5bc0de;
}

.extras .radio-info input[type="radio"]:checked + label::before {
	border-color: #5bc0de;
}

.extras .radio-info input[type="radio"]:checked + label::after {
	background-color: #5bc0de;
}

.extras .radio-warning input[type="radio"] + label::after {
	background-color: #f0ad4e;
}

.extras .radio-warning input[type="radio"]:checked + label::before {
	border-color: #f0ad4e;
}

.extras .radio-warning input[type="radio"]:checked + label::after {
	background-color: #f0ad4e;
}

.extras .radio-success input[type="radio"] + label::after {
	background-color: #5cb85c;
}

.extras .radio-success input[type="radio"]:checked + label::before {
	border-color: #5cb85c;
}

.extras .radio-success input[type="radio"]:checked + label::after {
	background-color: #5cb85c;
}

.extras input[type="checkbox"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f14a"; /* "\f00c"; */
	font-weight: 400;
	cursor: pointer;
}

/*.extras .checkbox:hover input[type="checkbox"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f00d";
	font-size: 13px;
	font-weight: 400;
	cursor: pointer;
}*/

.extras .checkbox.disabled:hover input[type="checkbox"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f14a"; /* "\f00c"; */
	/*font-size: 14px;
	font-weight: 400;*/
	cursor: auto; /*not allowed*/
	left: 21px;
}

.extras .radio.disabled:hover input[type="radio"].styled:checked + label:after{
	cursor: auto; /*not allowed*/
}

.extras input[type="radio"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f192";
	font-size: 17px;
	font-weight: 400;
	cursor: default;
}

.extras input[type="checkbox"] .styled:checked + label::before,
.extras input[type="radio"] .styled:checked + label::before {
	color: #fff;
	font-weight: 400;
}


.extras .checkbox.inline,
.extras .radio.inline {
	position: relative;
	display: block;
	padding-left: 20px;
	margin-top: 0;
	margin-bottom: 0;
	font-weight: 400;
	vertical-align: middle;
	cursor: pointer;
}

.extras .checkbox.inline+.checkbox.inline, .extras .radio.inline+.radio.inline {
	margin-top: 0;
}

.extras .checkbox.inline+.checkbox.inline, .extras .radio.inline+.radio.inline {
	margin-top: 3px;
}

.extras .has-sub-groups .radio {
	margin-top: 0;
	margin-bottom: 2px !important;
}

.extras .small-dist {
	margin-top: -10px;
}

.extras .small-dist .radio+.radio {
	margin-top: -10px;
}

.extras label > span {
	float: right;
	margin-top: -3px;
}

.extras label > span .form-control {
	padding: 0 14px !important;
	height: 26px !important;
	line-height: 12px !important;
}

.extras .features .checkbox:hover {
	background-color: transparent !important;
}

.extras .features .checkbox {
	padding-right: 0;
	margin-top: 4px;
	margin-bottom: 0;
}

.extras .features .select-box {
	position: relative;
	top: 4px;
	float: right;
	z-index: 5;
}

.extras .features .second-line .checkbox {
	margin-top: -2px;
	margin-bottom: 33px;
}

.extras .features .second-line .select-box {
	top: -2px;
}

.extras .features .select2-container .select2-selection--single {
	height: 25px;
}

.extras .features .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 25px;
}

.extras .features .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 25px;
}

.small .select2-results__option {
	font-size: 14px;
	padding: 2px 9px !important;
}

/**
 * Checkout: Kundendaten
**/
.kundendaten .panel-result > .panel-heading {
	padding: 23px 20px;
}

.kundendaten .panel-result > .panel-heading.no-radius {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.kundendaten .panel-result > .panel-heading .panel-title {
	font-size: 22px;
}

.kundendaten .panel-result > .panel-heading .baseprice {
	color: #333;
	font-weight: 700;
	text-align: right;
	margin-top: 2px;
	font-size: 16px;
}

.kundendaten .panel-result > .panel-body {
	padding: 17px 20px 3px;
}

.kundendaten .panel-result > .panel-body.no-radius {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

/* Tooltip overflow fix - allow tooltips to extend beyond panel boundaries */
.kundendaten,
.kundendaten .panel-result,
.kundendaten .panel-group .panel,
.kundendaten .well,
.kundendaten .login-methodes,
.kundendaten .radio,
.kundendaten .radio-inline,
.extras,
.extras .panel-result,
.extras .panel-group .panel,
.extras .well {
	overflow: visible !important;
}

.kundendaten .panel-result > .panel-body,
.kundendaten .panel-result > .panel-heading,
.extras .panel-result > .panel-body,
.extras .panel-result > .panel-heading {
	overflow: visible !important;
}

/* Ensure .tt tooltip containers allow overflow */
.tt,
.tt.big,
.tt.misc {
	overflow: visible !important;
	position: relative;
}

/* Aggressive overflow fix - ensure ALL parent containers allow tooltip overflow */
body.checkout .content,
body.checkout .content > .container,
body.checkout .content > .container > .row,
body.checkout .content > .container > .row > [class*="col-"],
.kundendaten *,
.extras * {
	overflow: visible !important;
}

/* Force overflow visible on panel-result - highest specificity */
.panel.panel-result,
.panel.panel-result.mb-10,
div.panel.panel-result,
div.panel.panel-result.mb-10,
.kundendaten .panel.panel-result,
.extras .panel.panel-result,
.kundendaten div.panel.panel-result,
.extras div.panel.panel-result {
	overflow: visible !important;
	clip: auto !important;
	clip-path: none !important;
}

.panel.panel-result > .panel-heading,
.panel.panel-result > .panel-body,
.panel.panel-result > .panel-footer {
	overflow: visible !important;
}

/* Exceptions - elements that need overflow hidden for proper styling */
.kundendaten .form-control,
.kundendaten .btn,
.kundendaten select,
.kundendaten input,
.extras .form-control,
.extras .btn,
.extras select,
.extras input {
	overflow: hidden;
}

.kundendaten .panel-result > .panel-body label {
	font-size: 16px;
}

.kundendaten .panel-body .subtitle {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 5px;
}

.kundendaten .login-methodes {
	background: var(--card);
	border: 1px solid var(--card-border);
	border-radius: 12px;
	padding: 20px 25px;
	margin-bottom: 15px;
	font-size: 16px;
	box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}

.kundendaten .login-methodes .title {
	color: var(--brand);
	font-weight: 700;
	margin-right: 10px;
}

.kundendaten .panel-body ul.checked {
	padding-left: 17px;
}

.kundendaten .panel-body ul.checked > li  {
	list-style: none;
	position: relative;
}

.kundendaten .panel-body ul.checked > li:before  {
	position: absolute;
	top: 7px;
	left: -17px;
	content: "\f00c";
	font-family: FontAwesome;
	color: var(--brand);
}

.kundendaten .panel-body #exkl-elements {
	list-style: none;
	padding-left: 5px;
}

.kundendaten .panel-body #exkl-elements > li .fa-minus-circle {
	color: #ef4444;
}

.kundendaten .panel-body ul.pointed {
	padding-left: 20px;
}

.kundendaten .panel-body ul.pointed > li  {
	list-style: none;
	position: relative;
}

.kundendaten .panel-body ul.pointed > li:before  {
	position: absolute;
	top: 9px;
	left: -19px;
	content: "\f111";
	font-family: FontAwesome;
	color: #333;
	font-size: 4px;
}

.kundendaten .panel-body .used-login {
	margin-top: 8px;
	margin-bottom: 24px;
}

.kundendaten .panel-body .alert-error {
	font-size: 13px;
	padding: 15px 20px;
	margin-bottom: 20px;
	border-radius: 8px;
	border: none;
	background-color: #fff5f5;
	color: #c53030;
	box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.kundendaten .panel-body .alert-success {
	font-size: 13px;
	padding: 15px 20px;
	margin-bottom: 20px;
	border-radius: 8px;
	border: none;
	background-color: #f0fff4;
	color: var(--brand);
	box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.kundendaten .panel-body .alert-warning {
	font-size: 13px;
	padding: 15px 20px;
	margin-bottom: 20px;
	border-radius: 8px;
	border: none;
	background-color: #fffaf0;
	color: #c05621;
	box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.kundendaten .panel-result > .panel-body .form-control {
	height: 44px;
	font-size: 15px;
	border: 1px solid var(--card-border);
	border-radius: 8px;
	padding: 10px 15px;
	transition: all 0.2s ease;
	background-color: #fff;
}

.kundendaten .panel-result > .panel-body .form-control:focus {
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(110, 201, 133, 0.25);
	outline: none;
}

.kundendaten .form-control-input {
	width: 100% !important;
	padding: 12px 30px !important;
	border: 1px solid var(--card-border) !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	color: var(--text-dark) !important;
	background: #fff !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.kundendaten .form-control-input:focus {
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(110, 201, 133, 0.25);
	outline: none;
}

.kundendaten .form-control-input::placeholder {
	color: #999;
}

.kundendaten .radio-label {
	display: inline-block;
	font-size: 16px;
	font-weight: 700;
}

.kundendaten .checkout-price {
	color: var(--brand);
	font-size: 27px;
	font-weight: bold;
	margin-top: 9px;
	margin-bottom: 8px;
	white-space: nowrap;
}

.kundendaten .safe-pay,
.kundendaten .tax-txt {
	font-size: 16px;
}

.kundendaten .panel-result > .panel-body .btn-red {
	position: relative;
	right: auto;
	top: auto;
	width: auto;
	padding: 12px 30px;
	font-size: 15px;
	font-weight: 600;
	border-radius: 8px;
	transition: all 0.2s ease;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.kundendaten .panel-result > .panel-body .btn-red:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.kundendaten .btn-green {
	border-radius: 8px;
	transition: all 0.2s ease;
	font-weight: 600;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.kundendaten .btn-green:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.kundendaten .btn-red .ssl {
	display: inline-block;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding-right: 10px;
}

.kundendaten .check,
.kundendaten .plus {
	position: relative;
}

.kundendaten .check:after {
	content: "\f00c";
	position: absolute;
	top: 5px;
	right: -34px;
	font-family: FontAwesome;
	color: var(--brand);
	font-size: 23px;
}

.kundendaten .plus:before {
	content: "+";
	position: absolute;
	top: 9px;
	left: -18px;
	color: #444;
	font-size: 17px;
}

.kundendaten .checkbox {
	background-color: transparent;
	color: #666;
	padding: 8px 15px;
	margin-bottom: 5px;
	border-radius: 6px;
	transition: all 0.2s ease;
}

.kundendaten .checkbox:hover {
	background-color: #dbe3cc;
	color: #444;
}

.kundendaten .checkbox.checked {
	color: #333;
}

.kundendaten .checkbox label {
	display: block;
	vertical-align: middle;
	position: relative;
	padding-left: 25px;
	cursor: pointer;
}

.kundendaten .checkbox label::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 16px;
	height: 16px;
	left: 0;
	top: 3px;
	border: 1px solid var(--brand);
	border-radius: 4px;
	background-color: #fff;
	transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
}

.kundendaten .checkbox label::after {
	content: "";
	font-family: FontAwesome;
	display: inline-block;
	position: absolute;
	width: 16px;
	height: 16px;
	left: 1px;
	top: 1px;
	font-size: 12px;
	color: var(--brand);
}

.kundendaten .checkbox input[type="checkbox"]:checked + label::after {
	content: "\f00c";
}

.kundendaten .checkbox:hover label::after {
	top: 1px;
	left: 1px;
}

.kundendaten .radio {
	padding: 8px 15px;
	margin-bottom: 5px;
	border-radius: 6px;
	transition: all 0.2s ease;
}

.kundendaten .radio:hover {
	background-color: #dbe3cc;
}

.kundendaten .radio:hover label {
	color: #444;
}

.kundendaten .radio label {
	position: relative;
	padding-left: 25px;
	cursor: pointer;
}

.kundendaten .radio label::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 16px;
	height: 16px;
	left: 0;
	top: 3px;
	border: 1px solid var(--brand);
	border-radius: 50%;
	background-color: #fff;
	transition: border 0.15s ease-in-out;
}

.kundendaten .radio label::after {
	content: "";
	font-family: FontAwesome;
	display: inline-block;
	position: absolute;
	left: 0;
	top: 3px;
	font-size: 16px;
	color: var(--brand);
}

.kundendaten .radio input[type="radio"]:checked + label::after {
	content: "\f192";
	font-family: 'FontAwesome';
	font-size: 16px;
	top: 0px !important;
}

.kundendaten .help {
	position: relative;
}

.kundendaten .help i {
	position: absolute;
	top: 13px;
	right: 12px;
	font-size: 16px;
	color: var(--brand);
	z-index: 1;
}

.kundendaten .payments {
	font-size: 16px;
	margin-top: 11px;
}

.kundendaten .payments .pay-methodes {
	padding-left: 20px;
	margin-top: 6px;
	margin-bottom: 12px;
}

.kundendaten .payments .pay-methodes > span {
	margin-right: 10px;
}

.kundendaten .payments .pay-methodes > span .fa-check,
.kundendaten .payments .pay-methodes > span .fa-times {
	padding-right: 4px;
}

.kundendaten .payments .pay-methodes .fa-check {
	color: var(--brand);
}

.kundendaten .payments .pay-methodes .fa-times {
	color: #ba0000;
}

.kundendaten .payments .pay-notice {
	font-size: 13px;
	color: var(--brand);
	padding-left: 20px;
}

.kundendaten input[type="radio"]+label {
	color: #aaa;
}

.kundendaten input[type="radio"]:checked+label {
	color: #333;
	cursor: default;
}

.kundendaten .form-group {
	width: 100%;
	min-width: 0;
}

.kundendaten .select2-container {
	height: 44px;
	width: 100% !important;
}

.kundendaten .select2-container--default {
	border: 1px solid var(--card-border);
	border-radius: 8px;
	background-color: #fff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.kundendaten .select2-container--default .select2-selection--single {
	height: 44px !important;
	border: none !important;
	box-shadow: none !important;
	background-color: transparent;
}

.kundendaten .select2-container--default.select2-container--open,
.kundendaten .select2-container--default.select2-container--focus {
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(110, 201, 133, 0.25);
}

.kundendaten .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 44px;
	padding: 0 8px;
	text-align: left;
	font-size: 14px;
}

.kundendaten .select2-container--default .select2-selection--single .select2-selection__placeholder {
	margin-left: 0 !important;
}

.kundendaten .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 44px;
	top: 0;
	right: 2px;
}

.select2-container--open .select2-dropdown--below.form-control {
	padding: 0;
}



#loginarea {
	padding: 22px 20px 15px;
	background-color: #f8faf9;
	border-radius: 0 0 12px 12px;
	margin-top: -1px;
}

#loginarea .alert-error {
	background-color: #fff5f5;
	color: #c53030;
	font-size: 13px;
	padding: 12px 15px;
	margin-bottom: 15px;
	border-radius: 8px;
	border: none;
}

#loginarea .alert-success {
	background-color: #f0fff4;
	color: var(--brand);
	font-size: 13px;
	padding: 12px 15px;
	margin-bottom: 15px;
	border-radius: 8px;
	border: none;
}

#loginarea .subtitle {
	font-weight: 700;
	font-size: 16px;
	margin-bottom: 15px;
	color: #333;
}

#loginarea .form-control {
	height: 44px;
	font-size: 15px;
	border: 1px solid var(--card-border);
	border-radius: 8px;
	transition: all 0.2s ease;
}

#loginarea .form-control:focus {
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(110, 201, 133, 0.25);
	outline: none;
}

#loginarea .mail-adress {
	position: relative;
}

#loginarea .mail-adress:before {
	content: "\f007";
	position: absolute;
	top: 13px;
	left: 14px;
	font-family: FontAwesome;
	font-size: 16px;
	color: var(--brand);
	z-index: 1;
}

#loginarea .mail-adress input {
	padding-left: 40px;
}

#loginarea .password {
	position: relative;
}

#loginarea .password:before {
	content: "\f023";
	position: absolute;
	top: 13px;
	left: 14px;
	font-family: FontAwesome;
	font-size: 16px;
	color: var(--brand);
	z-index: 1;
}

#loginarea .password input {
	padding-left: 40px;
}

#loginarea .forgot-pw {
	font-size: 14px;
	color: #444;
	text-decoration: underline;
}

#loginarea .forgot-pw:hover {
	color: var(--brand);
}

#loginarea ul.checked {
	color: var(--brand);
	font-size: 16px;
	margin-top: 9px;
	padding-left: 17px;
}

#loginarea ul.checked > li {
	list-style: none;
	position: relative;
	margin-bottom: 11px;
	padding-left: 7px;
}

#loginarea ul.checked > li:last-child {
	margin-bottom: 0;
}

#loginarea ul.checked > li:before  {
	position: absolute;
	top: 8px;
	left: -17px;
	content: "\f00c";
	font-family: FontAwesome;
	color: var(--brand);
}

.jungfahrer {
	background-color: #fff;
	color: #444;
	font-size: 13px;
	padding: 16px 20px 21px;
	margin-top: -4px;
	margin-bottom: 17px;
}

.jungfahrer .alert-title {
	color: #ff9600;
	font-size: 16px;
	margin-bottom: 10px;
}

.jungfahrer .alert-title .fa {
	font-size: 14px;
	margin-right: 7px;
}

.safe-booking {
	background-color: #fff;
	color: var(--brand);
	font-size: 13px;
	padding: 20px;
	border-radius: 12px;
	border: 1px solid var(--card-border);
	box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}

.safe-booking .sb-title {
	font-size: 22px;
	margin-bottom: 6px;
}

.safe-booking .sb-title .fa {
	font-size: 16px;
	margin-right: 6px;
}

.storno {
	background-color: #f4fff2;
	color: var(--brand);
	padding: 20px;
	border-radius: 12px;
	border: 1px solid #d4edda;
	box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}

.storno .storno-title {
	font-size: 22px;
	margin-bottom: 6px;
}

.storno .storno-title .fa {
	font-size: 22px;
	margin-right: 6px;
}

.reservierung .alert-success { background-color: #f4fff2; color: #333; border-radius: 4px; margin-bottom: 10px; padding: 10px 20px 10px; line-height: 21px; }
.reservierung .alert-success > div { font-size: 18px; font-weight: 700; line-height: 23px; }
.reservierung .control-numbers { font-size: 21px; padding: 11px 31px 10px 20px; margin-bottom: 10px; }
.reservierung .panel { margin-bottom: 18px; }
.reservierung .panel-result > .panel-body { background-color: #fff; border-radius: 4px; padding: 21px 15px 23px; }
.reservierung .cat-title { color: var(--brand); font-size: 22px; font-weight: 700; }
.reservierung .subtitle { font-size: 18px; font-weight: 700; margin-top: 23px; margin-bottom: 11px; }
.reservierung .place-data { padding-bottom: 3px; }
.reservierung .place-data .openings { margin-top: 0px; }
.reservierung .title { color: var(--brand); font-size: 18px; font-weight: 700; }
.reservierung .sub-title { font-size: 16px; font-weight: 700; margin-top: 14px; }
.reservierung .vehicle-img { height: 156px; width: 65%; }
.reservierung .panel-result > .panel-body .details { color: #333; font-size: 14px; }
.reservierung .panel-result > .panel-body .details .title { color: #333; font-size: 20px; font-weight: 400; line-height: 24px; }
.reservierung .panel-result > .panel-body .details .vehicle { margin-top: 11px; }
.reservierung .border { background-color: #ccc; height: 2px; width: 100%; margin-top: 22px; margin-bottom: 29px; }
.reservierung ul.checked { padding-left: 17px; margin-top: 6px; font-size:13px }
.reservierung ul.checked > li { list-style: none; position: relative; }
.reservierung ul.checked > li:before { position: absolute; top: 0; left: -17px; content: "\f00c"; font-family: FontAwesome; color: var(--brand); }
.reservierung ul.pointed { padding-left: 20px; margin-top: 6px; font-size:13px }
.reservierung ul.pointed > li { list-style: none; position: relative; }
.reservierung ul.pointed > li:before { position: absolute; top: 9px; left: -19px; content: "\f111"; font-family: FontAwesome; color: #333; font-size: 4px; }
.kundendaten ul.pointed > li > span,
.reservierung ul.pointed > li > span {
	display: inline-block;
	vertical-align: top;
}



.reservierung .dont-forget { background-color: #e7e7e7; font-size: 22px; border: 1px solid #e7e7e7; margin-top: 39px; margin-bottom: 0; }
.reservierung .alert-error { background-color: #f5f5f5; border-radius: 4px; padding: 20px; padding-bottom: 29px; padding-top: 14px; font-size: 13px; margin-bottom: 10px; }
.reservierung .alert-error > div { font-size: 22px; margin-bottom: 7px; }
.reservierung .alert-info > div { font-size: 22px; margin-bottom: 7px; margin-top: -5px;}
.reservierung .checkout-price { color: var(--brand); font-size: 28px; font-weight: bold; margin-top: 7px; margin-bottom: 8px; }
.reservierung .safe-pay, .reservierung .tax-txt { font-size: 16px; }
.reservierung .btn-green { width: 100%; font-size: 18px; font-weight: 700; text-transform: uppercase; padding: 13px 40px 3px; -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25); -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25); }
.reservierung #btn-print { padding: 8px 40px 7px; }
.geburtsdatum input.form-control[disabled], .geburtsdatum input.form-control[readonly] { background-color: #fff !important; }
.anmietdatum input.form-control[disabled], .anmietdatum input.form-control[readonly] { background-color: #fff !important; }
.rueckgabedatum input.form-control[disabled], .rueckgabedatum input.form-control[readonly] { background-color: #fff !important; }
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { background-color: #eee !important; }

.tt-bubble.top {
	display: block;
	visibility: hidden;
	position: absolute;
	bottom: 185%;
	right: -420%;
	background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%);
	color: #ffffff;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 13px;
	line-height: 1.6;
	font-weight: 400;
	width: 280px;
	padding: 14px 18px;
	text-align: left;
	white-space: normal;
	border-radius: 12px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.15);
	z-index: 10000;
}

.moreleft .tt-bubble.top {
	left: -850%;
}

.tt-bubble.top:after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-top-color: #2d5f41;
	border-style: solid;
	border-width: 10px 5px 0;
	bottom: -10px;
	left: 73%;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.moreleft .tt-bubble.top:after {
	left: 30%;
}

/* Tooltip below checkbox "Benutzerkonto erstellen" */
.checkbox.used-login .tt-bubble.top {
	bottom: auto;
	top: calc(100% + 8px);
	right: auto;
	left: 50%;
	transform: translateX(-50%);
}
.checkbox.used-login .tt-bubble.top:after {
	bottom: auto;
	top: -10px;
	left: 50%;
	transform: translateX(-50%);
	border-top-color: transparent;
	border-bottom-color: #2d5f41;
	border-width: 0 5px 10px;
}

.tt-bubble.bottom {
	display: block;
	visibility: hidden;
	position: absolute;
	bottom: -465%;
	right: -420%;
	background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%);
	color: #ffffff;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	font-size: 13px;
	line-height: 1.6;
	font-weight: 400;
	width: 280px;
	padding: 14px 18px;
	text-align: left;
	white-space: normal;
	border-radius: 12px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.15);
	z-index: 10000;
}

.moreleft .tt-bubble.bottom {
	left: -850%;
}

.tt-bubble.bottom:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-color: transparent;
	border-bottom-color: #1e4029;
	border-style: solid;
	border-width: 0 5px 10px;
	top: -10px;
	left: 73%;
	filter: drop-shadow(0 -2px 4px rgba(0, 0, 0, 0.2));
}

.moreleft .tt-bubble.bottom:before {
	left: 30%;
}

.big .tt-bubble.top {
	bottom: 150%;
	right: -290%;
}

.big .tt-bubble.bottom {
	bottom: -335%;
	right: -300%;
}

.misc .tt-bubble.top {
	bottom: 185%;
	right: -490%;
}

.misc .tt-bubble.bottom {
	bottom: -530%;
	right: -495%;
}

.panel-group .panel-title a .fa-angle-up {
	display: block;
}
.panel-group .panel-title a .fa-angle-down {
	display: none;
}
.panel-group .panel-title a.collapsed .fa-angle-up {
	display: none;
}
.panel-group .panel-title a.collapsed .fa-angle-down {
	display: block;
}


/**
 * Helpers
**/

/* add */
a {
	/* color: #ba0000; */
}
a:hover {
}
a:focus {
	text-decoration: none;
}

.lettering a:hover,
.lettering a:focus {
	text-decoration: none;
}

/* add end */
.full-w {
	width: 100%;
}

.fa-question-circle {
	position: relative;
	color: var(--brand);
	margin-left: 5px;
	cursor: default;
}
.f-left {
	float: left;
}

.lh-40 {
	line-height: 40px;
}

.fs-16 {
	font-size: 16px;
}

.fs-22 {
	font-size: 22px;
}

.c-444 {
	color: #444 !important;
}

.pr-0 {
	padding-right: 0 !important;
}

.pt-0 {
	padding-top: 0 !important;
}

.pl-0 {
	padding-left: 0 !important;
}

.pb-0 {
	padding-bottom: 0 !important;
}

.pl-1 {
	padding-left: 1px !important;
}

.pt-2 {
	padding-top: 2px !important;
}

.pl-2 {
	padding-left: 2px !important;
}

.pr-3 {
	padding-right: 3px !important;
}

.pr-4 {
	padding-right: 4px !important;
}

.pl-4 {
	padding-left: 4px !important;
}

.pr-5 {
	padding-right: 5px !important;
}

.pl-5 {
	padding-left: 5px !important;
}

.pr-7 {
	padding-right: 7px !important;
}

.pr-8 {
	padding-right: 8px !important;
}

.pt-8 {
	padding-top: 8px !important;
}

.pl-9 {
	padding-left: 9px !important;
}

.pr-9 {
	padding-right: 9px !important;
}

.pr-10 {
	padding-right: 10px !important;
}

.pl-10 {
	padding-left: 10px !important;
}

.pl-12 {
	padding-left: 12px !important;
}

.pr-13 {
	padding-right: 13px !important;
}

.pl-13 {
	padding-left: 13px !important;
}
.pr-14 {
	padding-right: 14px !important;
}

.pl-14 {
	padding-left: 14px !important;
}

.pr-15 {
	padding-right: 15px !important;
}
.pl-15 {
	padding-left: 15px !important;
}

.pr-16 {
	padding-right: 16px !important;
}

.pl-18 {
	padding-left: 18px !important;
}

.pr-18 {
	padding-right: 18px !important;
}

.pr-19 {
	padding-right: 19px !important;
}

.pr-20 {
	padding-right: 20px !important;
}

.pl-20 {
	padding-left: 20px !important;
}

.pb-21 {
	padding-bottom: 21px !important;
}

.pr-22 {
	padding-right: 22px !important;
}

.pl-22 {
	padding-left: 22px !important;
}

.pl-23 {
	padding-left: 23px !important;
}

.pt-23 {
	padding-top: 23px !important;
}

.pl-25 {
	padding-left: 25px !important;
}

.pl-26 {
	padding-left: 26px !important;
}

.pl-27 {
	padding-left: 27px !important;
}

.pr-27 {
	padding-right: 27px !important;
}

.pt-27 {
	padding-top: 27px !important;
}

.pr-33 {
	padding-right: 33px !important;
}

.pl-35 {
	padding-left: 35px !important;
}

.pr-35 {
	padding-right: 35px !important;
}

.pl-40 {
	padding-left: 40px !important;
}

.pl-41 {
	padding-left: 41px !important;
}

.pl-42 {
	padding-left: 42px !important;
}

.pl-45 {
	padding-left: 45px !important;
}

.pr-47 {
	padding-right: 47px !important;
}

.ptb-53 {
	padding-top: 53px !important;
	padding-bottom: 53px !important;
}

.pr-58 {
	padding-right: 58px !important;
}

.pl-63 {
	padding-left: 63px !important;
}

.mh-223 {
	min-height: 223px !important;
}


.mb-0 {
	margin-bottom: 0 !important;
}

.ml-0 {
	margin-left: 0 !important;
}

.mt--3 {
	margin-top: -3px !important;
}

.ml--3 {
	margin-left: -3px !important
}

.ml--7 {
	margin-left: -7px !important;
}

.ml--10 {
	margin-left: -10px !important;
}

.ml--11 {
	margin-left: -11px !important;
}

.mb--11 {
	margin-bottom: -11px !important;
}

.mr--12 {
	margin-right: -12px !important;
}

.ml--12 {
	margin-left: -12px !important;
}

.ml--27 {
	margin-left: -27px !important;
}

.ml--28 {
	margin-left: -28px !important;
}

.mr-0 {
	margin-right: 0 !important;
}

.ml-0 {
	margin-left: 0 !important;
}

.ml-1 {
	margin-left: 1px !important;
}

.ml-5 {
	margin-left: 5px !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.ml-7 {
	margin-left: 7px !important;
}

.ml-8 {
	margin-left: 8px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mb-13 {
	margin-bottom: 13px !important;
}

.mb-15 {
	margin-bottom: 15px !important;
}

.mr-14 {
	margin-right: 14px !important;
}

.mt-15 {
	margin-top: 15px !important;
}

.mr-15 {
	margin-right: 15px !important;
}

.ml-17 {
	margin-left: 17px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mb-22 {
	margin-bottom: 22px !important;
}

.ml-21 {
	margin-left: 21px !important;
}

.mt-25 {
	margin-top: 25px !important;
}

.mb-25 {
	margin-bottom: 25px !important;
}

.ml-28 {
	margin-left: 28px !important;
}

.mt-30 {
	margin-top: 30px !important;
}

.mt-35 {
	margin-top: 35px !important;
}
.mb-30 {
	margin-bottom: 30px !important;
}

.mr-43 {
	margin-right: 43px !important;
}

.mr-53 {
	margin-right: 53px !important;
}

.w-24 {
	width: 24%;
}

.w-27 {
	width: 27%;
}

.w-28 {
	width: 28%;
}

.w-29 {
	width: 29%;
}

.w-30 {
	width: 30%;
}
.w-33 {
	width: 33%;
}
.w-45 {
	width: 45%;
}

.w-50 {
	width: 50%;
}

.w-55 {
	width: 55%;
}

.w-70 {
	width: 70%;
}

.w-73 {
	width: 73%;
}

.w-100 {
	width: 100%;
}

.li-pl-12 ul > li {
	padding-left: 12px !important;
}

.a-red {
	color: #ba0000;
	text-decoration: underline;
}

.a-red:focus,
.a-red:hover {
	color: #ba0000;
	text-decoration: none;
}

.upper {
	text-transform: uppercase;
}

.white-bg {
	background-color: #fff;
}

.grey-bg {
	background-color: #f5f5f5;
}

.label-white {
	display: inline-block;
	float: left;
	width: 50px;
	background-color: #fff;
	color: #444;
	font-size: 20px;
	font-weight: 700;
	line-height: 50px;
	padding: 0;
	margin-right: 10px;
}

span.help-text {
	display: table-cell;
	height: 50px;
	font-size: 14px;
	vertical-align: middle;
	padding-left: 5px;
}

.text-white {
	color: #fff;
}

/* Ensure all text inside .text-white container is white (for Einweg LP header) */
.text-white h3,
.text-white h3.title,
.text-white .title,
.text-white p,
.text-white div {
	color: #fff !important;
}

.p-relative {
	position: relative;
}

.tooltip {
	font-family: 'Open Sans', Tahoma, Arial, helvetica, sans-serif;
	line-height: 14px;
	opacity: 1;

}

.tooltip.in {
	opacity: 1;
	filter: alpha(opacity=100);
	opacity: 1;
}

.tooltip.top {
	margin-top: -6px;
	margin-left: 80px;
	opacity: 1;
}

.tooltip.top .tooltip-arrow {
	bottom: -5px;
	border-width: 10px 5px 0;
	border-top-color: #ffe100;
	left: 19% !important;
	opacity: 1;
}

.tooltip-inner {
	width: 260px;
	max-width: 260px;
	padding: 10px;
	color: #000;
	text-align: left;
	background-color: #ffe100;
	border-radius: 10px;
	opacity: 1;
}

/* Datepicker: Hidden by default, shown only when jQuery UI opens it via inline style */
#ui-datepicker-div {
	z-index: 1100 !important;
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
	outline: none;
	outline-offset: 0;
}

.form-control:focus {
	border-color: #ccc;
	-webkit-box-shadow: none;
	box-shadow: none;
}


select:focus > option:checked {
	background-color: #ddd !important;
}



.sbHolder {
	background-color: #fff;
	border: 1px solid #ccc;
	font-family: "Open Sans", Arial, sans-serif;
	width: 100%;

}

.icon-toggle-open {
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: #fff;
	width: 18px;
	float: right;
	padding: 0 5px;
	line-height: 28px;
}

.icon-toggle-open:before {
	content: "\f0d7";
	color: var(--brand);
}

.icon-toggle {
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: #fff;
	width: 18px;
	float: right;
	padding: 0 5px;
	line-height: 28px;
}

.icon-toggle:before {
	content: "\f0d7";
	color: var(--brand);
}

.sbSelector {
	width: 100%;
	padding-left: 4px;
}

.sbSelector:link,
.sbSelector:visited,
.sbSelector:hover {
	color: #333;
}

.sbOptions {
	background-color: #fff;
	border: 1px solid #ccc;
	width: 100%;
	left: 0;
	max-height: 250px !important;
}

.sbOptions li {
	padding: 0;
}

.sbOptions a:link,
.sbOptions a:visited {
	color: #333;
	padding: 7px 0 7px 16px;
}

.sbOptions a:hover,
.sbOptions a:focus,
.sbOptions a.sbFocus {
	background: var(--brand);
	color: #fff;
}

.progress-bar-green {
	background-color: var(--brand);
}


.ui-datepicker-header .ui-datepicker-next-hover{
	background-color: var(--brand) !important;
	border:0px !important;
	right: 2px !important;
	top: 2px !important;
	cursor: pointer;
}

.ui-datepicker-header .ui-datepicker-prev-hover{
	background-color: var(--brand) !important;
	border:0px !important;
	left: 2px !important;
	top: 2px !important;
	cursor: pointer;
}



.ui-datepicker-header .ui-datepicker-next-hover span,
.ui-datepicker-header .ui-datepicker-next-hover span{
	background-color: var(--brand) !important;
	border:0px !important;
}


.ui-widget-header {
	border: 1px solid var(--brand);
	background: var(--brand);
	color: #fff;
	font-weight: 700;
}

.ui-widget-header .ui-icon {
	background-image: url("images/ui-icons_ffffff_256x240.png");
}

.ui-datepicker th {
	color: var(--brand);
}

.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
	border: 1px solid #c5c5c5;
	background: #ba0000;
	color: #fff;
}

.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
	color: #000;
	font-weight: normal;
	font-family: 'Open Sans', Tahoma, Arial, helvetica, sans-serif;
}

#change-data .form-control:focus,
#tab-lkw .form-control:focus{
	border: 1px solid var(--brand) !important;
}

.ui-menu {
	background-color: #fff;
	border: 1px solid #ccc;
	border-top: none;
	z-index: 1100;
}

#extras .ui-menu .ui-menu-item,
#kundendaten .ui-menu .ui-menu-item,
#home .ui-menu .ui-menu-item {
	border-bottom: 1px solid #ccc;
	padding-left: 35px;
}

#search-results .ui-menu .ui-menu-item {
	border-bottom: 1px solid #ccc;
	padding-left: 5px;
}

.ui-menu .ui-menu-item:last-child {
	border-bottom: none;
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
	margin: 0;
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
	border: 1px solid #c5c5c5;
	/*background: #fff;*/
	font-weight: normal;
	/*color: var(--brand);*/
}

.ui-autocomplete .ui-state-focus{
	border:none;
	border-bottom: 1px solid #c5c5c5;
	background: #fff;
	font-weight: normal;
	color: var(--brand);
}

/*
.ui-state-hover:last-child,
.ui-widget-content .ui-state-hover:last-child,
.ui-widget-header .ui-state-hover:last-child,
.ui-state-focus:last-child,
.ui-widget-content .ui-state-focus:last-child,
.ui-widget-header .ui-state-focus:last-child {
	border: 1px solid #c5c5c5;
}
*/

.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited {
	color: var(--brand);
	text-decoration: none;
	border: 1px solid #c5c5c5;
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
	border: 1px solid #ccc;
	background: var(--brand);
	font-weight: normal;
	color: #FFF;
}

.radio label, .checkbox label {
	min-height: 16px;
}

/*
generelle anpassungen
*/

.select2-search {
	display:none;
}

.select2-container--default .select2-selection--single {
	border-radius:0px;
	border-color: #ccc;
}

.container {
	/* width: 1190px !important; */
	/* margin-bottom: 20px; */
}
/*
Anpassungen fÃ¼r Startseite
*/
.search-box .select2-container .select2-selection--single {
	height: 34px;
	padding-left: 27px;
}

.res-maske-dd .select2-results__option{
	padding-left: 35px;
}

.res-maske-dd .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: -3px;
}

/* Fix: Nutzfahrzeuge Kategorie-Select2 - Border auf Container statt Selection */
#nutz-all-categories-desktop + .select2-container,
#nutz-subcategories-container-desktop .select2-container {
	border: 1px solid var(--card-border, #e0e0e0);
	border-radius: 8px;
	transition: all 0.2s ease;
}
#nutz-all-categories-desktop + .select2-container.select2-container--focus,
#nutz-all-categories-desktop + .select2-container.select2-container--open,
#nutz-subcategories-container-desktop .select2-container.select2-container--focus,
#nutz-subcategories-container-desktop .select2-container.select2-container--open {
	border: 2px solid #2d5f41 !important;
	box-shadow: 0 0 5px rgba(45, 95, 65, 0.5);
}
#nutz-all-categories-desktop + .select2-container .select2-selection--single,
#nutz-subcategories-container-desktop .select2-container .select2-selection--single {
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
	padding-left: 8px;
}
#nutz-all-categories-desktop + .select2-container .select2-selection__placeholder,
#nutz-subcategories-container-desktop .select2-container .select2-selection__placeholder {
	margin-left: 0 !important;
}
#nutz-all-categories-desktop + .select2-container .select2-selection__clear,
#nutz-subcategories-container-desktop .select2-container .select2-selection__clear {
	float: right !important;
	font-size: 20px;
	margin-right: 20px;
	line-height: 25px;
	position: relative;
	top: -3px;
	color: #999;
}
#nutz-all-categories-desktop + .select2-container .select2-selection__clear:hover,
#nutz-subcategories-container-desktop .select2-container .select2-selection__clear:hover {
	color: #333;
}

.dd-active .select2-selection--single {
	/* border: 1px solid var(--brand) !important; */
}

/*
Anpassungen fÃ¼r Search results
Suche anpassen

search-edit-time-dd
*/

.edit .select2-container {width: 75px !important;
    background: white;
}
.edit .select2-container .select2-selection--single {
	height: 25px;
	padding-left: 14px;
	font-size:12px;
}

.edit .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 23px;
}

.edit .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 0px;
}

.search-edit-time-dd .select2-results__option {
	padding: 3px;
	font-size:12px;
}

.search-edit-time-dd .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 23px;
}

/*
Station anpassen
res-maske-dd
*/
.map .select2-container .select2-selection--single,
.results .select2-container .select2-selection--single {
	height: 25px;
	padding-left: 5px;
	font-size:12px;
}

.map .select2-container--default .select2-selection--single .select2-selection__rendered,
.results .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 23px;
}

.map .select2-container--default .select2-selection--single .select2-selection__arrow,
.results .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 0px;
}

.map .select2-results__option,
.search-result-station-dd .select2-results__option {
	padding: 3px;
	padding-left: 13px;
	font-size:12px;
}

.select2-selection__rendered[title="train_station"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="train_station"]:before,
.select2-selection__rendered[title="Bahnhof"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="Bahnhof"]:before{
	content: "\f238";
	font-family: FontAwesome;
	color: var(--brand);
	z-index: 1;
	width: 17px;
	display: block;
	float: left;
}

.search-result-station-dd .select2-results__option[data-visible="false"] {
	display:none;
}
.select2-selection__rendered[title="city"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="city"]:before,
.select2-selection__rendered[title="Stadt"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="Stadt"]:before{
	content: "\f0f7";
	font-family: FontAwesome;
	color: var(--brand);
	z-index: 1;
	width: 17px;
	display: block;
	float: left;
}
.select2-selection__rendered[title="airport"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="airport"]:before,
.select2-selection__rendered[title="Flughafen"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="Flughafen"]:before{
	content: "\f072";
	font-family: FontAwesome;
	color: var(--brand);
	z-index: 1;
	width: 17px;
	display: block;
	float: left;
}
.select2-selection__rendered[title="ferry"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="ferry"]:before,
.select2-selection__rendered[title="FÃ¤hre"]:before,
.search-result-station-dd .select2-results__option[data-stationtype="FÃ¤hre"]:before{
	content: "\f21a";
	font-family: FontAwesome;
	color: var(--brand);
	z-index: 1;
	width: 17px;
	display: block;
	float: left;
}
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="airport"]:before,
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="ferry"]:before,
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="train_station"]:before,
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="city"]:before,
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="Flughafen"]:before,
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="FÃ¤hre"]:before,
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="Bahnhof"]:before,
.search-result-station-dd .select2-results__option--highlighted[data-stationtype="Stadt"]:before{
	color: #FFF;
}

.map .select2-container--default .select2-selection--single .select2-selection__rendered,
.search-result-station-dd .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 23px;
}

.select2-container--disabled span span {
	cursor: auto; /*not allowed*/
}

.frontpage-header .sidebar .collapse {
	display: block;
}

.flex {
	width: 100%;
	height: auto !important;
	min-height: 100%;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.flex-box {
	align-self: center;
	margin: auto 0;
}

.steps ul > li.step-1:after {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid var(--card-border);
	position: absolute;
	top: 0;
	right: -15px;
	z-index: 2;
}

.steps ul > li.step-2:before {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid #fff;
	position: absolute;
	top: 7px;
	left: 0px;
	z-index: 1;
}

.steps ul > li.step-2:after {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid var(--card-border);
	position: absolute;
	top: 0;
	right: -15px;
	z-index: 2;
}

.steps ul > li.step-3:before {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid #fff;
	position: absolute;
	top: 7px;
	left: 0px;
	z-index: 1;
}

.steps ul > li.step-3:after {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid var(--card-border);
	position: absolute;
	top: 0;
	right: -15px;
	z-index: 2;
}

.steps ul > li.step-4:before {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid #fff;
	position: absolute;
	top: 7px;
	left: 0px;
	z-index: 1;
}

.steps ul > li.step-4:after {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid var(--card-border);
	position: absolute;
	top: 0;
	right: -15px;
	z-index: 2;
}

.steps ul > li.step-5:before {
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid #fff;
	position: absolute;
	top: 7px;
	left: 0px;
	z-index: 1;
}

.steps ul > li.step-1.active:after {
	border-left: 15px solid var(--brand);
}

.steps ul > li.step-2.active:after {
	border-left: 15px solid var(--brand);
}

.steps ul > li.step-3.active:after {
	border-left: 15px solid var(--brand);
}

.steps ul > li.step-4.active:after {
	border-left: 15px solid var(--brand);
}

.close-button {
	position:absolute; top:13px; right:13px; color: red; cursor:pointer
}

.normal {
	text-transform: none !important;
}

.green {
	color: var(--brand);
}

/* Modern GDPR Cookie Consent Banner */
#cookie-consent-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
    z-index: 10000;
    display: none;
    animation: fadeIn 0.3s ease-in-out;
}

#cookie-consent-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #ffffff;
    border-top: 3px solid var(--brand);
    box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.1);
    z-index: 10001;
    transform: translateY(100%);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    max-height: 90vh;
    overflow-y: auto;
}

#cookie-consent-banner.show {
    transform: translateY(0);
}

.cookie-banner-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 24px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    align-items: center;
}

.cookie-banner-info {
    display: flex;
    align-items: center;
    gap: 16px;
}

.cookie-banner-icon {
    width: 48px;
    height: 48px;
    background: var(--brand);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
    flex-shrink: 0;
}

.cookie-banner-text {
    flex: 1;
}

.cookie-banner-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--text);
    margin: 0 0 8px 0;
}

.cookie-banner-description {
    font-size: 14px;
    color: var(--muted);
    line-height: 1.5;
    margin: 0;
}

.cookie-banner-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.cookie-btn {
    padding: 12px 24px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    border: 2px solid transparent;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.cookie-btn-primary {
    background: var(--brand);
    color: white;
    border-color: var(--brand);
}

.cookie-btn-primary:hover {
    background: var(--brand-600);
    border-color: var(--brand-600);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(45, 95, 65, 0.3);
}

.cookie-btn-secondary {
    background: transparent;
    color: var(--muted);
    border-color: var(--card-border);
}

.cookie-btn-secondary:hover {
    background: var(--bg);
    color: var(--text);
    border-color: var(--brand);
}

.cookie-btn-text {
    background: transparent;
    color: var(--brand);
    border: none;
    padding: 12px 16px;
}

.cookie-btn-text:hover {
    background: rgba(45, 95, 65, 0.1);
    color: var(--brand-600);
}

/* Cookie Settings Modal */
#cookie-settings-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(6px);
    z-index: 10002;
    display: none;
    opacity: 0;
    animation: fadeIn 0.3s ease-in-out forwards;
}

.cookie-settings-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    width: 90%;
    max-width: 600px;
    max-height: 80vh;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}

.cookie-settings-header {
    padding: 24px;
    border-bottom: 1px solid var(--card-border);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cookie-settings-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--text);
    margin: 0;
}

.cookie-settings-close {
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--muted);
    font-size: 18px;
    transition: all 0.2s ease;
}

.cookie-settings-close:hover {
    background: var(--bg);
    color: var(--text);
}

.cookie-settings-body {
    padding: 24px;
    max-height: 50vh;
    overflow-y: auto;
}

.cookie-category {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--card-border);
}

.cookie-category:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.cookie-category-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.cookie-category-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--text);
    margin: 0;
}

.cookie-toggle {
    position: relative;
    width: 48px;
    height: 24px;
    background: var(--card-border);
    border-radius: 12px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.cookie-toggle.active {
    background: var(--brand);
}

.cookie-toggle.disabled {
    background: var(--muted);
    cursor: not-allowed;
}

/* Ensure disabled active toggles still show brand color */
.cookie-toggle.disabled.active {
    background: var(--brand);
}

.cookie-toggle-handle {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 20px;
    height: 20px;
    background: white;
    border-radius: 50%;
    transition: transform 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.cookie-toggle.active .cookie-toggle-handle {
    transform: translateX(24px);
}

.cookie-category-description {
    font-size: 14px;
    color: var(--muted);
    line-height: 1.5;
    margin: 0;
}

.cookie-settings-footer {
    padding: 24px;
    border-top: 1px solid var(--card-border);
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}

/* Responsive Design */
@media (max-width: 768px) {
    .cookie-banner-content {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 20px;
    }

    .cookie-banner-info {
        flex-direction: column;
        text-align: center;
        gap: 12px;
    }

    .cookie-banner-actions {
        justify-content: center;
        width: 100%;
    }

    .cookie-btn {
        flex: 1;
        justify-content: center;
        min-width: 120px;
    }

    .cookie-settings-container {
        width: 95%;
        max-height: 90vh;
    }

    .cookie-settings-header,
    .cookie-settings-body,
    .cookie-settings-footer {
        padding: 16px;
    }
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Screen Reader Support */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Accessibility Improvements */
.cookie-required-notice {
    font-size: 12px;
    color: var(--muted);
    font-style: italic;
    margin-top: 8px;
    display: block;
}

/* High Contrast Mode Support */
@media (prefers-contrast: high) {
    #cookie-consent-banner {
        border-top: 4px solid var(--brand);
        background: #ffffff;
        color: #000000;
    }

    .cookie-btn-primary {
        background: #000000;
        color: #ffffff;
        border: 2px solid #000000;
    }

    .cookie-btn-secondary {
        background: #ffffff;
        color: #000000;
        border: 2px solid #000000;
    }

    .cookie-toggle {
        border: 2px solid #000000;
    }
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    #cookie-consent-banner,
    .cookie-btn,
    .cookie-toggle-handle,
    #cookie-settings-modal {
        transition: none !important;
        animation: none !important;
    }

    #cookie-consent-banner.show {
        transform: translateY(0);
    }
}

/* Focus Indicators */
.cookie-btn:focus,
.cookie-toggle:focus,
.cookie-settings-close:focus {
    outline: 3px solid var(--brand);
    outline-offset: 2px;
}

/* Mobile-specific Cookie Banner */
@media (max-width: 480px) {
    .cookie-banner-content {
        padding: 16px;
    }

    .cookie-banner-title {
        font-size: 16px;
    }

    .cookie-banner-description {
        font-size: 13px;
    }

    .cookie-btn {
        padding: 10px 16px;
        font-size: 13px;
    }

    .cookie-settings-container {
        width: 98%;
        max-height: 95vh;
    }
}

/* Force Light Mode - No Dark Mode Support */
#cookie-consent-banner,
.cookie-settings-container {
    color-scheme: light !important;
    background: #ffffff !important;
    color: var(--text) !important;
}

.cookie-banner-title {
    color: var(--text) !important;
}

.cookie-banner-description {
    color: var(--muted) !important;
}

.cookie-settings-container {
    background: white !important;
    color: var(--text) !important;
}

.cookie-category {
    border-bottom-color: var(--card-border) !important;
}

.cookie-settings-header {
    border-bottom-color: var(--card-border) !important;
}

.cookie-settings-footer {
    border-top-color: var(--card-border) !important;
}

/* Legacy cookie-bar override */
#cookie-bar {
    display: none !important;
}


#no-js {
	background-color: #000;
	color: #fff;
	width: 100%;
	padding: 15px 0;
}

.min-height-250{
	min-height:250px;
}

#home #user-login{
	margin-bottom:20px
}


/**
 * GLOBAL
**/

.bg-grey {background: var(--bg);}
.bg-white {background: #FFFFFF;}
.height300 {height: 300px;}
.colorGreen {color: var(--brand) !important;}
.pt-20 {padding-top:20px;}
.pb-20 {padding-bottom:20px;}

/**
 * CONTENT ACCORDION STYLING
**/

#contentAccordion1 h2 {
	font-size: 26px;
	text-align: left;
}

/**
 * FAQ STYLING
**/

#faqHome ul li,
#LkwNoRisk ul li,
#BestLkwRent ul li {
	margin-left: 25px;
}

#home .panel-default > .panel-heading {
	background-color: #fff;
	border-color: #ddd;
	color: #444;
}

#home .panel-group .panel {
	border-radius: 0;
}

#home .panel-heading {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	padding: 10px 15px;
}

#home .panel-heading:hover {/* background: #f7f7f7; */}
#home.panel-heading[aria-expanded="true"] {background: #f7f7f7;}
#home .panel-heading.accordion-toggle:hover a {color: var(--brand); text-decoration: none;}



/**
 * TABS STYLING
**/

#tabContentHomepage .panel-heading {
	padding-bottom: 0;
	padding-right: 0;
	padding-left: 0;
	border-bottom: none;
}

#tabContentHomepage .panel-success > .panel-heading {
	background-color: transparent;
}

#tabContentHomepage .panel-success {
	border-color: transparent;
	box-shadow: 0 0px 0px rgba(0,0,0,0.05);
	-webkit-box-shadow: 0 0px 0px rgba(0,0,0,0.05);
}

#tabContentHomepage .panel-body {
	border: 1px solid #ddd;
	border-top: none;
}

#tabContentHomepage .nav.nav-tabs li:first-child {
	margin-left: 10px;
}

.nav > li > a {
	color: var(--brand);
}

#home main.nav.nav-tabs > li > a:hover, .nav > li > a:focus {
	background-color: #eee;
	color: var(--brand);
}

#tabContentHomepage .tab-content a {color: #444;}
#tabContentHomepage .tab-content a.header-link {font-weight: bold; display: block; padding-bottom: 10px; padding-top: 10px;}
#tabContentHomepage .tab-content span.header-link {font-weight: bold; display: block; padding-bottom: 10px; padding-top: 10px;}
#tabContentHomepage .tab-content ul li {
	margin-bottom: 5px;
	padding-bottom: 5px;
}

#tabContentHomepage .tab-content ul.dashed li {border-bottom: 1px dashed #ccc;}

.rentFirmLogo {
	background: #ccc none repeat scroll 0 0;
	display: inline-block;
	margin-right: 10px;
	width: auto;
}

.mietfirma_img_container {
	width:80px;
	display: table-cell;
	vertical-align: middle;
}

.mietfirma_link_container {
	display: table-cell;
	vertical-align: middle;
	height: 40px;
	padding-right:10px
}

/**
 * BLOCK BOTTOM
**/

#lkwStats .bg-img {
	background: transparent url("../img/img-stats.jpg") repeat scroll 0 0;
	border-bottom-left-radius: 5px;
	border-top-left-radius: 5px;
}

#lkwStats h3 {
	border-bottom: 2px solid var(--brand);
	color: var(--brand);
	padding: 0 0 15px;
	font-weight: bold;
}

#lkwStats .stats {font-weight: bold; color: var(--brand); font-size: 16px;}
#lkwStats .row:first-child {
	border: 1px solid #eee;
	border-radius: 5px;
}

.row.height300 {
	overflow: hidden;
}

/* Modern Flat Design Second Footer */
#secondFooter {
	background: #f8fafc;
	border-top: 2px solid #e5e7eb;
	color: var(--text);
	padding: 48px 0;
	margin-top: 0;
}

#secondFooter .heading3 {
	font-size: 18px;
	font-weight: 700;
	color: var(--brand);
	margin-bottom: 24px;
	padding-left: 0;
	text-transform: uppercase;
	letter-spacing: 0.8px;
	border-bottom: 3px solid var(--brand);
	padding-bottom: 8px;
	display: inline-block;
}

#secondFooter h3 {
	padding-left: 0;
}

#secondFooter ul.list-unstyled {
	margin: 0;
	padding: 0;
}

#secondFooter ul.list-unstyled li {
	margin-bottom: 14px;
	padding-left: 0;
}

#secondFooter a {
	color: #64748b;
	text-decoration: none;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.6;
	transition: color 0.2s ease;
	display: block;
	padding: 4px 0;
}

#secondFooter a:hover,
#secondFooter a:focus {
	color: var(--brand);
	text-decoration: none;
}

/* Grid Layout Improvements */
#secondFooter .row {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	align-items: flex-start;
}

#secondFooter .row > [class*="col-"] {
	flex: 1;
	min-width: 200px;
	margin-bottom: 0;
}

@media (max-width: 1199px) {
	#secondFooter {
		padding: 40px 0;
	}

	#secondFooter .row {
		gap: 24px;
	}

	#secondFooter .row > [class*="col-"] {
		min-width: 180px;
	}
}

@media (max-width: 768px) {
	#secondFooter {
		padding: 32px 0;
	}

	#secondFooter .row {
		flex-direction: column;
		gap: 32px;
	}

	#secondFooter .row > [class*="col-"] {
		min-width: 100%;
		flex: none;
	}
}


#overlay_loading {
	background-color:rgba(255,255,255,0.5);
	color: #666666;
	position: fixed;
	height: 100%;
	width: 100%;
	z-index: 5000;
	top: 0;
	left: 0;
	float: left;
	text-align: center;
	padding-top: 20%;
	display:none;
}

/* Modern loading spinner (shared with AnbieterAdmin) */
.loader-container{ position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); }
.modern-spinner{ width:60px; height:60px; border:4px solid #e8e8e8; border-top:4px solid #4CAF50; border-radius:50%; animation: spin 1s linear infinite; margin:0 auto 20px; box-shadow:0 4px 15px rgba(76,175,80,0.2); display:inline-block; }
.loading-text{ font-family:'Open Sans',sans-serif; font-size:16px; color:#555; margin-top:15px; opacity:.8; }
.loading-dots{ display:inline-block; animation: blink 1.5s infinite; }
@keyframes spin{ 0%{ transform:rotate(0deg);} 100%{ transform:rotate(360deg);} }
@keyframes blink{ 0%, 100%{ opacity:0;} 50%{ opacity:1;} }
#tabContentHomepage .nav-tabs {
	cursor:auto;
}
#tabContentHomepage .nav-tabs > li,
.wrapper .nav-tabs > li {
	margin-bottom:-2px;
}

@-moz-document url-prefix() {
	.checkbox label:after {
		top: -1px !important;
	}
}

footer .navigation span {
	color: #444;
}

.heading3{
	font-size: 24px;
	margin-top: 20px;
	margin-bottom: 10px;
	line-height: 26px;
}

div.panel-title{
	line-height:17px;
}

/* Gregor */
.input-group-addon.addon-green {
	color:var(--brand);
	background:none;
}
.input-group-addon.addon-first {
	padding-right:0;
	border-radius:0;
}
.mb-3 {
	margin-bottom:3px;
}
.mb-6 {
	margin-bottom:6px;
}
.mt-0 {
	margin-top:0;
}
.mt--5 {
	margin-top: -5px;
}
.mb-30 {
	margin-bottom:30px;
}
.mb-50 {
	margin-bottom:50px;
}
.mt-50 {
	margin-top:50px;
}
.txt-green {
    color: var(--brand);
    font-size: 35px;
    line-height: 6px !important;
    font-weight: bold;
}
.odd-even .txt-green,
.odd-even .txt-red {
    font-size: inherit;
    font-weight: normal;
}
.txt-red {
	color:#9E0000;
}
#backend .kundenservice {
	color:#333;
}
#backend .kundenservice .tab-content.grey-tab {
	padding-top:20px;
}
#backend .kundenservice h1 {
	color: #fff;
	font-weight: bold;
	margin-top: 0;
	text-align: center;
}

#backend .green-lane.kundenservice {
	height:130px;
}

#backend .kundenservice .btn-green {
	box-shadow: 0 0 3px #333;
}
#backend .kundenservice .btn-red {
	font-size: inherit;
	box-shadow: 0 0 3px #333;
	padding: 10px;
}
#backend .kundenservice #btn-register-now {
	width:100%;
}
#backend .kundenservice .nav-tabs.rounded > li > a {
	color:#333;
	box-shadow: 0 0 2px #333;
}
#backend .kundenservice .nav-tabs.rounded > li.active > a {
	box-shadow: none;
	color:var(--brand);
}

#backend .kundenservice .alert-error {
	padding:10px;
	font-size:14px;
}
#backend .kundenservice .area-grey {
	background:#f5f5f5;
	padding: 30px 20px;
}
#backend .kundenservice .area-grey h2 {
	margin-top:0;
}
#backend .kundenservice .area-grey h3 {
	margin-top:0;
}

#backend .kundenservice .area-grey.headline h3 {
	margin-bottom:0;
	font-size:20px;
}

#backend .kundenservice .area-green {
	background:var(--brand);
	padding: 30px 20px;
	color:#fff;
}
#backend .kundenservice .area-green h2 {
	margin-top:0;
}
#backend .kundenservice .area-green h3 {
	margin-top:0;
}

#backend .kundenservice .area-green.headline h3 {
	font-size: 27px;
	font-weight: bold;
	margin-bottom: 0;
}

#backend .kundenservice .checkbox label::before {
	top:0;
}


#backend .kundenservice .faq-more {
	color: var(--brand);
	text-decoration:underline;
}
#backend .kundenservice .faq-question-container {
	height:50px;
}
#backend .kundenservice .faq-content-container {
	height:50px;
}

#backend .kundenservice .panel-default .panel-heading {
	background: #dddddd none repeat scroll 0 0;
	color: var(--brand);
	font-size: 17px;
	font-weight: bold;
	padding: 15px;
}
#backend .kundenservice .panel-default .panel-body {
	padding:20px;
}

#backend .kundenservice .opening-table {
	margin-bottom:0;
}
#backend .kundenservice .opening-table td {
	padding-left:0;
	padding-top:0;
	padding-bottom:0;
	border:none;
}

#backend .kundenservice #register_container input[type="text"], #backend .kundenservice #register_container input[type="password"] {
	background:#ddd;
}
#backend .kundenservice #register_container .input-group-addon.addon-first {
	background:#ddd;
}
#backend .kundenservice #res-register-btn {
	padding:5px;
}
#backend .kundenservice #rek_file_table td {
	padding-bottom:10px;
}
#backend .kundenservice #rek_file_table td.file {
	font-weight:bold;
	padding-right:20px;
}

#backend .kundenservice #rek_file_table td.file a {
	color:var(--brand);
	text-decoration:underline;
}


#backend .kundenservice #lkw-requestForm .anmietzeit::before {
	color: var(--brand);
	content: "ï€—";
	font-family: FontAwesome;
	font-size: 14px;
	left: 10px;
	position: absolute;
	top: 12px;
	z-index: 1;
}
#backend .kundenservice #lkw-requestForm .umkreis::before {
	color: var(--brand);
	content: "\f140";
	font-family: FontAwesome;
	font-size: 14px;
	left: 10px;
	position: absolute;
	top: 12px;
	z-index: 1;
}
#backend .kundenservice #lkw-requestForm  .rueckgabezeit::before {
	color: var(--brand);
	content: "ï€—";
	font-family: FontAwesome;
	font-size: 14px;
	left: 10px;
	position: absolute;
	top: 12px;
	z-index: 1;
}
#backend .kundenservice #lkw-requestForm  .fahrzeugmodell::before {
	color: var(--brand);
	content: "\f0d1";
	font-family: FontAwesome;
	font-size: 14px;
	left: 10px;
	position: absolute;
	top: 12px;
	z-index: 1;
}

#backend .kundenservice #lkw-requestForm .anmietzeit {
	position: relative;
}
#backend .kundenservice #lkw-requestForm .umkreis {
	position: relative;
}
#backend .kundenservice #lkw-requestForm .rueckgabezeit {
	position: relative;
}
#backend .kundenservice #lkw-requestForm .fahrzeugmodell {
	position: relative;
}
#backend .kundenservice #lkw-requestForm .anmietzeit select {
	-moz-appearance: none;
	padding-left: 35px;
	position: relative;
}
#backend .kundenservice #lkw-requestForm .fahrzeugmodell select {
	-moz-appearance: none;
	padding-left: 35px;
	position: relative;
}
#backend .kundenservice #lkw-requestForm .rueckgabezeit select {
	-moz-appearance: none;
	padding-left: 35px;
	position: relative;
}

#backend .kundenservice #lkw-requestForm .select2-container .select2-selection--single {
	padding-left: 27px;
}
#backend .kundenservice #lkw-requestForm .customer {
	line-heigth:14px;
}
#backend .kundenservice #lkw-requestForm .title {
	color:#333;
	padding-right:10px;
	line-height:38px;
	font-size: 14px;
}
#backend .kundenservice #lkw-requestForm .birthday label {
	line-height:38px;
}

#backend .kundenservice #lkw-requestForm input[type="radio"] + label {
	font-size:14px;
}

#backend .kundenservice .booking-steps .booking-step {
	position:relative;
}

#backend .kundenservice .booking-steps .booking-step.arrow::after {
	border-bottom: 60px solid transparent;
	border-left: 20px solid var(--brand);
	border-top: 60px solid transparent;
	content: "";
	display: block;
	height: 0;
	position: absolute;
	right: -10px;
	top: 50px;
	width: 0;
	z-index: 100;
}
#backend .kundenservice .booking-steps .booking-step img {
	overflow: hidden;
	height:212px;
	width:100%;
}
#backend .kundenservice .select_country a {
	color:#333;
	font-weight:bold;
}
#backend .kundenservice .select_country_img {
	border-radius: 3px;
	display: inline;
	margin-right: 10px;
	width: 35px;
}
#backend .kundenservice .rating-container {
	border:1px solid #ccc;
	padding:20px;
	margin-bottom:10px;
}
#backend .kundenservice .rating-container .rating_stars {
	margin-right:10px;
}
#backend .kundenservice .rating-container .rating_stars i {
	color: #ff9600;
	line-height: 20px;
	margin-right: 3px;
}
#backend #detailsRatingDialog .rating-container {

}
#backend #detailsRatingDialog .rating-container .rating_stars {
	margin-right:10px;
}
#backend #detailsRatingDialog .rating-container .rating_stars i {
	color: #ff9600;
	line-height: 20px;
	margin-right: 3px;
}
#backend .kundenservice .customer_ratings_container {
	padding:15px;
	background:#F5F5F5;
}
#backend .kundenservice .customer_ratings_container .rating_stars i {
	color: #ff9600;
	line-height: 20px;
	margin-right: 3px;
}
#backend .kundenservice .rating-container .rating-details {
	color:var(--brand);
	text-decoration:underline;
}
#backend .kundenservice #show_more_ratings {
	border: 1px solid var(--brand);
	border-radius: 3px;
	color: var(--brand);
	display: block;
	font-size: 20px;
	padding: 10px;
	text-align: center;
	width: 100%;
	margin-top:20px;
}
#backend .kundenservice #popular_stations h3 {
	font-size:22px;
}
#backend .kundenservice #popular_stations a {
	color:#333;
	text-decoration: underline;
	display: block;
	margin-bottom:10px;
}
#backend .kundenservice .testimonials .title {
	background-color: var(--brand);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	padding: 10px 20px;
}
#backend .kundenservice .testimonials .customer_rating {
	margin-bottom:20px;
}
#backend .kundenservice .testimonials .customer_rating .total .total_text {
	font-size:22px;
}
#backend .kundenservice .testimonials .customer_rating .total .rating_stars i {
	font-size:22px;
	line-height: 34px;
}
#backend .kundenservice .testimonials .customer_rating .total {
	margin-bottom:20px;
}
#backend .kundenservice #continue_to_vehicle_selection {
	font-size:20px;
}
#backend .kundenservice .col-5 {
	width:20%;
	padding-right:15px;
	padding-left:15px;
	float:left;
}
#backend .kundenservice .breadcrumb a {
	color: #333;
	text-decoration: underline;
}
#backend .kundenservice .select_cities a {
	color: #333;
	text-decoration: underline;
}
#backend .kundenservice .vehicle_class {
	border: 1px solid #333;
	height: 150px;
	padding:10px;
	position:relative;
	color:#333;
	margin-bottom:20px;
	text-align:center;
}
#backend .kundenservice .vehicle_class .inner_container {
	position:absolute;
	bottom:0;
	left:0;right:0;
}
#backend .kundenservice .vehicle_class.active .inner_container p {
	color:var(--brand) !important;
}
#backend .kundenservice .vehicle_class .inner_container .vehicle_class_name {
	font-weight:bold;
	font-size:18px;
	color:#454545;
}

#backend .kundenservice .vehicle_class img {
	margin-bottom: 10px;
}

#backend .kundenservice .vehicle_class img.anhaenger {
	width: 40%;
}
#backend .kundenservice .vehicle_class img.auflieger {
	width: 68%;
}
#backend .kundenservice .vehicle_class img.busse {
	width: 85%;
}
#backend .kundenservice .vehicle_class img.kuehlfahrzeuge {
	width: 52%;
}
#backend .kundenservice .vehicle_class img.lkws {
	width: 52%;
}
#backend .kundenservice .vehicle_class img.sattelzugmaschine {
	width: 40%;
}

#backend .kundenservice .vehicle_class.active {
	color:var(--brand);
}
#backend .kundenservice .vehicle_class .checkbox {
	position:absolute;
	right:0;
}
#backend #detailsRatingDialog .panel {
	margin-top:20px
}
#backend #detailsRatingDialog .panel-heading {
	background:#fff;
	color:#333;
	font-weight:bold;
	border-bottom:2px solid #ddd;
	font-size:17px;
	padding-top:15px;
	padding-bottom:15px;
}
#backend #detailsRatingDialog {
	text-align: left;
}
#backend #detailsRatingDialog .panel-body {
	padding:20px;
}
#backend #detailsRatingDialog .panel-body p {
	margin-bottom:3px;
}
#backend #detailsRatingDialog .modal-footer .btn {
	padding:4px 0;
}

#backend #select2-rek-reason-results li {
	padding-left:12px;
}

/** styles taken from web page */

.nav > li > a {
	color: var(--brand);
}
#lkwStats .stats {
	color: var(--brand);
	font-size: 16px;
	font-weight: bold;
}
#lkwStats h3 {
	border-bottom: 2px solid var(--brand);
	color: var(--brand);
	font-weight: bold;
	padding: 0 0 15px;
}
#lkwStats .bg-img {
	background: transparent url(../img/img-stats.jpg) repeat scroll 0 0;
    border-radius: 5px !important;
    background-repeat: no-repeat !important;
    margin-top: 65px;
    height: 182px !important;
}
.height300 {
	height: 300px;
}
#lkwStats .row:first-child {
	border: 1px solid #eee;
	border-radius: 5px;
}

/* Modern LKW Stats Section */
#lkwStats {
    padding: 60px 0;
    background: transparent;
    position: relative;
}

/* Decorative line removed for cleaner design */

#lkwStats .row:first-child {
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
}

/* .bg-img class removed as the element is no longer used */

#lkwStats .bg-img-tablet {
    border-radius: 16px 16px 0 0 !important;
    overflow: hidden;
}

#lkwStats .bg-img-tablet {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f8fafc;
    padding: 20px;
}

#lkwStats .bg-img-tablet img {
    max-width: 200px;
    max-height: 120px;
    width: auto;
    height: auto;
    object-fit: contain;
    object-position: center;
    transition: transform 0.3s ease;
}

#lkwStats .row:first-child:hover .bg-img-tablet img {
    transform: scale(1.05);
}

/* Override fixed heights inside lkwStats to avoid clipping */
#lkwStats .height300 {
    height: auto !important;
    min-height: 320px;
}

#lkwStats .col-lg-9, #lkwStats .col-xs-8 {
    padding: 32px 40px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

@media (max-width: 1199px) {
    #lkwStats .col-lg-9, #lkwStats .col-xs-8 {
        padding: 24px 20px;
    }
}

#lkwStats h3 {
    color: var(--text);
    font-weight: 700;
    font-size: 28px;
    padding: 0;
    margin: 0 0 20px 0;
    border: none;
    position: relative;
    line-height: 1.3;
}

#lkwStats h3::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 60px;
    height: 4px;
    background: linear-gradient(90deg, var(--brand) 0%, var(--ring) 100%);
    border-radius: 2px;
}

#lkwStats p {
    color: var(--muted);
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 24px;
    text-align: justify;
}

#lkwStats .col-lg-9 p,
#lkwStats .col-xs-8 p {
    margin-bottom: 16px;
}

#lkwStats .col-lg-9 p:last-of-type,
#lkwStats .col-xs-8 p:last-of-type {
    margin-bottom: 0;
}

#lkwStats .stats {
    color: var(--brand);
    font-weight: 700;
    font-size: 18px;
    line-height: 1.4;
    margin: 16px 0;
    padding: 12px 0;
    border-left: 4px solid var(--ring);
    padding-left: 16px;
    background: linear-gradient(90deg, rgba(110, 201, 133, 0.1) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
}

/* Logo styling within lkwStats section */
#lkwStats img[src*="lkw-logo"] {
    max-width: 280px !important;
    width: auto !important;
    height: auto !important;
    margin: 20px 0 !important;
    border-radius: 8px;
    transition: transform 0.3s ease, filter 0.3s ease;
}

#lkwStats img[src*="lkw-logo"]:hover {
    transform: scale(1.02);
    filter: brightness(1.05);
}

/* Ensure text doesn't get truncated */
#lkwStats .col-lg-9, #lkwStats .col-xs-8 {
    padding: 32px 40px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    word-wrap: break-word;
    overflow: visible;
    min-height: auto;
}

/* Fix for portal-section nested inside lkwStats */
#lkwStats .portal-section {
    width: 100%;
    margin: 0;
}

#lkwStats .portal-section .container {
    padding: 0;
    margin: 0;
    width: 100%;
    max-width: none;
}

/* Fix for any nested .container from CMS content inside lkwStats */
#lkwStats .col-md-6 .container {
    padding: 0;
    margin: 0;
    width: 100%;
    max-width: none;
}

#lkwStats .portal-section p {
    color: var(--muted);
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 16px;
    text-align: left;
    word-break: break-word;
    hyphens: auto;
}

#lkwStats .portal-section p strong {
    color: var(--brand);
    font-weight: 600;
}

/* Responsive adjustments */
@media (max-width: 1199px) {
    #lkwStats {
        padding: 40px 0;
    }

    #lkwStats .bg-img {
        border-radius: 16px 16px 0 0 !important;
        min-height: 240px;
    }

    #lkwStats .col-lg-9, #lkwStats .col-xs-8 {
        padding: 24px 32px;
    }

    #lkwStats h3 {
        font-size: 24px;
    }
}

@media (max-width: 768px) {
    #lkwStats {
        padding: 32px 0;
    }

    #lkwStats .col-lg-9, #lkwStats .col-xs-8 {
        padding: 20px 24px;
    }

    #lkwStats h3 {
        font-size: 22px;
        margin-bottom: 16px;
    }

    #lkwStats .stats {
        font-size: 16px;
        margin: 12px 0;
        padding-left: 12px;
    }
}

#home .panel-heading.accordion-toggle:hover a {
	color: var(--brand);
	text-decoration: none;
}
#home .panel-default > .panel-heading {
	background-color: #fff;
	border-color: #ddd;
	color: #444;
}
section.content h3.title, .heading3.title {
	color: #444;
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 15px;
	margin-top: 0;
}
#tabContentHomepage .tab-content span.header-link {
	display: block;
	font-weight: bold;
	padding-bottom: 10px;
	padding-top: 10px;
}
.heading3 {
	font-size: 24px;
	line-height: 26px;
	margin-bottom: 10px;
	margin-top: 20px;
}
#tabContentHomepage .tab-content ul.dashed li {
	border-bottom: 1px dashed #ccc;
}
#tabContentHomepage .tab-content ul li {
	margin-bottom: 5px;
	padding-bottom: 5px;
}
#tabContentHomepage .tab-content a {
	color: #444;
}
#home .panel-heading {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	padding: 10px 15px;
}
#tabContentHomepage .panel-body {
	border-image: none;
	border: 1px solid #ddd;
	border-top: none;
}
#tabContentHomepage .panel-success > .panel-heading {
	background-color: #f7f7f7;
	border: none !important;
}
#tabContentHomepage .nav-tabs {
	cursor: auto;
}
#tabContentHomepage .nav.nav-tabs li:first-child {
	margin-left: 10px;
}
#tabContentHomepage .panel-success {
	border-color: transparent;
	box-shadow: 0 0 0 rgba(0, 0, 0, 0.05);
	border: none;
}
#tabContentHomepage .nav-tabs > li, .wrapper .nav-tabs > li {
	margin-bottom: -2px;
}
#tabContentHomepage .panel-heading {
	/* border-bottom: medium none; */
	padding-bottom: 0;
	padding-left: 0;
	padding-right: 0;
}

.checkbox label::after {
	top: -1px !important;
}

.extras .features .select-box {
	float: right;
	position: relative;
	top: 4px;
	z-index: 5;
}
.extras .checkbox label::after {
	color: var(--brand);
	content: "";
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	height: 17px;
	left: 21px;
	margin-left: -20px;
	padding-left: 0;
	padding-top: 0;
	position: absolute;
	top: 0;
	width: 17px;
}

.extras .checkbox label::before {
	background-color: #fff;
	border: 1px solid var(--brand);
	border-radius: 3px;
	content: "";
	cursor: pointer;
	display: inline-block;
	height: 14px;
	left: 20px;
	margin-left: -20px;
	position: absolute;
	top: 4px;
	transition: border 0.15s ease-in-out 0s, color 0.15s ease-in-out 0s;
	width: 14px;
}
.extras .features .checkbox label {
	display: inline-block;
	width: 135px;
}
.extras .features .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 25px;
}
.extras .features .select2-container .select2-selection--single {
	height: 25px;
}
.panel-result > .panel-body select {
	-moz-appearance: none;
	padding-left: 35px;
	position: relative;
}


/** end styles taken from website **/


.kundendaten #help-form-group{
	display:block !important;
}
@media (min-width: 1200px) {
	.w-20 {
		width: 20%;
	}

	.w-40 {
		width: 40%;
	}

	.w-59 {
		width: 59%;
	}

	.w-33 {
		width: 33%;
	}

	.w-66 {
		width: 66%;
	}
}
@media screen and (max-width: 1200px) {
	#filtering .checkbox:hover input[type="checkbox"].styled:checked + label:after {
		font-family: 'FontAwesome';
		content: "\f00c";
		font-size: 13px;
		cursor: pointer;
		color: green;
		left: 36px;
	}

	#filtering .checkbox.checked:hover label:before  {
		border: 1px solid var(--brand);
	}

	#filtering .checkbox.checked:hover {
		background-color: #dbe3cc;
		color: #000;
	}

	.fs-tablet-18 {
		font-size:18px !important;
	}

	.pl-tablet-0 {
		padding-left: 0 !important;
	}

	.isForTablet .default {
		width: 100%;
		padding: 5px 25px;
	}

	a:hover, a:active, a:focus {
		outline: 0 none;
	}
	.isForTablet .container {
		width:768px !important;
	}
	.isForTablet .md-text-center {
		text-align: center;
	}
	.isForTablet .w-70.ignore-w-70 {
		width:inherit;
	}

	.isForTablet .fs-md-20 {
		font-size:20px;
	}
	.isForTablet .fs-md-19 {
		font-size:19px;
	}

	.isForTablet .fs-md-13 {
		font-size:13px;
	}
	.isForTablet .ml-md-20 {
		margin-left:20px;
	}
	.isForTablet .ml-md-0-i {
		margin-left:0 !important;
	}
	.isForTablet .mb-md-0 {
		margin-bottom:0;
	}

	.isForTablet .mt-md-10 {
		margin-top:10px;
	}
	.isForTablet .pr-md-0 {
		padding-right:0;
	}
	.isForTablet .pr-md-20-i {
		padding-right:20px !important;
	}
	.isForTablet .pl-md-20-i {
		padding-left:20px !important;
	}
	.isForTablet .pl-md-20 {
		padding-left:20px;
	}
	.isForTablet .pl-md-0-i {
		padding-left:0 !important;
	}
	.isForTablet .pl-md-0 {
		padding-left:0;
	}

	.isForTablet .pr-md-0-i {
		padding-right:0 !important;
	}
	.isForTablet .pr-md-0 {
		padding-right:0;
	}
	.isForTablet .fs-14-md {
		font-size:14px !important;
	}
	.isForTablet .fs-30-md {
		font-size:30px !important;
	}

	.isForTablet .tablet_station_container {
		width:100% !important
	}
	.isForTablet .tablet_station_container .select2-container {
		width:100% !important
	}

	.isForTablet .panel-result > .panel-body .price {
		font-size:25px;
	}
	.isForTablet .panel-result > .panel-body ul.basics > li {
		font-size: 10px;
	}

	.isForTablet #search-results .panel-result > .panel-body .btn-red {
		width:134px;
	}

	.isForTablet #footer_tablet {
		padding-bottom:20px;
		min-width: 768px;
	}
	.isForTablet #footer_tablet .box.box-1{
		max-width:100%;
	}
	.isForTablet #footer_tablet .contact {
		margin-top:20px;
		font-size:14px;
	}
	.isForTablet #footer_tablet .contact .tel {
		margin-top:5px;
	}
	.isForTablet #footer_tablet .social-media-icons a {
		color: #6B7280;
		transition: color 0.2s ease;
		text-decoration: none;
	}
	.isForTablet #footer_tablet .social-media-icons a:hover {
		color: #2d5f41;
	}
	.isForTablet .user_account_modify {
		max-width:150px;
		text-align:right !important;
	}
	.isForTablet .tabletAccount {
		text-align: right;
	}
	.isForTablet .search-data .from {
		float: unset;
		font-size: 15px;
		font-weight: 700;
		line-height: 16px;
		margin-bottom: 10px;
		margin-right: 0;
		width: auto;
	}
	.isForTablet .search-data .to {
		float:unset;
		width:auto;
		margin-bottom:4px;
	}

	.isForTablet .search-data .num-result {
		margin-top:15px;
		float: left;
		font-weight: bold;
		width:auto;
	}
	.isForTablet .search-data .page-title {
		font-weight: bold;
		text-align:center;
		margin-top:25px;
		align-content: center;
		font-size:18px;
	}

	.isForTablet .search-data .search-btn {
		width:100%;
		margin-bottom:10px;
		padding-left: 0;
	}

	.isForTablet .search-data .search-btn-update {
		width:200px;
	}
	.isForTablet .search-data .show-filter-btn,
	.isForTablet .search-data .show-lease-btn {
		width:100%;
	}
	.isForTablet .search-data #show-filter-btn:active,  .isForTablet .search-data #show-filter-btn:focus,
	.isForTablet .search-data #show-lease-btn:active,  .isForTablet .search-data #show-lease-btn:focus {
		background:#fff;
	}
	.isForTablet .search-data .show-filter-btn button.in,
	.isForTablet .search-data .show-lease-btn button.in {
		bottom: -50px;
		height: 50px;
		position: absolute;
	}
	.isForTablet .search-data .show-filter-btn button,
	.isForTablet .search-data .show-lease-btn button {
		position: relative;
		color:var(--brand);
		font-size:14px;
	}
	.isForTablet .search-data #show-filter-btn .showFilter,
	.isForTablet .search-data #show-lease-btn .showLease {
		display:inline;
	}

	.isForTablet .search-data #show-filter-btn.in .showFilter,
	.isForTablet .search-data #show-lease-btn.in .showLease {
		display:none;
	}
	.isForTablet .search-data #show-filter-btn .hideFilter,
	.isForTablet .search-data #show-lease-btn .hideLease {
		display:none;
	}
	.isForTablet .search-data #show-filter-btn.in .hideFilter,
	.isForTablet .search-data #show-lease-btn.in .hideLease {
		display:inline;
	}
	.isForTablet #filterContent,
	.isForTablet #leaseContent {
		background:#fff;
		color:#333;
		position:relative;
		padding-top:10px;
	}
	.isForTablet #leaseContent {
		border:1px solid #ddd;
		margin-bottom: 10px;
		margin-top: 0;
		border-radius: 0 0 4px 4px;
		border-top:none;
		padding: 10px 15px;
	}

	.isForTablet #filterResultsButton {
		width: 245px;
		padding-top:5px;
		padding-bottom:5px;
	}
	.isForTablet #filterContent .topContainer,
	.isForTablet #leaseContent .topContainer {
		background: #fff none repeat scroll 0 0;
		height: 20px;
		left: 0;
		position: absolute;
		right: 0;
		top: -16px;
		z-index: 10;
		border-right: 1px solid #ddd;
		border-left: 1px solid #ddd;
	}
	.isForTablet #leaseContent .topContainer {
		left:-1px;
		right:-1px;
		top:-28px;
		height:30px;
	}

	.isForTablet .search-data .edit ul.search {
		width:500px;
	}
	.isForTablet .search-data .edit ul.search li {
		margin-bottom:5px;
	}
	.isForTablet #serviceSlideIn {
		left: -280px;
		position: fixed;
		top: 205px;
		z-index: 10;
	}
	.isForTablet #serviceSlideInTrigger.in .fa-angle-double-down {
		display:none;
	}
	.isForTablet #serviceSlideInTrigger.in .fa-angle-double-up {
		display:inline;
	}
	.isForTablet #serviceSlideInTrigger .fa-angle-double-up {
		display:none;
	}

	.isForTablet #serviceSlideIn #serviceSlideInContent {
		background: #fff none repeat scroll 0 0;
		height: 270px;
		padding: 20px 35px;
		width: 280px;
	}

	.isForTablet #serviceSlideIn #serviceSlideInContent .tel {
		color:var(--brand);
		font-size:15px;
		margin-bottom:0;
	}
	.isForTablet #serviceSlideIn #serviceSlideInContent .phone {
		font-size: 25px;
		font-weight: bold;
		margin-bottom: 0;
	}
	.isForTablet #serviceSlideIn #serviceSlideInContent .time {
		font-weight:bold;
		font-size:15px;
	}

	.isForTablet #serviceSlideIn #serviceSlideInContent .code strong {
		font-size:17px;
	}

	.isForTablet #serviceSlideIn #serviceSlideInTrigger {
		background: var(--brand) none repeat scroll 0 0;
		border-radius: 0 0 5px 5px;
		color: #fff;
		cursor: pointer;
		padding: 5px 0;
		position: absolute;
		right: -155px;
		text-align: center;
		top: 115px;
		width: 270px;
		-webkit-transform: rotate(-90deg);
		-moz-transform: rotate(-90deg);
		-o-transform: rotate(-90deg);
		-ms-transform: rotate(-90deg);
		transform: rotate(-90deg);
	}
	.isForTablet #serviceSlideIn #serviceSlideInTrigger p {
		height: 30px;
		line-height: 30px;
		margin: 0;
	}

	.isForTablet #filtering {
		border:1px solid #ddd;
		margin-bottom: 0;
		margin-top: 0;
		padding-top: 0px;
		height:100%;
		border-radius: 0 0 4px 4px;
	}
	.isForTablet #filtering .panel-group {
		margin-bottom:0;
	}
	.isForTablet #filtering .sub-group {
		font-size:12px;
	}
	.isForTablet #filtering .panel:nth-child(2n) {
		background:#fff;
	}
	.isForTablet #filtering #filter {
		height:100%;
	}

	#filtering .panel-body {
		margin-left: -10px;
		margin-right: -10px;
	}

	#filtering .panel-heading {
		margin-left: -10px;
		margin-right: -10px;
	}

	.isForTablet #filtering .panel-body .form-group .sub-group .checkbox {
		margin-bottom:10px;
	}
	#filtering .panel-body .form-group {
		margin-top: 10px;
	}
	.isForTablet #filtering .panel-heading {
		padding:5px 20px;
	}
	.isForTablet #filter > div > .col-xs-4 {
		border-right: 1px solid #ddd;
		padding-left: 5px;
		padding-right: 5px;
		padding-top:5px;
		height:100%;
		background:#fff;
	}

	.isForTablet #filter > div > .col-xs-4:last-child {
		border-right:none;
	}

	.isForTablet .extras .panel-result > .panel-body label {
		font-weight:400;
	}
	.isForTablet .extras .checkbox label::before {
		height:13px;
	}
	.isForTablet .extras #sub-group-2 {
		margin-bottom:0;
	}
	.isForTablet .extras #extrasControlSections {
		height:100px;
		padding-top:0;
		padding-bottom:0;
	}
	.isForTablet .extras #extrasControlSections #submit_form {

	}
	.isForTablet .extras #extrasControlSections .control_section {
		border-right:1px solid #ddd;
		height:100px;
	}
	.isForTablet .extras #extrasControlSections .control_section.section1 {
		line-height:100px;
		width:300px;
	}
	.isForTablet .extras #extrasControlSections .control_section.section2 {
		padding-right: 20px;
		width: 168px;
		padding-top:20px;
	}
	.isForTablet .extras #extrasControlSections .control_section.section3 {
		border-right: medium none;
		padding-top: 30px;
		text-align: center;
		width: 300px;
	}
	.isForTablet .vehicle-details {
		font-size: 13px;
		margin-top: 38px;
	}
	.isForTablet .vehicle {
		margin-bottom:10px;
	}
	.isForTablet .vehicle-img {
		width:auto;
		height:auto;
	}
	.isForTablet .anmietortContainer {
		margin-bottom:10px;
	}
	.isForTablet .anmietortContainer h3, .isForTablet .rueckgabeortContainer h3 {
		font-weight:bold;
		font-size:16px;
		margin-bottom:0;
	}
	#leaseContent .ur-choice {
		padding-top:0;
	}

	.isForTablet #country-form-group .select2-container {
		width:100% !important;
	}
	.isForTablet #pay-form-group .select2-container {
		width:100% !important;
	}
	.isForTablet .dont-forget {
		font-size:15px;
	}
	.isForTablet #res-attention {
		width: 500px;
		float:left;
	}

	.isForTablet #res-mietpreis {
		padding-left:20px;
		width:305px;
		margin-top:35px;
		float:right;
	}
	#reservationDataTablet {
		border: 1px solid #e7e7e7;
		margin-bottom:20px;
	}

	.isForTablet #reservationDataTablet > .row {
		margin-left:0;
		margin-right:0;
		padding-top:20px;
		padding-bottom:20px;
		border-bottom:1px solid #e7e7e7;
	}
	.isForTablet #reservationDataTablet .vehicle {
		margin-top:10px;
	}
	.isForTablet #reservationDataTablet .persons {
		margin-top:75px;
	}
	.isForTablet #reservationDataTablet ul.pointed > li::before {
		top:6px;
	}
	.isForTablet #reservationDataTablet .dont-forget {
		margin-top:0;
		border:none;
		border-radius:0;
		box-shadow:none;
	}

	/** home **/
	.isForTablet #navHomeTablet {
		position:absolute;
		right:0;
		z-index:10;
	}

	.isForTablet #navHomeTablet .btn-loginarea {
		background: transparent none repeat scroll 0 0;
		color: #fff;
		font-size: 13px;
		margin-right: 15px;
		padding: 6px 0;
	}
	.isForTablet #navHomeTablet .btn-loginarea:last-child {
		margin-right:0;
	}
	.isForTablet #home .parallax-mirror {
		width:100% !important;
	}
	.isForTablet #home .parallax-mirror img.parallax-slider {
		left:0 !important;
	}
	#home.isForTablet {
		min-width:768px !important;
	}
	#home.isForTablet #contentAccordion1 h2 {
		font-size: 26px;
		text-align: left;
	}
	.isForTablet .colorGreen {
		color: var(--brand) !important;
	}
	#home .panel-heading.accordion-toggle a:focus {
		color:var(--brand);
	}
	#home #lkwStats .bg-img-tablet {
		border-bottom-left-radius: 5px;
		border-top-left-radius: 5px;
	}
	#home #secondFooter a {
		color: var(--muted);
	}
	#home #secondFooter a:hover {
		color: var(--brand);
	}
	#home #secondFooter .heading3 {
		color: var(--brand);
	}
	#home .rueckgabezeit .select2-container {
		width:130px !important;
	}
	#home .anmietzeit .select2-container {
		width:130px !important;
	}
	#home .views {
		display: none;
		width:100%;
		position:absolute;
		z-index:15;
		background:#fff;
	}
	#home  .frontpage-header .search-box .views .tab-content {
		padding-right:0 !important;
	}
	#home  .frontpage-header .search-box .views .grey-box {
		background:#fff;
	}
	#home .views .tab-pane {
		padding: 0 20px;
	}
	#home .views .btn-no-border-radius {
		border-radius:0;
	}
	.bg-layer {
		display:none;
		position:fixed;
		left:0;
		right:0;
		bottom:0;
		top:0;
		background:#000;
		opacity: 0.8;
		z-index:11;
	}
	.frontpage-header .views .tab-content > .tab-pane .grey-box ul {
		list-style: outside none none;
		margin: 0;
		padding-left: 25px;
		position:relative;
	}
	.frontpage-header .views .tab-content > .tab-pane .grey-box ul > li::before {
		content: "ï€Œ";
		font-family: FontAwesome;
		font-size: 15px;
		left: 0;
		color:var(--brand);
		position: absolute;
	}
	.frontpage-header .views .tab-content > .tab-pane .title {
		color: #444;
		font-size: 18px;
		font-weight: bold;
		line-height: 22px;
		margin-bottom: 10px;
		margin-top: 20px;
	}
	.frontpage-header .views .tab-content > .tab-pane .grey-box .title {
		color: #444;
		font-size: 22px;
		font-weight: 400;
		line-height: 28px;
		margin-bottom: 10px;
		margin-top: 20px;
	}
	.frontpage-header .views .tab-content > .tab-pane .grey-box {
		color:var(--brand);
	}
	.frontpage-header .views .nav-tabs > li > a {
		background-color: #444;
		border: medium none;
		border-radius: 0;
		color: #fff;
		cursor: pointer;
		font-weight: 700;
		margin-right: 0;
		text-align:center;
	}
	.frontpage-header .views .nav-tabs > li > a > .fa {
		background: none;
		border-radius: 0;
		height: auto;
		line-height: inherit;
		margin-right: 5px;
		text-align: center;
		width: auto;
	}
	.frontpage-header .views .nav-tabs > li:hover:not(.active) > a > .fa {
		background: inherit;
	}
	.frontpage-header .views .tab-pane a {
		color: var(--brand);
		cursor:pointer;
	}
	.service_box_background {
		display: none;
		position:fixed;
		left:0;
		right:0;
		bottom:0;
		top:0;
		background:#000;
		opacity:0.7;
		z-index:10;
	}

	.isForTablet ul.search .start-time {
		margin-right:35px !important;
	}

}

@media screen and (max-width: 850px) {


	.header-small .account .user-menu > .bubble {
		right:10px;
	}
	.isForTablet .space_for_service {
	/*margin-left:10px;*/
	}
	.isForTablet #filterResultsButton {
		width: 235px;
	}
	.isForTablet #filtering .sub-group {
		font-size: 12px;
		padding-left: 10px;
	}
	.isForTablet #filter-tablet-5 .panel-body {
		font-size:11px;
	}
}
@media screen and (max-width: 790px) {
	.isForTablet .space_for_service {
		/*margin-left:20px;*/
	}
	.isForTablet #filterResultsButton {
		width: 230px;
	}

}

.bold {
	font-weight: 700 !important;
}
.fs-12 {
	font-size: 12px !important;
}
/* Gregor ende */

#landingpage p {
	clear:both;
}

#editor-content .col-xs-12,
#editor-content .col-sm-12,
#editor-content .col-md-12,
#editor-content .col-lg-12 {
	padding-left: 0px;
	padding-right: 0px;
}

#editor-content {
	padding-left: 20px;
	padding-right: 20px;
}

.tablet-filter-btn {
	top: 295px;
	position: absolute;
	right: 10px;
}

.partner li img{
	max-height: 40px;
}

.equal {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
}

.form-control-input, .select2 {
    padding: 11px;
    height: 47px;
    font-size: 14px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 8px;
    border: 1px solid #d2d8dd;
    color: #495057;
    width: 100%;
}

/* Spezifische Breite für Anmietzeit Select */
.select2-container[style*="width: 126px"] {
    width: 126px !important;
}

.select2-selection {
	border: none !important;
	height: 20px !important;
}

.select2-selection__rendered {
	line-height: normal !important;
}

.txt-grey {
	color: #e4e4e4;
    font-size: 27px;
    line-height: 32.4px;
}

.horizontaldivider {
	width: 120px;
    height: 2px;
    background-color: #e1e1e1;
    display: block;
    margin-top: 10px;
	margin-bottom: 20px;
}

.horizontaldividerEM {
	width: 60px;
    height: 2px;
    background-color: var(--brand);
    display: block;
}

i.fa.bigicon {
	font-size: 32px;
    color: #c3c3c3;
}

.conditions {
}


@keyframes placeHolderShimmer {
	0% {
	  background-position: -800px 0
	}
	100% {
	  background-position: 800px 0
	}
  }
  
  .animated-background {
	animation-duration: 2s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	animation-name: placeHolderShimmer;
	animation-timing-function: linear;
	background-color: #f6f7f8;
	background: linear-gradient(to right, #eeeeee 8%, #bbbbbb 18%, #eeeeee 33%);
	background-size: 800px 104px;
	height: 70px;
	position: relative;
  }

  .progressbar {
	position: relative;
	max-width: 500px;
	width: 100%;
	margin: 30px auto 0;
	height: 30px;
	background: #ffffff;
	overflow: hidden;
  }
  
  span.progress {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 0;
	background: var(--brand);
	transition: all .3s;
  }

  .counter {
    text-align: center;
    font-size: 20pt;
 }

 .counterBefore {
	text-align: center;
    font-size: 20pt;
 }

.frontpage-header .input-group span {
    min-width: 32px;
    padding-left: 3px;
}

.has-error input {
	border-color: #e10000;
}

a:hover {
    text-decoration: none;
}

/* ===== LKW Vermietung Vergleich Section (Natural Style) ===== */
.lkw-comparison-section {
  padding: 40px 0;
  margin: 0;
}

.lkw-comparison-section h2.title {
  font-size: 28px;
  color: #333;
  margin-bottom: 25px;
  font-weight: 600;
  text-align: left;
}

.lkw-comparison-intro-text {
  background: #f8f9fa;
  border-left: 3px solid var(--brand);
  padding: 25px 30px;
  margin-bottom: 35px;
  font-size: 16px;
  line-height: 1.6;
}

.lkw-comparison-intro-text strong {
  color: var(--brand);
  font-weight: 600;
}

.lkw-comparison-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 25px;
  margin-top: 30px;
}

.lkw-comparison-card {
  background: white;
  border: 1px solid #e5e7eb;
  padding: 25px 20px;
  position: relative;
}

.lkw-comparison-card h3 {
  font-size: 20px;
  color: #333;
  margin-bottom: 15px;
  font-weight: 600;
}

.lkw-comparison-card p {
  font-size: 15px;
  color: #555;
  line-height: 1.6;
  margin-bottom: 15px;
}

.lkw-comparison-card strong {
  color: var(--brand);
  font-weight: 600;
}

.lkw-comparison-highlight-box {
  background: #f1f5f9;
  border-left: 2px solid var(--brand);
  padding: 15px 20px;
  margin-top: 15px;
}

.lkw-comparison-highlight-box p {
  margin: 0;
  font-size: 14px;
  color: #444;
  font-weight: 500;
}

.lkw-comparison-feature-list {
  list-style: none;
  margin: 15px 0 0 0;
  padding: 0;
}

.lkw-comparison-feature-list li {
  padding: 6px 0;
  padding-left: 20px;
  position: relative;
  color: #555;
  font-size: 14px;
  line-height: 1.5;
}

.lkw-comparison-feature-list li::before {
  content: '•';
  position: absolute;
  left: 0;
  color: var(--brand);
  font-weight: bold;
  font-size: 16px;
}

.lkw-comparison-cta-button {
  display: inline-block;
  margin-top: 20px;
  padding: 12px 24px;
  background: var(--brand);
  color: white;
  text-decoration: none;
  font-weight: 600;
  font-size: 14px;
  transition: background-color 0.2s ease;
}

.lkw-comparison-cta-button:hover {
  background: var(--brand-600);
  color: white;
  text-decoration: none;
}

/* ===== Miet-Tarife Section (Simplified) ===== */
.tariff-intro-section {
  background: #f8f9fa;
  padding: 30px 25px;
  margin-bottom: 25px;
  border-left: 3px solid var(--brand);
}

.tariff-intro-section .intro-border {
  margin-bottom: 20px;
}

.tariff-intro-section .intro-subtitle {
  font-size: 16px;
  color: #666;
  font-weight: 500;
  margin-bottom: 15px;
}

.tariff-intro-section .intro-content {
  font-size: 15px;
  color: #555;
  line-height: 1.6;
}

.tariff-intro-section .highlight-text {
  background: #e8f5d8;
  padding: 2px 4px;
  font-weight: 600;
  color: var(--brand);
}

@media (max-width: 768px) {
  .lkw-comparison-section h2.title {
    font-size: 24px;
  }

  .lkw-comparison-intro-text {
    padding: 20px 15px;
    font-size: 15px;
  }

  .lkw-comparison-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .lkw-comparison-card {
    padding: 20px 15px;
  }

  .tariff-intro-section {
    padding: 25px 15px;
  }
}

/* ===== Sticky Search Data Header ===== */
.sticky-search-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: white;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  z-index: 1030;
  padding: 10px 0;
  transform: translateY(-100%);
  transition: transform 0.3s ease;
}

.sticky-search-header.visible {
  transform: translateY(0);
}

.sticky-search-header .search-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 15px;
}

.sticky-search-header .location-info {
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 14px;
  color: var(--text);
}

.sticky-search-header .location-info .from,
.sticky-search-header .location-info .to {
  font-weight: 600;
}

.sticky-search-header .location-info .time {
  color: var(--muted);
  font-size: 12px;
}

.sticky-search-header .adjust-search-btn {
  background: var(--brand);
  color: white;
  border: none;
  border-radius: 6px;
  padding: 8px 16px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}

.sticky-search-header .adjust-search-btn:hover {
  background: var(--brand-600);
  transform: translateY(-1px);
}

/* ===== Sticky Sidebar ===== */
.space_for_service {
  display: flex;
  flex-wrap: wrap;
}

.sidebar-sticky {
  position: sticky;
  top: 20px;
  align-self: flex-start;
}

.sidebar-sticky aside {
  max-height: calc(100vh - 40px);
  overflow-y: auto;
  padding-right: 10px;
}


.sidebar-sticky aside::-webkit-scrollbar {
  width: 4px;
}

.sidebar-sticky aside::-webkit-scrollbar-track {
  background: transparent;
}

.sidebar-sticky aside::-webkit-scrollbar-thumb {
  background: var(--card-border);
  border-radius: 2px;
}

.sidebar-sticky aside::-webkit-scrollbar-thumb:hover {
  background: var(--muted);
}

/* When sticky header is visible, adjust top position */
body.sticky-header-visible .sidebar-sticky {
  top: 80px;
}

body.sticky-header-visible .sidebar-sticky aside {
  max-height: calc(100vh - 100px);
  width: 103%;
}

/* ===== Scroll to Top Button ===== */
.scroll-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 50px;
  height: 50px;
  background: var(--brand);
  color: white;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.scroll-to-top.visible {
  opacity: 1;
  visibility: visible;
}

.scroll-to-top:hover {
  background: var(--brand-600);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
}

.scroll-to-top:active {
  transform: translateY(0);
}

/* ===== Responsive Adjustments ===== */
@media (max-width: 991px) {
  .sticky-search-header {
    display: none !important;
  }

  .sidebar-sticky {
    position: static;
    max-height: none;
    overflow-y: visible;
    padding-right: 0;
  }
}

@media (max-width: 768px) {
  .scroll-to-top {
    bottom: 20px;
    right: 20px;
    width: 45px;
    height: 45px;
    font-size: 16px;
  }
}

/* Ensure main content has proper spacing when sticky header is visible */
body.sticky-header-visible main {
  padding-top: 70px;
}

/* ===== Filter Compact Mode (Scroll-based) ===== */
.filter-compact #filter-head-3,
.filter-compact #filter-head-4,
.filter-compact #filter-head-8 {
  display: none !important;
}

.filter-compact #filter-3,
.filter-compact #filter-4,
.filter-compact #filter-8 {
  display: none !important;
}

/* Hide the entire panel when heading is targeted */
.filter-compact #filter-head-3:is(.panel-heading) .panel,
.filter-compact #filter-head-4:is(.panel-heading) .panel,
.filter-compact #filter-head-8:is(.panel-heading) .panel {
  display: none !important;
}

/* Alternative: Target panels by their child heading IDs */
.filter-compact .panel:has(#filter-head-3),
.filter-compact .panel:has(#filter-head-4),
.filter-compact .panel:has(#filter-head-8) {
  display: none !important;
  transition: all 0.3s ease;
}

.filter-compact-hint {
  display: none;
  padding: 12px 20px;
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 4px;
  margin: 10px 0;
  text-align: center;
  font-size: 13px;
  color: #6c757d;
  cursor: pointer;
  transition: all 0.3s ease;
}

.filter-compact .filter-compact-hint {
  display: block;
}

.filter-compact-hint:hover {
  background: #e9ecef;
  color: #495057;
}

.filter-compact-hint i {
  margin-left: 5px;
  transition: transform 0.3s ease;
}

.filter-compact-hint:hover i {
  transform: translateY(-2px);
}

/* Smooth transitions for filter panels */
#filtering .panel {
  transition: all 0.3s ease;
}

/* Compact mode adjustments for better spacing */
.filter-compact #filtering {
  margin-bottom: 20px;
}

.filter-compact .sidebar-sticky aside {
  max-height: calc(100vh - 60px);
}
/* ===== Home Intro (DB Text) ===== */
#homeIntro .home-intro-content{
  background: #F1F5F9;
  border: none;
  border-radius: 0;
  padding: 24px 0;
  box-shadow: none;
  color: var(--text);
  line-height: 1.7;
}
#homeIntro .home-intro-content h1,
#homeIntro .home-intro-content h2,
#homeIntro .home-intro-content h3{
  color: var(--brand);
  margin-top: 0;
  font-weight: 700;
}
#homeIntro .home-intro-content p{ margin: 0 0 12px; }
#homeIntro .home-intro-content ul{ margin: 0 0 12px 18px; }
#homeIntro .home-intro-content li{ margin: 4px 0; }
#homeIntro .home-intro-content a{ color: var(--brand); text-decoration: none; }
#homeIntro .home-intro-content a:hover{ text-decoration: underline; }
/* HomeIntro refinements (screenshot-like card) */
#homeIntro { padding-top: 10px; padding-bottom: 10px; }
#homeIntro .home-intro-content{
  margin: 8px 0 24px;
  border-left: 4px solid var(--brand);
  padding-left: 20px;
}
#homeIntro .home-intro-content h1,
#homeIntro .home-intro-content h2,
#homeIntro .home-intro-content h3{ font-size: 22px; line-height: 1.3; }
#homeIntro .home-intro-content p{ color:#4b5563; }

/* Three Column Feature Layout */
#homeIntro .intro-features {
  margin-top: 30px;
  margin-bottom: 20px;
}

#homeIntro .feature-card {
  background: var(--card);
  border: 1px solid var(--card-border);
  padding: 24px;
  margin-bottom: 20px;
}


#homeIntro .feature-card h4 {
  color: var(--brand);
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 16px;
  margin-top: 0;
}

#homeIntro .feature-card p {
  color: var(--text);
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 16px;
}

#homeIntro .feature-list {
  list-style: none;
  padding: 0;
  margin: 16px 0;
}

#homeIntro .feature-list li {
  color: var(--text);
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 8px;
  padding-left: 20px;
  position: relative;
}

#homeIntro .feature-list li:before {
  content: "•";
  color: var(--brand);
  font-weight: bold;
  position: absolute;
  left: 0;
}

#homeIntro .highlight-box {
  padding: 16px;
  margin: 16px 0;
  font-size: 13px;
  line-height: 1.5;
}

#homeIntro .highlight-box.blue {
  background-color: #F1F5F9;
  border-left: 4px solid #14b8a6;
  color: #585658;
}

#homeIntro .highlight-box.green {
  background-color: #F1F5F9;
  border-left: 4px solid #14b8a6;
  color: #585658;
}

#homeIntro .highlight-box strong {
  font-weight: 600;
  color: #376B50;
}

#homeIntro .cta-button {
  margin-top: 20px;
}

#homeIntro .cta-button .btn {
  background: var(--brand);
  border-color: var(--brand);
  color: white;
  font-weight: 600;
  padding: 12px 24px;
  text-decoration: none;
  transition: all 0.2s ease;
}

#homeIntro .cta-button .btn:hover {
  background: var(--brand-600);
  border-color: var(--brand-600);
}

/* Responsive adjustments */
@media (max-width: 991px) {
  #homeIntro .intro-features .col-md-4 {
    margin-bottom: 20px;
  }

  #homeIntro .feature-card {
    height: auto;
  }
}

/* ===== Advanced Search Options Styling ===== */
#advancedSearchOptions .row {
  display: flex;
  align-items: flex-end;
  gap: 15px;
}

#advancedSearchOptions .col-xs-6.col-sm-6.col-md-6.col-lg-6.pr-10 {
  flex: 0 0 30%; /* Smaller width for birthday field */
  max-width: 30%;
  padding-left: 0px !important;
}

#advancedSearchOptions .col-xs-6.col-sm-6.col-md-6.col-lg-6.pl-10 {
  flex: 0 0 65%; /* Larger width for PLZ and radius */
  max-width: 65%;
}

#advancedSearchOptions .form-group.birthday .geburtsdatum input {
  width: 100%;
}

#advancedSearchOptions .form-group.location-search .row {
  margin: 0;
}

#advancedSearchOptions .form-group.location-search .col-xs-5 {
  flex: 0 0 45%; /* Wider PLZ field */
  max-width: 45%;
}

#advancedSearchOptions .form-group.location-search .col-xs-7 {
  flex: 0 0 55%; /* Adjust radius field accordingly */
  max-width: 55%;
}

/* Mobile responsive adjustments for advanced search */
@media (max-width: 767px) {
  #advancedSearchOptions .row {
    flex-direction: column;
    gap: 10px;
  }

  #advancedSearchOptions .col-xs-6.col-sm-6.col-md-6.col-lg-6.pr-10,
  #advancedSearchOptions .col-xs-6.col-sm-6.col-md-6.col-lg-6.pl-10 {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

/* ===== Comprehensive Color Override für Brand Consistency ===== */
/* Override all yellow/orange warning colors */
.text-warning {
  color: var(--brand) !important;
}

.bg-warning {
  background-color: var(--brand) !important;
}

.btn-warning {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: white !important;
}

.alert-warning {
  background-color: var(--ring) !important;
  border-color: var(--brand) !important;
  color: var(--brand-700) !important;
}

/* Override all inline yellow/orange colors */
[style*="rgb(255, 193, 7)"] {
  color: var(--brand) !important;
}

[style*="background: var(--warning"] {
  background: var(--brand) !important;
}

[style*="color: var(--warning"] {
  color: var(--brand) !important;
}

[style*="border-left: 3px solid var(--warning"] {
  border-left-color: var(--brand) !important;
}

/* Force override Font Awesome icon colors */
.fa[style*="color: rgb(255, 193, 7)"],
.fa[style*="color: var(--warning"] {
  color: var(--brand) !important;
}

/* Force override strong text with warning color */
strong[style*="color: rgb(255, 193, 7)"] {
  color: var(--brand) !important;
}

/* Override any remaining CSS variables for warning/yellow */
* {
  --warning: var(--brand) !important;
  --bs-warning: var(--brand) !important;
}

/* Override Bootstrap success colors (green) */
.text-success {
  color: var(--brand) !important;
}

.bg-success {
  background-color: var(--brand) !important;
}

.btn-success {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}

.alert-success {
  background-color: var(--ring) !important;
  border-color: var(--brand) !important;
  color: var(--brand-700) !important;
}

/* Override Font Awesome icons with success colors */
.fa-check {
  color: var(--brand) !important;
}

/* Override any rgb(40, 167, 69) colors - Bootstrap success green */
[style*="rgb(40, 167, 69)"] {
  color: var(--brand) !important;
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}

/* Override authority card with success border */
.authority-card {
  border-left-color: var(--brand) !important;
}

/* Force override success variables */
* {
  --success: var(--brand) !important;
  --bs-success: var(--brand) !important;
  --green: var(--brand) !important;
}

/* Override specific Font Awesome icons */
.fa-phone, .fa-shield {
  color: var(--brand) !important;
}

/* Final catch-all for any remaining success green - only affect colored elements */
.fa[style*="color: rgb(40, 167, 69)"],
i[style*="color: rgb(40, 167, 69)"] {
  color: var(--brand) !important;
}

/* ==========================================================================
   MODERN JQUERY UI TOOLTIP OVERRIDE - Replace Yellow Tooltips
   ========================================================================== */

/* Override jQuery UI tooltip base styles - matching .tip styles from suchergebnisse */
.ui-tooltip {
  padding: 14px 18px !important;
  width: 280px !important;
  max-width: 280px !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15) !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  text-align: left !important;
  white-space: normal !important;
  z-index: 10000 !important;

  /* Modern dark gradient - matching .tip exactly */
  background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #ffffff !important;

  /* Smooth fade-in animation */
  animation: tooltipSlideIn 0.25s ease-out !important;
}

/* Override the yellow highlight state */
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  background: linear-gradient(135deg, #2d5f41 0%, #1e4029 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #ffffff !important;
}

/* Ensure tooltip text is white */
.ui-tooltip,
.ui-tooltip * {
  color: #ffffff !important;
}

/* Style for tooltip links if any */
.ui-tooltip a {
  color: #a7f3d0 !important;
  text-decoration: underline !important;
}

.ui-tooltip a:hover {
  color: #d1fae5 !important;
}

/* Smooth slide-in animation */
@keyframes tooltipSlideIn {
  from {
    opacity: 0;
    transform: translateY(-8px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Responsive adjustments for smaller screens */
@media (max-width: 768px) {
  .ui-tooltip {
    max-width: 280px !important;
    padding: 10px 14px !important;
    font-size: 12px !important;
  }
}

/* ============================================
   MODERNES FLEXBOX LAYOUT FÜR PANEL-BODY
   ============================================ */

/* Haupt-Container: 3-Spalten Flexbox */
.panel-result > .panel-body .result-content {
	display: flex;
	gap: 20px;
	align-items: flex-start;
}

/* SPALTE 1: Fahrzeug (feste Breite) */
.panel-result .vehicle-column {
	flex: 0 0 220px;
	min-width: 220px;
}

.panel-result .vehicle-column .caption {
	margin-bottom: 8px;
}

.panel-result .vehicle-column .caption img {
	width: 100%;
	height: auto;
	border-radius: 4px;
}

.panel-result .vehicle-column .caption .desc {
	background-color: #e0e0e0;
	font-size: 11px;
	line-height: 18px;
	padding: 2px 5px;
	text-align: center;
	border-radius: 0 0 4px 4px;
}

.panel-result .vehicle-column ul.basics {
	margin: 0;
	padding-left: 0;
	font-size: 11px;
	list-style: none;
}

.panel-result .vehicle-column ul.basics li {
	margin-bottom: 2px;
	white-space: nowrap;
	line-height: 1.3;
}

.panel-result .vehicle-column ul.basics li br {
	display: none;
}

/* Allow line break in Laderaum (4th item) */
.panel-result .vehicle-column ul.basics li:nth-child(4) {
	white-space: normal;
}
.panel-result .vehicle-column ul.basics li:nth-child(4) br:first-of-type {
	display: block;
}

/* SPALTE 2: Details (flexibel) */
.panel-result .details-column {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Station-Bereich */
.panel-result .station-row {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}

.panel-result .station-group {
	flex: 1 1 200px;
	min-width: 180px;
}

.panel-result .station-group label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 12px;
	font-weight: 500;
	margin-bottom: 4px;
	color: #333;
}

.panel-result .station-group .map-link {
	font-size: 11px;
	color: #ba0000;
	cursor: pointer;
}

.panel-result .station-group .map-link:hover {
	text-decoration: underline;
}

.panel-result .station-group select {
	width: 100%;
	padding: 6px 8px;
	font-size: 12px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
}

/* Feature-Tags */
.panel-result .feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: flex-start;
}

.panel-result .feature-tag {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	background: #e8f5e9;
	border-radius: 4px;
	font-size: 11px;
	white-space: nowrap;
	color: #2d5a2d;
}

.panel-result .feature-tag::before {
	content: "\f00c";
	font-family: FontAwesome;
	color: var(--brand, #2d8939);
	font-size: 9px;
}

.panel-result .feature-tag.tag-warning {
	background: #fff3e0;
	color: #8a5a00;
}

.panel-result .feature-tag.tag-warning::before {
	content: "\f05a";
	color: #f57c00;
}

.panel-result .feature-tag.tag-info {
	background: #e3f2fd;
	color: #1565c0;
}

.panel-result .feature-tag.tag-info::before {
	content: "\f129";
	color: #1976d2;
}

/* SPALTE 3: Action (feste Breite) */
.panel-result .action-column {
	flex: 0 0 160px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	text-align: right;
}

.panel-result .action-column .price {
	font-size: 28px;
	font-weight: 700;
	color: var(--brand, #2d8939);
	line-height: 1.1;
	margin-bottom: 2px;
}

.panel-result .action-column .price_info {
	font-size: 12px;
	color: #666;
	margin-bottom: 12px;
	display: block;
}

.panel-result .action-column .price_info .fa {
	margin-left: 4px;
}

.panel-result .action-column .btn-red {
	position: static;
	width: 100%;
	padding: 10px 15px;
	font-size: 13px;
	margin-bottom: 8px;
	box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

.panel-result .action-column .details-link {
	width: 100%;
	text-align: center;
}

.panel-result .action-column .details-link a {
	color: #ba0000;
	font-size: 12px;
	text-decoration: none;
}

.panel-result .action-column .details-link a:hover {
	text-decoration: underline;
}

.panel-result .action-column .details-link a::after {
	content: "\f103";
	font-family: FontAwesome;
	margin-left: 5px;
	font-size: 10px;
}

.panel-result .action-column .details-link a[aria-expanded="true"]::after {
	content: "\f102";
}

/* Hide old .tell element */
.panel-result .action-column .tell {
	display: none;
}

/* Hide old details-link in action-column */
.panel-result .action-column .details-link {
	display: none;
}

/* Card Footer Link - am unteren Ende der Card */
.panel-result .card-footer-link {
	text-align: center;
	padding: 10px 15px;
	border-top: 1px solid #eee;
	margin-top: 10px;
}

.panel-result .card-footer-link a {
	color: var(--brand, #2d5f41);
	font-size: 13px;
	text-decoration: none;
	font-weight: 500;
}

.panel-result .card-footer-link a:hover {
	text-decoration: underline;
}

.panel-result .card-footer-link a::after {
	content: "\f107";
	font-family: FontAwesome;
	margin-left: 6px;
	font-size: 12px;
}

.panel-result .card-footer-link a[aria-expanded="true"]::after {
	content: "\f106";
}

/* read-more/read-less Text-Steuerung */
.panel-result .card-footer-link .read-less {
	display: none;
}

.panel-result .card-footer-link a[aria-expanded="true"] .read-more {
	display: none;
}

.panel-result .card-footer-link a[aria-expanded="true"] .read-less {
	display: inline;
}

/* Responsive Anpassungen */
@media (max-width: 992px) {
	.panel-result > .panel-body .result-content {
		gap: 15px;
	}

	.panel-result .vehicle-column {
		flex: 0 0 180px;
		min-width: 180px;
	}

	.panel-result .action-column {
		flex: 0 0 140px;
	}

	.panel-result .action-column .price {
		font-size: 24px;
	}
}

@media (max-width: 768px) {
	.panel-result > .panel-body .result-content {
		flex-wrap: wrap;
	}

	.panel-result .vehicle-column {
		flex: 0 0 100%;
		display: flex;
		gap: 15px;
		align-items: flex-start;
	}

	.panel-result .vehicle-column .caption {
		flex: 0 0 120px;
		margin-bottom: 0;
	}

	.panel-result .vehicle-column ul.basics {
		flex: 1;
	}

	.panel-result .details-column {
		flex: 1 1 100%;
	}

	.panel-result .action-column {
		flex: 0 0 100%;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding-top: 10px;
		border-top: 1px solid #ddd;
	}

	.panel-result .action-column .price {
		font-size: 26px;
	}

	.panel-result .action-column .price_info {
		margin-bottom: 0;
	}

	.panel-result .action-column .btn-red {
		width: auto;
		margin-bottom: 0;
	}

	.panel-result .action-column .details-link {
		display: none;
	}
}

/* ===== Offer Rating System ===== */

/* Rating Badge - Compact display in card */
.offer-rating-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 13px;
    cursor: help;
    margin-top: 12px;
    transition: all 0.2s ease;
}

.offer-rating-badge:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Rating level colors - Wohlwollend/Benevolent palette */
.offer-rating-badge.rating-excellent {
    background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
    color: #1b5e20;
    border: 1px solid #a5d6a7;
}

.offer-rating-badge.rating-very-good {
    background: linear-gradient(135deg, #f1f8e9 0%, #dcedc8 100%);
    color: #33691e;
    border: 1px solid #c5e1a5;
}

.offer-rating-badge.rating-good {
    background: linear-gradient(135deg, #f9fbe7 0%, #f0f4c3 100%);
    color: #558b2f;
    border: 1px solid #dce775;
}

.offer-rating-badge.rating-solid {
    background: linear-gradient(135deg, #fffde7 0%, #fff9c4 100%);
    color: #f9a825;
    border: 1px solid #fff176;
}

.offer-rating-badge.rating-okay {
    background: linear-gradient(135deg, #fff8e1 0%, #ffecb3 100%);
    color: #ff8f00;
    border: 1px solid #ffd54f;
}

.offer-rating-badge.rating-standard {
    background: linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%);
    color: #ef6c00;
    border: 1px solid #ffb74d;
}

/* Score number in badge */
.offer-rating-badge .rating-score {
    font-weight: 700;
    font-size: 14px;
    color: white;
    padding: 3px 8px;
    border-radius: 4px;
    min-width: 32px;
    text-align: center;
}

/* Score backgrounds per rating level */
.offer-rating-badge.rating-excellent .rating-score {
    background: #1b5e20;
}

.offer-rating-badge.rating-very-good .rating-score {
    background: #33691e;
}

.offer-rating-badge.rating-solid .rating-score {
    background: #f9a825;
}

.offer-rating-badge.rating-okay .rating-score {
    background: #ff8f00;
}

.offer-rating-badge.rating-standard .rating-score {
    background: #ef6c00;
}

/* Text in badge */
.offer-rating-badge .rating-text {
    font-weight: 500;
}

/* Info icon */
.offer-rating-badge .fa-info-circle {
    opacity: 0.7;
    font-size: 12px;
}

/* Rating Tooltip - Detailed breakdown on hover */
.rating-tooltip {
    min-width: 420px;
    max-width: 500px;
    padding: 0;
    font-size: 12px;
}

.rating-tooltip-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    background: #f5f5f5;
    border-bottom: 1px solid #e0e0e0;
    border-radius: 4px 4px 0 0;
}

.rating-tooltip-header strong {
    font-size: 13px;
    color: #333;
}

.rating-tooltip-overall {
    font-weight: 700;
    font-size: 14px;
    color: var(--brand);
}

.rating-tooltip-categories {
    display: flex;
    padding: 12px 8px;
    gap: 4px;
}

.rating-category {
    flex: 1;
    text-align: center;
    padding: 0 4px;
    min-width: 0;
}

.rating-category .category-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    margin-bottom: 6px;
}

.rating-category .category-label {
    font-size: 10px;
    font-weight: 600;
    color: #555;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.rating-category .category-score {
    font-weight: 700;
    font-size: 14px;
    color: #333;
}

/* Progress bar for each category */
.rating-category .category-bar {
    height: 5px;
    background: #e0e0e0;
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 6px;
}

.rating-category .category-bar-fill {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

/* Bar colors based on score */
.rating-category .category-bar-fill.excellent {
    background: linear-gradient(90deg, #4caf50, #66bb6a);
}

.rating-category .category-bar-fill.good {
    background: linear-gradient(90deg, #8bc34a, #9ccc65);
}

.rating-category .category-bar-fill.okay {
    background: linear-gradient(90deg, #ffc107, #ffca28);
}

.rating-category .category-bar-fill.poor {
    background: linear-gradient(90deg, #ff9800, #ffa726);
}

/* Detail text under each category */
.rating-category .category-detail {
    font-size: 9px;
    color: #666;
    line-height: 1.3;
    min-height: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Bootstrap Popover customization for rating tooltip */
.popover.rating-popover,
.popover:has(.rating-tooltip) {
    max-width: 520px;
    min-width: 450px;
    width: auto;
    border: none;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    border-radius: 8px;
}

.popover.rating-popover .popover-content,
.popover:has(.rating-tooltip) .popover-content {
    padding: 0;
    overflow: visible;
}

/* Fallback for browsers without :has() support */
.popover {
    max-width: 520px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .offer-rating-badge {
        width: 100%;
        justify-content: center;
        margin-top: 10px;
    }

    .rating-tooltip {
        min-width: 280px;
        max-width: 320px;
    }

    .rating-tooltip-categories {
        flex-wrap: wrap;
    }

    .rating-category {
        flex: 0 0 calc(50% - 4px);
        margin-bottom: 8px;
    }

    .rating-category:last-child {
        flex: 0 0 100%;
    }
}

/* ==========================================================================
   MODERN HOMEPAGE SEARCH FORM (Desktop Only)
   Inspired by search-results.css style - matching brand colors
   ========================================================================== */

/* --- Search Form Container (Hero Section) --- */
.search-box {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(12px);
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.9);
    padding: 24px 28px 20px;
    transition: all 0.3s ease;
}

.search-box:hover {
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15), 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* --- Form Title/Header --- */
.search-box h1.search-hero-title,
.search-box h1 {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: var(--brand, #2d5f41) !important;
    margin: 0 0 20px 0 !important;
    letter-spacing: -0.02em !important;
    text-shadow: none !important;
}

/* --- Tab Navigation (LKW mieten, Transporter mieten, etc.) --- */
.search-box .nav-tabs {
    display: flex !important;
    gap: 4px;
    margin-bottom: 20px;
    border: none !important;
    background: #f0f4f2;
    border-radius: 10px;
    padding: 4px;
}

.search-box .nav-tabs > li {
    flex: 1;
    margin: 0;
    float: none;
}

.search-box .nav-tabs > li > a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px !important;
    border: none !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #5f6368 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none;
    transition: all 0.2s ease;
    white-space: nowrap;
    margin: 0 !important;
}

.search-box .nav-tabs > li > a:hover,
.search-box .nav-tabs > li > a:focus {
    background: rgba(45, 95, 65, 0.1) !important;
    color: var(--brand, #2d5f41) !important;
    border: none !important;
}

.search-box .nav-tabs > li.active > a,
.search-box .nav-tabs > li.active > a:hover,
.search-box .nav-tabs > li.active > a:focus {
    background: var(--brand, #2d5f41) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(45, 95, 65, 0.3);
    border: none !important;
}

.search-box .nav-tabs > li > a i {
    font-size: 14px;
}

/* --- Modern Form Input Groups --- */
.search-box .form-group {
    margin-bottom: 16px;
}

/* --- Form Labels --- */
.search-box label {
    display: block;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #5f6368 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    /* margin-bottom: 6px !important; */
}

/* --- Modern Input Fields --- */
.search-box input.form-control-input,
.search-box input[type="text"] {
    width: 100%;
    padding: 12px 14px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 10px !important;
    font-size: 15px !important;
    font-weight: 500;
    color: #202124 !important;
    background: #f8f9fa !important;
    transition: all 0.2s ease;
    outline: none;
    box-shadow: none !important;
}

.search-box input.form-control-input:hover,
.search-box input[type="text"]:hover {
    border-color: #ccc !important;
    background: #ffffff !important;
}

.search-box input.form-control-input:focus,
.search-box input[type="text"]:focus {
    border-color: var(--brand, #2d5f41) !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(45, 95, 65, 0.12) !important;
}

/* --- Custom SelectBox (jQuery Selectbox) Overrides --- */
.search-box .sbHolder {
    background-color: #f8f9fa !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 10px !important;
    height: 46px !important;
    min-width: 100px;
    width: 100% !important;
}

.search-box .sbHolder:hover {
    border-color: #ccc !important;
    background-color: #ffffff !important;
}

.search-box .sbSelector {
    color: #202124 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 44px !important;
    height: 44px !important;
    padding: 0 14px !important;
    text-indent: 0 !important;
    width: calc(100% - 36px) !important;
}

.search-box .sbSelector:link,
.search-box .sbSelector:visited,
.search-box .sbSelector:hover {
    color: #202124 !important;
}

.search-box .sbToggle {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235f6368' d='M2 4l4 4 4-4'/%3E%3C/svg%3E") no-repeat center center !important;
    width: 36px !important;
    height: 44px !important;
    top: 1px !important;
    right: 4px !important;
}

.search-box .sbToggle:hover {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%232d5f41' d='M2 4l4 4 4-4'/%3E%3C/svg%3E") no-repeat center center !important;
}

.search-box .sbToggleOpen {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%232d5f41' d='M2 8l4-4 4 4'/%3E%3C/svg%3E") no-repeat center center !important;
}

.search-box .sbOptions {
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
    padding: 8px 0 !important;
    top: calc(100% + 4px) !important;
    z-index: 1000 !important;
    max-height: 250px !important;
}

.search-box .sbOptions li {
    padding: 0 !important;
}

.search-box .sbOptions a {
    padding: 10px 16px !important;
    color: #202124 !important;
    font-size: 14px !important;
    border-bottom: none !important;
    transition: all 0.15s ease !important;
}

.search-box .sbOptions a:hover,
.search-box .sbOptions a:focus,
.search-box .sbOptions a.sbFocus {
    background: rgba(45, 95, 65, 0.08) !important;
    color: var(--brand, #2d5f41) !important;
}

/* --- Modern Checkbox/Radio Buttons --- */
.search-box .checkbox.inline {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 8px 14px !important;
    background: #f8f9fa;
    border: 1px solid #e0e0e0;
    border-radius: 20px !important;
    margin: 0 6px 8px 0 !important;
    cursor: pointer;
    transition: all 0.2s ease;
    min-height: auto !important;
    position: relative;
}

.search-box .checkbox.inline:hover {
    background: #ffffff;
    border-color: var(--brand, #2d5f41);
}

.search-box .checkbox.inline:has(input:checked) {
    background: rgba(45, 95, 65, 0.15);
    border-color: var(--brand, #2d5f41);
}

.search-box .checkbox.inline label {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #5f6368 !important;
    text-transform: none !important;
    margin: 0 !important;
    padding-left: 24px !important;
    cursor: pointer;
    position: relative;
    line-height: 18px;
    display: inline-block;
    vertical-align: middle;
}

/* Custom checkbox - hide native input */
.search-box .checkbox.inline input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    pointer-events: none;
}

/* Custom checkbox box */
.search-box .checkbox.inline label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50% !important;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border: 2px solid #ccc;
    border-radius: 4px;
    background: #fff;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

/* Custom checkbox checkmark - CSS border technique */
.search-box .checkbox.inline label::after {
    content: "" !important;
    position: absolute;
    left: 6px;
    top: 50% !important;
    width: 4px;
    height: 8px;
    border: solid transparent;
    border-width: 0 2px 2px 0;
    transform: translateY(-59%) rotate(45deg) !important;
    transition: border-color 0.2s ease;
    z-index: 1;
    pointer-events: none;
}

/* Checked state - box */
.search-box .checkbox.inline input[type="checkbox"]:checked + label::before {
    background: var(--brand, #2d5f41);
    border-color: var(--brand, #2d5f41);
}

/* Checked state - checkmark */
.search-box .checkbox.inline input[type="checkbox"]:checked + label::after {
    border-color: #fff;
}

/* Checked state - label color */
.search-box .checkbox.inline:has(input:checked) label {
    color: var(--brand, #2d5f41) !important;
    font-weight: 600 !important;
}

.search-box .checkbox.inline.title {
    background: transparent !important;
    border: none !important;
    padding: 8px 8px 8px 0 !important;
}

.search-box .checkbox.inline.title label {
    padding-left: 0 !important;
}

.search-box .checkbox.inline.title label::before,
.search-box .checkbox.inline.title label::after {
    display: none !important;
}

.search-box .checkbox.inline.title span {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #5f6368 !important;
}

/* --- Modern Submit Button --- */
.search-box .btn-red,
.search-box button#search {
    width: 100%;
    padding: 14px 24px !important;
    background: linear-gradient(135deg, var(--brand, #2d5f41) 0%, #1e4029 100%) !important;
    border: none !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    box-shadow: 0 4px 12px rgba(45, 95, 65, 0.25) !important;
    text-transform: none;
    letter-spacing: 0;
    height: auto !important;
}

.search-box .btn-red:hover,
.search-box button#search:hover {
    background: linear-gradient(135deg, #1e4029 0%, #0f2115 100%) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(45, 95, 65, 0.35) !important;
}

.search-box .btn-red:active,
.search-box button#search:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(45, 95, 65, 0.2) !important;
}

.search-box .btn-red i,
.search-box button#search i {
    font-size: 14px;
}

/* --- Extended Options Toggle --- */
.search-box .btn-link {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 8px 14px !important;
    background: transparent !important;
    border: 1px dashed #ccc !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #5f6368 !important;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none !important;
}

.search-box .btn-link:hover {
    background: rgba(45, 95, 65, 0.05) !important;
    border-color: var(--brand, #2d5f41) !important;
    color: var(--brand, #2d5f41) !important;
}

/* --- Advanced Options Collapse Section --- */
.search-box #advancedSearchOptions {
    background: #f0f4f2 !important;
    border-radius: 12px !important;
    margin-top: 15px;
}

.search-box #advancedSearchOptions .row {
    background: transparent !important;
}

/* --- Partner Logos Section --- */
.search-box .partner {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e8e8e8;
}

.search-box .partner .title {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #999 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 10px;
}

.search-box .partner ul {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.search-box .partner li img {
    height: 24px;
    width: auto;
    opacity: 0.7;
    filter: grayscale(40%);
    transition: all 0.2s ease;
}

.search-box .partner li img:hover {
    opacity: 1;
    filter: grayscale(0%);
}

/* ==========================================================================
   MODERN JQUERY UI DATEPICKER (Desktop Only)
   ========================================================================== */

/* --- Datepicker Container --- */
.ui-datepicker {
    width: 300px !important;
    padding: 16px !important;
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15), 0 4px 12px rgba(0, 0, 0, 0.08) !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    z-index: 10000 !important;
}

/* --- Datepicker Header --- */
.ui-datepicker .ui-datepicker-header {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid #e8e8e8 !important;
    padding: 0 0 12px 0 !important;
    margin-bottom: 12px !important;
    border-radius: 0 !important;
}

.ui-datepicker .ui-datepicker-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #202124 !important;
    letter-spacing: -0.01em !important;
}

.ui-datepicker .ui-datepicker-title select {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #202124 !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 6px 10px !important;
    margin: 0 4px !important;
    background: #f8f9fa !important;
    cursor: pointer !important;
}

.ui-datepicker .ui-datepicker-title select:hover {
    border-color: var(--brand, #2d5f41) !important;
}

/* --- Navigation Arrows --- */
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    width: 32px !important;
    height: 32px !important;
    top: 0 !important;
    border-radius: 8px !important;
    background: #f8f9fa !important;
    border: 1px solid #e0e0e0 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.ui-datepicker .ui-datepicker-prev {
    left: 0 !important;
}

.ui-datepicker .ui-datepicker-next {
    right: 0 !important;
}

.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    background: var(--brand, #2d5f41) !important;
    border-color: var(--brand, #2d5f41) !important;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    background-image: none !important;
    text-indent: 0 !important;
    color: #5f6368 !important;
    font-size: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    left: 0 !important;
    top: 0 !important;
}

.ui-datepicker .ui-datepicker-prev span::before {
    content: "‹" !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    color: #5f6368 !important;
}

.ui-datepicker .ui-datepicker-next span::before {
    content: "›" !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    color: #5f6368 !important;
}

.ui-datepicker .ui-datepicker-prev:hover span::before,
.ui-datepicker .ui-datepicker-next:hover span::before {
    color: #ffffff !important;
}

/* --- Calendar Table --- */
.ui-datepicker table {
    font-size: 14px !important;
    margin: 0 !important;
}

.ui-datepicker th {
    padding: 8px 0 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #999 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.ui-datepicker td {
    padding: 2px !important;
}

.ui-datepicker td span,
.ui-datepicker td a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #202124 !important;
    text-align: center !important;
    transition: all 0.15s ease !important;
}

.ui-datepicker td a:hover {
    background: rgba(45, 95, 65, 0.1) !important;
    color: var(--brand, #2d5f41) !important;
}

/* --- Selected/Active Date --- */
.ui-datepicker .ui-state-active,
.ui-datepicker .ui-widget-content .ui-state-active,
.ui-datepicker td a.ui-state-active,
.ui-datepicker td a.ui-state-highlight.ui-state-active {
    background: var(--brand, #2d5f41) !important;
    color: #ffffff !important;
    border: none !important;
    font-weight: 600 !important;
}

/* --- Today Highlight --- */
.ui-datepicker .ui-state-highlight,
.ui-datepicker .ui-widget-content .ui-state-highlight {
    background: rgba(45, 95, 65, 0.15) !important;
    color: var(--brand, #2d5f41) !important;
    border: none !important;
    font-weight: 600 !important;
}

/* --- Disabled Dates --- */
.ui-datepicker .ui-state-disabled span {
    color: #ccc !important;
    cursor: not-allowed !important;
}

/* --- Hover States --- */
.ui-datepicker .ui-state-default,
.ui-datepicker .ui-widget-content .ui-state-default {
    border: none !important;
    background: transparent !important;
}

.ui-datepicker .ui-state-hover,
.ui-datepicker .ui-widget-content .ui-state-hover {
    background: rgba(45, 95, 65, 0.1) !important;
    border: none !important;
}

/* --- Multi-Month Datepicker (Dual Calendar View) --- */
/* Note: Do NOT use display: flex !important here - it prevents datepicker from closing */
.ui-datepicker-multi {
    width: auto !important;
    gap: 0 !important;
    padding: 12px !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15) !important;
}

/* Apply flex layout when visible - use :not selector to exclude hidden state */
.ui-datepicker-multi:not([style*="display: none"]):not(.ui-helper-hidden) {
    display: flex !important;
}

/* Force hide when jQuery UI sets display: none */
.ui-datepicker-multi.ui-datepicker-hidden,
.ui-datepicker-multi[style*="display: none"] {
    display: none !important;
}

.ui-datepicker-multi .ui-datepicker-group {
    padding: 0 10px !important;
    width: auto !important;
    float: none !important;
}

.ui-datepicker-multi .ui-datepicker-group:first-child {
    border-right: 1px solid #e8e8e8;
    padding-left: 4px !important;
}

.ui-datepicker-multi .ui-datepicker-group:last-child {
    padding-right: 4px !important;
}

.ui-datepicker-multi .ui-datepicker-group table {
    width: auto !important;
    margin: 0 !important;
}

.ui-datepicker-multi .ui-datepicker-group .ui-datepicker-header {
    margin-bottom: 6px !important;
    padding: 0 0 8px 0 !important;
}

.ui-datepicker-multi .ui-datepicker-group .ui-datepicker-title {
    font-size: 13px !important;
    font-weight: 600 !important;
}

/* Smaller day cells for multi-month */
.ui-datepicker-multi .ui-datepicker-group th {
    padding: 4px 0 !important;
    font-size: 10px !important;
    width: 28px !important;
}

.ui-datepicker-multi .ui-datepicker-group td {
    padding: 1px !important;
}

.ui-datepicker-multi .ui-datepicker-group td span,
.ui-datepicker-multi .ui-datepicker-group td a {
    width: 26px !important;
    height: 26px !important;
    font-size: 12px !important;
    line-height: 26px !important;
}

/* Navigation arrows smaller */
.ui-datepicker-multi .ui-datepicker-prev,
.ui-datepicker-multi .ui-datepicker-next {
    width: 24px !important;
    height: 24px !important;
    top: 0 !important;
}

/* 2-Month Datepicker specific width */
.ui-datepicker-multi-2 {
    width: 440px !important;
    max-width: 95vw !important;
}

/* Row Clear for multi-month */
.ui-datepicker-row-break {
    clear: both !important;
    width: 100% !important;
    font-size: 0 !important;
    display: none !important;
}

/* ==========================================================================
   MODERN TIMEPICKER/TIME SELECT (Desktop Only)
   ========================================================================== */

/* --- Custom Time Dropdown Styling --- */
.time-select-wrapper,
.timepicker-container {
    position: relative;
}

.time-dropdown {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    max-height: 240px;
    overflow-y: auto;
    z-index: 1000;
    padding: 8px 0;
}

.time-dropdown-item {
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 500;
    color: #202124;
    cursor: pointer;
    transition: all 0.15s ease;
}

.time-dropdown-item:hover {
    background: rgba(45, 95, 65, 0.08);
    color: var(--brand, #2d5f41);
}

.time-dropdown-item.selected {
    background: rgba(45, 95, 65, 0.15);
    color: var(--brand, #2d5f41);
    font-weight: 600;
}

/* --- Clock Icon Input --- */
.time-input-wrapper {
    position: relative;
}

.time-input-wrapper input {
    padding-left: 40px !important;
}

.time-input-wrapper::before {
    content: "\f017";
    font-family: "FontAwesome";
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 16px;
    pointer-events: none;
    z-index: 1;
}

/* ==========================================================================
   AUTOCOMPLETE DROPDOWN MODERNIZATION (Desktop Only)
   ========================================================================== */

.ui-autocomplete {
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.06) !important;
    padding: 8px 0 !important;
    max-height: 300px !important;
    overflow-y: auto !important;
    z-index: 10000 !important;
}

.ui-autocomplete .ui-menu-item {
    padding: 0 !important;
    margin: 0 !important;
}

.ui-autocomplete .ui-menu-item > div,
.ui-autocomplete .ui-menu-item a {
    padding: 12px 16px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #202124 !important;
    border-bottom: none !important;
    transition: all 0.15s ease !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.ui-autocomplete .ui-menu-item > div:hover,
.ui-autocomplete .ui-menu-item a:hover,
.ui-autocomplete .ui-state-focus,
.ui-autocomplete .ui-state-active {
    background: rgba(45, 95, 65, 0.08) !important;
    color: var(--brand, #2d5f41) !important;
}

/* City icon in autocomplete */
.ui-autocomplete .ui-menu-item > div::before,
.ui-autocomplete .ui-menu-item a::before {
    content: "\f041";
    font-family: "FontAwesome";
    color: var(--brand, #2d5f41);
    font-size: 14px;
    opacity: 0.7;
}

/* ==========================================================================
   RESPONSIVE ADJUSTMENTS FOR SEARCH FORM
   ========================================================================== */

@media (max-width: 1200px) {
    .res-maske {
        padding: 20px 24px;
    }

    .res-maske h1 {
        font-size: 22px;
    }

    .res-maske .form-row {
        grid-template-columns: 1fr;
    }

    .res-maske .form-row.date-time {
        grid-template-columns: 1fr 1fr;
    }
}

/* Note: Mobile styles not included per request - desktop only */

/* ==========================================================================
   FIX: Tab-pane Integration
   ========================================================================== */

/* Remove separate white background from tab-pane - use search-box background */
.search-box .tab-content {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

.search-box .tab-pane {
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Ensure search-box doesn't overflow into other sections */
.search-box {
    position: relative;
    z-index: 10;
}

/* Ensure extended options don't overlap breadcrumb */
#advancedSearchOptions {
    position: relative;
    z-index: 5;
}

/* ==========================================================================
   FIX: Input Field Icons - Prevent Text Overlap
   ========================================================================== */

/* Date input wrapper with icon */
.search-box .anmietdatum,
.search-box .rueckgabedatum,
.search-box .geburtsdatum {
    position: relative;
}

/* Add calendar icon to date inputs */
.search-box .anmietdatum::before,
.search-box .rueckgabedatum::before,
.search-box .geburtsdatum::before {
    content: "\f073";
    font-family: "FontAwesome";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

/* Add left padding to date inputs to make room for icon */
.search-box .anmietdatum input,
.search-box .rueckgabedatum input,
.search-box .geburtsdatum input {
    padding-left: 38px !important;
}

/* Location input wrapper with icon */
.search-box .anmietort,
.search-box .rueckgabeort {
    position: relative;
}

/* Add location icon to location inputs */
.search-box .anmietort::before,
.search-box .rueckgabeort::before {
    content: "\f041";
    font-family: "FontAwesome";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

/* Add left padding to location inputs to make room for icon */
.search-box .anmietort input,
.search-box .rueckgabeort input {
    padding-left: 38px !important;
}

/* ==========================================================================
   FIX: Timepicker Style - Match Datepicker Appearance
   ========================================================================== */

/* Time select wrapper with icon */
.search-box .anmietzeit,
.search-box .rueckgabezeit {
    position: relative;
}

/* Add clock icon to time selects */
.search-box .anmietzeit::before,
.search-box .rueckgabezeit::before {
    content: "\f017";
    font-family: "FontAwesome";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

/* Adjust sbHolder (jQuery SelectBox) for time selects to have icon space */
.search-box .anmietzeit .sbHolder,
.search-box .rueckgabezeit .sbHolder {
    padding-left: 0 !important;
}

/* Adjust sbSelector text position for icon space */
.search-box .anmietzeit .sbSelector,
.search-box .rueckgabezeit .sbSelector {
    padding-left: 38px !important;
    text-indent: 0 !important;
}

/* Make timepicker have same height as datepicker */
.search-box .anmietzeit .sbHolder,
.search-box .rueckgabezeit .sbHolder {
    height: 46px !important;
    border-radius: 10px !important;
}

.search-box .anmietzeit .sbSelector,
.search-box .rueckgabezeit .sbSelector {
    line-height: 44px !important;
    height: 44px !important;
}

/* Consistent label styling above date/time fields */
.search-box .anmietdatum + .anmietzeit,
.search-box .rueckgabedatum + .rueckgabezeit {
    margin-left: 0;
}

/* Add subtle label above date and time for better UX */
.search-box .form-group .row > div:first-child label.sr-only + div::after,
.search-box .form-group .row > div:last-child label.sr-only + div::after {
    display: none;
}

/* Visual label for date */
.search-box .col-xs-7 > label.sr-only + .anmietdatum::after,
.search-box .col-xs-7 > label.sr-only + .rueckgabedatum::after {
    content: attr(data-label);
    position: absolute;
    top: -18px;
    left: 0;
    font-size: 10px;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Add visible label above date fields */
.search-box .form-group .col-xs-7:first-child::before {
    content: "Datum";
    display: block;
    font-size: 10px;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

/* Add visible label above time fields */
.search-box .form-group .col-xs-5:last-child::before {
    content: "Uhrzeit";
    display: block;
    font-size: 10px;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

/* ==========================================================================
   FIX: Extended Options (Advanced Search) - Icon Overlap & Datepicker
   ========================================================================== */

/* PLZ field wrapper with icon */
#advancedSearchOptions .plz {
    position: relative;
}

/* Add location/map icon to PLZ input */
#advancedSearchOptions .plz::before {
    content: "\f041";
    font-family: "FontAwesome";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

/* Add left padding to PLZ input to make room for icon */
#advancedSearchOptions .plz input {
    padding-left: 38px !important;
}

/* Umkreis select wrapper with icon */
#advancedSearchOptions .umkreis {
    position: relative;
}

/* Add globe/radius icon to Umkreis select */
#advancedSearchOptions .umkreis::before {
    content: "\f0ac";
    font-family: "FontAwesome";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

/* Adjust sbSelector text position for Umkreis icon space */
#advancedSearchOptions .umkreis .sbSelector {
    padding-left: 38px !important;
    text-indent: 0 !important;
}

/* Fix: globale Regel setzt margin-left: -27px auf alle Select2-Placeholder,
   was hier das padding-left:27px aufhebt und "Um" abschneidet */
#advancedSearchOptions .umkreis .select2-selection__placeholder {
    margin-left: 0 !important;
}

/* Clear button for Umkreis Select2 - positioned before the arrow */
#advancedSearchOptions .umkreis .select2-selection__clear,
#advancedSearchOptionsNutz .umkreis .select2-selection__clear {
    position: relative;
    z-index: 3;
    margin-right: 10px;
    font-size: 16px;
    color: #999;
    padding: 0 4px;
}
#advancedSearchOptions .umkreis .select2-selection__clear:hover,
#advancedSearchOptionsNutz .umkreis .select2-selection__clear:hover {
    color: #333;
}

/* Style extended options inputs to match main form */
#advancedSearchOptions .form-control-input {
    height: 46px !important;
    border-radius: 10px !important;
    border: 1px solid #e0e0e0 !important;
    font-size: 14px !important;
}

/* Style extended options sbHolder to match main form */
#advancedSearchOptions .sbHolder {
    height: 46px !important;
    border-radius: 10px !important;
    background-color: #fff !important;
    border: 1px solid #e0e0e0 !important;
}

#advancedSearchOptions .sbSelector {
    line-height: 44px !important;
    height: 44px !important;
}

/* ==========================================================================
   Nutzfahrzeuge-Tab: Erweiterte Optionen (#advancedSearchOptionsNutz)
   Exakt dieselbe Optik wie #advancedSearchOptions, angepasst an 3-Spalten-Layout
   ========================================================================== */

/* Row-Ausrichtung: alle drei Felder auf gleicher Grundlinie */
#advancedSearchOptionsNutz .row {
    display: flex;
    align-items: flex-end;
    gap: 0;
}

/* Labels auf gleiche Höhe normieren, damit mehrzeilige Labels
   (z.B. "Geburtsdatum (Fahrer)") die Inputs nicht versetzen */
#advancedSearchOptionsNutz .form-group > label {
    min-height: 34px;
    display: flex;
    align-items: flex-end;
    margin-bottom: 10px;
}

/* PLZ-Icon: position:relative als Ankerpunkt für ::before */
#advancedSearchOptionsNutz .plz {
    position: relative;
}

/* Standort-Icon vor PLZ-Eingabe */
#advancedSearchOptionsNutz .plz::before {
    content: "\f041";
    font-family: "FontAwesome";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

/* Platz für PLZ-Icon im Input */
#advancedSearchOptionsNutz .plz input {
    padding-left: 38px !important;
}

/* Umkreis: Icon-Ankerpunkt */
#advancedSearchOptionsNutz .umkreis {
    position: relative;
}

/* Globus-Icon vertikal zentrieren (überschreibt .frontpage-header top: 8px) */
#advancedSearchOptionsNutz .umkreis::before {
    content: "\f0ac";
    font-family: "FontAwesome";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand, #2d5f41);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.7;
}

/* Fix: globale -27px margin-left des Select2-Placeholders aufheben */
#advancedSearchOptionsNutz .umkreis .select2-selection__placeholder {
    margin-left: 0 !important;
}

/* Inputs auf gleiche Höhe wie LKW-Tab */
#advancedSearchOptionsNutz .form-control-input {
    height: 46px !important;
    border-radius: 10px !important;
    border: 1px solid #e0e0e0 !important;
    font-size: 14px !important;
}

/* Geburtsdatum datepicker - single month styling */
.ui-datepicker:not(.ui-datepicker-multi) {
    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15) !important;
    padding: 12px !important;
    border: none !important;
}

/* ==========================================================================
   Modern Breadcrumb Navigation Styling
   ========================================================================== */

/* Breadcrumb container - subtle, integrated look */
nav[aria-label="Breadcrumb Navigation"] .breadcrumb,
section.breadcrumb .breadcrumb {
    background: transparent !important;
    padding: 0;
    margin: 0;
    border-radius: 0;
    border: none;
    box-shadow: none;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    list-style: none;
}

/* Modern breadcrumb list items */
nav[aria-label="Breadcrumb Navigation"] .breadcrumb > li,
section.breadcrumb .breadcrumb > li {
    font-size: 15px;
    font-weight: 400;
    color: #5a6268;
    display: inline-flex;
    align-items: center;
    line-height: 1.4;
    white-space: nowrap;
    flex-shrink: 0;
}

/* Last breadcrumb item can shrink/truncate if needed */
nav[aria-label="Breadcrumb Navigation"] .breadcrumb > li:last-child,
section.breadcrumb .breadcrumb > li:last-child {
    flex-shrink: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Override existing separator - subtle style */
nav[aria-label="Breadcrumb Navigation"] .breadcrumb > li + li::before {
    content: "/";
    font-family: inherit;
    color: #9ca3ab;
    font-size: 15px;
    padding: 0 10px;
    font-weight: 300;
}

/* Link styling */
nav[aria-label="Breadcrumb Navigation"] .breadcrumb > li > a,
section.breadcrumb .breadcrumb > li > a {
    color: #5a6268;
    text-decoration: none;
    transition: color 0.2s ease;
}

nav[aria-label="Breadcrumb Navigation"] .breadcrumb > li > a:hover,
section.breadcrumb .breadcrumb > li > a:hover {
    color: var(--brand, #2d5f41);
    text-decoration: underline;
}

/* Active/current page styling */
nav[aria-label="Breadcrumb Navigation"] .breadcrumb > .active,
nav[aria-label="Breadcrumb Navigation"] .breadcrumb > li:last-child,
section.breadcrumb .breadcrumb > .active,
section.breadcrumb .breadcrumb > li:last-child {
    color: #343a40;
    font-weight: 500;
}

/* Ensure breadcrumb stays above other elements and has full width */
nav[aria-label="Breadcrumb Navigation"],
section.breadcrumb {
    position: relative;
    z-index: 1;
    background: rgba(255, 255, 255, 0.95) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
    width: 100%;
    clear: both;
    padding: 10px 0 !important;
}

/* Ensure the breadcrumb container inside nav has proper width */
nav[aria-label="Breadcrumb Navigation"] .container {
    max-width: 100%;
}

/* ==========================================================================
   Modern Partner Logos Section
   ========================================================================== */

/* Ensure parent elements allow overflow for hover shadow */
.frontpage-header .search-box,
.frontpage-header .search-box form,
.frontpage-header .search-box-form,
.frontpage-header [role="tabpanel"],
.frontpage-header .tab-content,
.frontpage-header .tab-pane,
.frontpage-header .tab-pane.active,
.frontpage-header #tab-lkw {
    overflow: visible !important;
}

/* Partner container - modern glass effect */
.frontpage-header .partner {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.08) 100%) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    min-height: 70px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    padding: 28px 20px 20px 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px;
    overflow: visible !important;
    position: relative;
    margin-bottom: 15px;
}

/* Partner title - small corner label */
.frontpage-header .partner .title {
    display: block !important;
    position: absolute !important;
    top: 4px !important;
    left: 12px !important;
    height: auto !important;
    min-height: auto !important;
    color: rgba(90, 98, 104, 0.7) !important;
    font-size: 8px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 0 !important;
    white-space: nowrap;
    vertical-align: top !important;
    text-align: left !important;
    z-index: 5;
}

/* Remove separator after title */
.frontpage-header .partner .title::after {
    display: none !important;
}

/* Logo list container */
.frontpage-header .partner ul {
    display: flex !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 8px 5px 5px 5px !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
    width: 100%;
}

.frontpage-header .partner ul::-webkit-scrollbar {
    display: none;
}

/* Individual logo items */
.frontpage-header .partner ul > li {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 50px !important;
    min-width: 70px !important;
    padding: 6px 10px !important;
    background: rgba(255, 255, 255, 0.9) !important;
    border-radius: 8px !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease !important;
    cursor: default;
    position: relative;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
}

/* Hover effect for logo items */
.frontpage-header .partner ul > li:hover {
    transform: scale(1.08) !important;
    background: rgba(255, 255, 255, 1) !important;
    box-shadow: inset 0 0 0 2px rgba(235, 181, 45, 0.5), 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    z-index: 10;
}

/* Logo images */
.frontpage-header .partner ul > li img {
    max-height: 38px !important;
    max-width: 90px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    filter: grayscale(20%);
    transition: filter 0.3s ease !important;
    display: block !important;
}

.frontpage-header .partner ul > li:hover img {
    filter: grayscale(0%) !important;
}

/* Ensure consistent padding for all items */
.frontpage-header .partner ul > li:first-child,
.frontpage-header .partner ul > li:last-child {
    padding: 6px 10px !important;
}

button#v-login {
    height: 56px;
}

/* ============================================================================
   Einweg Price Loading Animation - Shimmer Effect
   ============================================================================ */
.price-loading-container {
    position: relative;
    display: inline-block;
    min-width: 180px;
}

.price-loading-text {
    font-size: 15px;
    font-weight: 500;
    color: #ffffff;
    position: relative;
    overflow: hidden;
    display: inline-block;
}

.price-loading-text::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.4),
        transparent
    );
    animation: einweg-shimmer 1.5s infinite;
}

@keyframes einweg-shimmer {
    0% { left: -100%; }
    100% { left: 100%; }
}

/* Result states */
.price-result {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
}

.price-on-request {
    color: #ffffff;
    font-style: italic;
    font-weight: 400;
    font-size: 0.9em;
}

/* For light backgrounds (FAQ section etc.) */
.einweg-faq .price-loading-text {
    color: #333;
}

.einweg-faq .price-loading-text::after {
    background: linear-gradient(
        90deg,
        transparent,
        rgba(0, 0, 0, 0.1),
        transparent
    );
}

.einweg-faq .price-result,
.einweg-faq .price-on-request {
    color: #333;
}

/* ===== Desktop Offer Card V2 - Modern Card Design ===== */
.offer-card-v2 {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	box-shadow: 0 2px 12px rgba(0,0,0,0.06);
	overflow: hidden;
	transition: all 0.25s ease;
	width: 300px;
	flex: 0 0 auto;
}

.offer-card-v2:hover {
	box-shadow: 0 8px 24px rgba(0,0,0,0.12);
	transform: translateY(-4px);
}

/* Header */
.offer-card-v2 .card-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 16px;
	border-bottom: 1px solid #f3f4f6;
	background: #fff;
}

.offer-card-v2 .card-category {
	font-size: 13px;
	font-weight: 700;
	color: #43a047;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.offer-card-v2 .card-location {
	font-size: 13px;
	font-weight: 600;
	color: #6b7280;
}

/* Image Section */
.offer-card-v2 .card-image-wrapper {
	position: relative;
	background: #f8f9fa;
	padding: 16px;
}

.offer-card-v2 .card-image-wrapper img {
	width: 100%;
	height: 140px;
	object-fit: contain;
}

.offer-card-v2 .provider-badge {
	position: absolute;
	bottom: 12px;
	right: 12px;
	background: rgba(255,255,255,0.95);
	backdrop-filter: blur(4px);
	padding: 4px 12px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 600;
	color: #374151;
	box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* Vehicle Info */
.offer-card-v2 .card-vehicle-info {
	padding: 12px 16px 8px;
}

.offer-card-v2 .vehicle-name {
	font-size: 15px;
	font-weight: 600;
	color: #1f2937;
	margin: 0 0 8px 0;
	line-height: 1.3;
}

.offer-card-v2 .vehicle-pills {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.offer-card-v2 .pill {
	padding: 4px 10px;
	border-radius: 6px;
	font-size: 11px;
	font-weight: 600;
}

.offer-card-v2 .pill-volume {
	background: #fff7ed;
	color: #c2410c;
	border: 1px solid #fed7aa;
}

.offer-card-v2 .pill-type {
	background: #f0fdf4;
	color: #166534;
	border: 1px solid #bbf7d0;
}

/* Specs Grid */
.offer-card-v2 .specs-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	border-top: 1px solid #f3f4f6;
	border-bottom: 1px solid #f3f4f6;
	margin: 8px 0;
}

.offer-card-v2 .spec-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 10px 8px;
	border-right: 1px solid #f3f4f6;
	background: #fafafa;
	text-align: center;
}

.offer-card-v2 .spec-item:last-child {
	border-right: none;
}

.offer-card-v2 .spec-label {
	font-size: 9px;
	color: #9ca3af;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 2px;
}

.offer-card-v2 .spec-value {
	font-size: 12px;
	font-weight: 700;
	color: #374151;
}

/* Footer */
.offer-card-v2 .card-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 16px 16px;
}

.offer-card-v2 .price-section {
	display: flex;
	flex-direction: column;
}

.offer-card-v2 .price-label {
	font-size: 11px;
	color: #9ca3af;
}

.offer-card-v2 .price-value {
	font-size: 22px;
	font-weight: 700;
	color: #43a047;
}

.offer-card-v2 .btn-book {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 20px;
	background: #43a047;
	color: #fff;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.2s;
}

.offer-card-v2 .btn-book:hover {
	background: #388e3c;
	color: #fff;
	text-decoration: none;
}

/* ===== Scroll-Snap Karussell ===== */
.offers-carousel {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	gap: 16px;
	padding: 8px 0 16px;
	-webkit-overflow-scrolling: touch;
}

.offers-carousel::-webkit-scrollbar {
	height: 8px;
}

.offers-carousel::-webkit-scrollbar-track {
	background: #f3f4f6;
	border-radius: 4px;
}

.offers-carousel::-webkit-scrollbar-thumb {
	background: #d1d5db;
	border-radius: 4px;
}

.offers-carousel::-webkit-scrollbar-thumb:hover {
	background: #9ca3af;
}

.offers-carousel .offer-card-v2 {
	scroll-snap-align: start;
	margin: 0;
}

/* Responsive für Karussell */
@media (max-width: 767px) {
	.offer-card-v2 {
		width: 280px;
	}
	.offer-card-v2 .card-image-wrapper img {
		height: 120px;
	}
}

@media (min-width: 1440px) {
	.offers-carousel {
		overflow-x: visible;
		flex-wrap: wrap;
		gap: 20px;
		justify-content: center;
	}
}

/* ===== DESKTOP EXTRAS CARD DESIGN ===== */
/* Modern card-based option selector for extras.html */

/* CSS Variables for extras cards */
.extras {
  --brand: #2d5a27;
  --brand-dark: #1e4028;
  --card: #ffffff;
  --card-border: #e5e7eb;
  --text: #0f172a;
  --muted: #6b7280;
  --success: #16a34a;
  --error: #dc2626;
}

.extras .extras-card {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 16px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

.extras .extras-card.highlight {
  border-color: var(--brand);
}

.extras .extras-card-header {
  font-size: 18px;
  font-weight: 600;
  color: var(--text);
  margin: 0 0 16px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.extras .extras-card-header.highlight {
  color: var(--brand);
}

.extras .extras-card-header .fa-question-circle {
  font-size: 14px;
  color: var(--muted);
  cursor: pointer;
}

/* Option Labels (clickable cards) */
.extras .extras-option {
  display: block;
  position: relative;
  cursor: pointer;
  margin-bottom: 12px;
}

.extras .extras-option:last-child {
  margin-bottom: 0;
}

.extras .extras-option input[type="radio"],
.extras .extras-option input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.extras .extras-option-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 16px;
  border-radius: 10px;
  border: 1px solid var(--card-border);
  background: #fff;
  transition: all 0.2s ease;
}

.extras .extras-option:hover .extras-option-content {
  border-color: var(--brand);
  background: #fafffe;
}

.extras .extras-option input:checked + .extras-option-content {
  border-color: var(--brand);
  background: #f0f9f4;
}

.extras .extras-option input:disabled + .extras-option-content {
  opacity: 0.7;
  cursor: not-allowed;
}

.extras .extras-option-info {
  flex: 1;
  min-width: 0;
  padding-right: 16px;
}

.extras .extras-option-info strong {
  display: block;
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 4px;
}

.extras .extras-option-info span {
  font-size: 13px;
  color: var(--muted);
  display: block;
  line-height: 1.5;
}

.extras .extras-option-info .status-msg {
  font-size: 12px;
  margin-top: 6px;
  font-weight: 600;
}

.extras .extras-option-info .status-flex {
  color: #16A34A;
}

.extras .extras-option-info .status-warn {
  color: #DC2626;
}

.extras .extras-price-label {
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  white-space: nowrap;
  flex-shrink: 0;
}

/* Kasko Sub-Options */
.extras .extras-kasko-options {
  margin-top: 12px;
  padding-left: 16px;
  /* border-left: 3px solid #dcf2e4; */
}

.extras .extras-kasko-options .extras-option {
  margin-bottom: 10px;
}

.extras .extras-kasko-options .extras-option-content {
  padding: 12px;
}

.extras .extras-kasko-options .extras-option-info strong {
  font-size: 14px;
}

/* ===== ZUSATZLEISTUNGEN SERVICE ITEMS ===== */
.extras .extras-service-item {
  padding: 16px 0;
  border-bottom: 1px solid var(--card-border);
  margin-bottom: 8px;
}

.extras .extras-service-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.extras .extras-service-item:first-child {
  padding-top: 0;
}

.extras .extras-service-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.extras .extras-service-info {
  flex: 1;
  min-width: 0;
}

.extras .extras-service-info strong {
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  display: inline;
}

.extras .extras-free-badge {
  display: inline-block;
  background: #16A34A;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 10px;
  border-radius: 12px;
  margin-left: 8px;
  vertical-align: middle;
}

/* Quantity Selector */
.extras .extras-quantity-selector {
  display: inline-flex;
  align-items: center;
  gap: 0;
  background: var(--bg);
  border: 1px solid var(--card-border);
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
  width: auto;
  max-width: 130px;
}

.extras .qty-btn {
  width: 38px;
  height: 38px;
  border: none;
  background: transparent;
  color: var(--brand);
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}

.extras .qty-btn:hover {
  background: #dcf2e4;
}

.extras .qty-btn:disabled {
  color: var(--muted);
  opacity: 0.5;
  cursor: not-allowed;
}

.extras .qty-input {
  width: 44px;
  height: 38px;
  border: none;
  border-left: 1px solid var(--card-border);
  border-right: 1px solid var(--card-border);
  background: #fff;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  -moz-appearance: textfield;
}

.extras .qty-input::-webkit-outer-spin-button,
.extras .qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.extras .qty-input:focus {
  outline: none;
  background: #f0f9f4;
}

/* Service Pricing Breakdown */
.extras .extras-service-pricing {
  margin-top: 12px;
  padding: 12px;
  background: var(--bg);
  border-radius: 8px;
  font-size: 13px;
}

.extras .extras-pricing-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 4px 0;
  color: var(--muted);
}

.extras .extras-pricing-row.free-row {
  color: #16A34A;
}

.extras .extras-pricing-row.free-row span:last-child {
  font-weight: 600;
}

.extras .extras-pricing-row.paid-row {
  color: var(--text);
}

/* Service Total */
.extras .extras-service-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed var(--card-border);
  font-weight: 600;
}

.extras .extras-service-total-label {
  font-size: 13px;
  color: var(--text);
}

.extras .extras-service-total-price {
  font-size: 15px;
  color: var(--brand);
  font-weight: 700;
}

/* Show More Link */
.extras .extras-show-more {
  display: block;
  margin-top: 16px;
  color: var(--brand) !important;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
}

.extras .extras-show-more i {
  margin-right: 6px;
}

/* Submit Button Section */
.extras .extras-submit-section {
  padding: 20px 0 0;
}

.extras .extras-submit-btn {
  background: var(--brand) !important;
  color: #fff !important;
  border: none !important;
  padding: 14px 24px !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.extras .extras-submit-btn:hover {
  background: var(--brand-600) !important;
}

.extras .extras-secure-note {
  font-size: 12px;
  color: var(--muted);
  margin-top: 12px;
}

/* Hide old panel styles when using new design */
.extras .extras-card ~ .panel,
.extras .extras-card ~ .panel-result {
  display: none;
}

/* =============================================
   DESKTOP SUCHERGEBNIS-CARDS V2
   Inspiriert vom Mobile Card-Design
   ============================================= */

/* Card Container - moderne Optik */
.panel-result {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  overflow: hidden;
  transition: box-shadow 0.2s, border-color 0.2s;
}

.panel-result:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.08);
  border-color: #d1d5db;
}

/* Header - cleaner, kompakter */
.panel-result > .panel-heading {
  background: linear-gradient(to right, #f9fafb, #ffffff);
  border-bottom: 1px solid #e5e7eb;
  padding: 10px 16px;
}

.panel-result > .panel-heading .row {
  margin: 0;
  display: flex;
  align-items: center;
}

.panel-result > .panel-heading .panel-title {
  font-size: 15px;
  font-weight: 600;
  color: #1f2937;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.panel-result > .panel-heading .panel-title .badge {
  background: #43a047;
  color: #fff;
  font-size: 11px;
  padding: 3px 8px;
  border-radius: 4px;
  font-weight: 600;
}

/* Labels im Header */
.panel-result > .panel-heading .label {
  font-size: 11px;
  padding: 4px 10px;
  border-radius: 4px;
  font-weight: 500;
}

.panel-result > .panel-heading .label-available {
  background: #dcfce7;
  color: #166534;
}

.panel-result > .panel-heading .label-request {
  background: #fef3c7;
  color: #92400e;
}

/* Tarif-Labels */
.panel-result > .panel-heading .label-privaterate {
  background: #eff6ff;
  color: #1d4ed8;
}

.panel-result > .panel-heading .label-studentrate {
  background: #fdf4ff;
  color: #a21caf;
}

.panel-result > .panel-heading .label-companyrate {
  background: #f0fdf4;
  color: #15803d;
}

/* Provider Name */
.panel-result > .panel-heading .interprise {
  font-weight: 700;
  font-size: 14px;
  color: #374151;
  text-align: right;
}

/* Share-Button im Header */
.panel-result > .panel-heading .btn-share-offer {
  background: transparent;
  border: 1px solid #e5e7eb;
  color: #6b7280;
  padding: 6px 10px;
  cursor: pointer;
  font-size: 14px;
  border-radius: 6px;
  transition: all 0.2s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.panel-result > .panel-heading .btn-share-offer:hover {
  background: #f3f4f6;
  color: #43a047;
  border-color: #43a047;
}

/* Panel Body */
.panel-result > .panel-body {
  padding: 16px;
}

/* 3-Spalten Layout - optimiert */
.panel-result > .panel-body .result-content {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}

/* SPALTE 1: Fahrzeug - mit Provider Overlay wie Mobile */
.panel-result .vehicle-column {
  flex: 0 0 180px;
  position: relative;
}

.panel-result .vehicle-column .caption {
  position: relative;
  background: #f8f9fa;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 8px;
}

.panel-result .vehicle-column .caption img {
  width: 100%;
  height: auto;
  display: block;
}

.panel-result .vehicle-column .caption .desc {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0,0,0,0.7);
  color: #fff;
  font-size: 11px;
  padding: 6px 8px;
  text-align: center;
  font-weight: 500;
}

/* Specs als kompakte Pills */
.panel-result .vehicle-column ul.basics {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.panel-result .vehicle-column ul.basics li {
  background: #f1f5f9;
  color: #475569;
  font-size: 10px;
  padding: 3px 8px;
  border-radius: 4px;
  font-weight: 500;
  white-space: nowrap;
}

/* SPALTE 2: Details - cleaner */
.panel-result .details-column {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Station Section */
.panel-result .station-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.panel-result .station-group {
  flex: 1;
  min-width: 200px;
}

.panel-result .station-group label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  font-weight: 600;
  color: #6b7280;
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.panel-result .station-group .map-link {
  font-size: 11px;
  color: #43a047;
  cursor: pointer;
  font-weight: 500;
  text-transform: none;
}

.panel-result .station-group .map-link:hover {
  text-decoration: underline;
}

.panel-result .station-group select {
  width: 100%;
  padding: 8px 32px 8px 12px;
  border: 1.5px solid #d1d5db;
  border-radius: 8px;
  font-size: 13px;
  background: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.panel-result .station-group select:hover {
  border-color: #43a047;
}

.panel-result .station-group select:focus {
  outline: none;
  border-color: #43a047;
  box-shadow: 0 0 0 3px rgba(67, 160, 71, 0.15);
}

/* Feature Tags - moderne Pills */
.panel-result .feature-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.panel-result .feature-tag {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 500;
  background: #f0fdf4;
  color: #166534;
  border: 1px solid #bbf7d0;
}

.panel-result .feature-tag.tag-info {
  background: #eff6ff;
  color: #1d4ed8;
  border-color: #bfdbfe;
}

.panel-result .feature-tag.tag-warning {
  background: #fef3c7;
  color: #92400e;
  border-color: #fde68a;
}

/* Offer Rating Badge */
.panel-result .offer-rating-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 8px;
  font-size: 12px;
  cursor: pointer;
  transition: transform 0.2s;
}

.panel-result .offer-rating-badge:hover {
  transform: translateY(-1px);
}

.panel-result .offer-rating-badge .rating-score {
  font-weight: 700;
  font-size: 14px;
}

.panel-result .offer-rating-badge .rating-text {
  font-weight: 500;
}

.panel-result .offer-rating-badge.rating-excellent {
  background: #dcfce7;
  color: #166534;
}

.panel-result .offer-rating-badge.rating-good {
  background: #fef3c7;
  color: #92400e;
}

.panel-result .offer-rating-badge.rating-average {
  background: #fef9c3;
  color: #854d0e;
}

/* SPALTE 3: Action - prominent aber kompakt */
.panel-result .action-column {
  flex: 0 0 150px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
}

.panel-result .action-column .price {
  font-size: 26px;
  font-weight: 700;
  color: #43a047;
  line-height: 1.1;
}

.panel-result .action-column .price_info {
  font-size: 11px;
  color: #6b7280;
  margin-bottom: 12px;
}

.panel-result .action-column .btn-red {
  width: 100%;
  padding: 10px 16px;
  background: #43a047;
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.panel-result .action-column .btn-red:hover {
  background: #388e3c;
}

/* Share-Button in action-column ausblenden (ist im Header) */
.panel-result .action-buttons-row .btn-share-offer {
  display: none;
}

/* .tell Element ausblenden */
.panel-result .tell {
  display: none;
}

/* Details Link */
.panel-result .card-footer-link {
  padding: 10px 16px;
  background: #f9fafb;
  border-top: 1px solid #e5e7eb;
  text-align: center;
}

.panel-result .card-footer-link a {
  color: #43a047;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
}

.panel-result .card-footer-link a:hover {
  text-decoration: underline;
}
/* ===== Announcement Banner ===== */
.announcement-banner {
    position: relative;
    width: 100%;
    background: linear-gradient(135deg, var(--brand, #2d5f41) 0%, var(--brand-600, #1e4028) 100%);
    color: #fff;
    z-index: 9999;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.announcement-banner-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 12px 50px 12px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.announcement-banner-content {
    display: flex;
    align-items: center;
    gap: 10px;
    text-align: center;
}

.announcement-icon {
    font-size: 20px;
    flex-shrink: 0;
}

.announcement-text {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
}

.announcement-close {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.8);
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    padding: 5px 10px;
    transition: all 0.2s ease;
    border-radius: 4px;
}

.announcement-close:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.15);
}

.announcement-close:focus {
    outline: 2px solid rgba(255, 255, 255, 0.5);
    outline-offset: 2px;
}

/* Closing Animation */
.announcement-banner.closing {
    animation: slideUp 0.3s ease forwards;
}

@keyframes slideUp {
    from {
        opacity: 1;
        max-height: 100px;
    }
    to {
        opacity: 0;
        max-height: 0;
        padding-top: 0;
        padding-bottom: 0;
        overflow: hidden;
    }
}

/* Body adjustment when banner is visible */
body.has-announcement-banner .frontpage-header {
    margin-top: 0;
}
