/*veride-scrollbar*/
html { scrollbar-width: thin; scrollbar-color: #97a98f #edf0ea; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #edf0ea; }
::-webkit-scrollbar-thumb { background: #97a98f; border-radius: 10px; border: 2px solid #edf0ea; }
::-webkit-scrollbar-thumb:hover { background: #333f41; }
::-webkit-scrollbar-corner { background: #edf0ea; }

.veride-wordmark { font-family: var(--alt-font); font-size: 24px; line-height: 26px; letter-spacing: 3px; text-transform: uppercase; white-space: nowrap; display: flex; flex-direction: column; justify-content: center; height: 42px; }
.veride-wordmark small { display: block; font-family: var(--primary-font); font-size: 10px; letter-spacing: 4px; line-height: 12px; opacity: .65; font-weight: 500; margin-top: 2px; }
header .navbar-brand { position: relative; padding: 25px 0; line-height: 0; }
header .navbar-brand .alt-logo, header .navbar-brand .mobile-logo { position: absolute; top: 25px; left: 0; width: auto; }
.footer-logo .veride-wordmark { height: auto; }
.veride-brand { font-family: var(--alt-font); font-size: 26px; letter-spacing: 2px; color: var(--dark-gray); opacity: .55; transition: opacity .3s ease; }
.client-box:hover .veride-brand { opacity: 1; }
html, body { max-width: 100%; overflow-x: clip; }
#top { overflow: hidden; }
.hero-photo { position: absolute; bottom: 0; right: 4%; width: 46%; max-width: 780px; height: 92%; background: url('https://veride.webagenten-vorschau.de/wp-content/uploads/veride/img/hero-cutout.webp') no-repeat bottom center / contain; pointer-events: none; }
.hero-watermark { position: absolute; top: 50%; left: 46%; transform: translateY(-50%); font-size: 420px; line-height: .8; color: rgba(255,255,255,.035); letter-spacing: -8px; pointer-events: none; user-select: none; white-space: nowrap; }
@media (max-width: 1199px) { .hero-watermark { font-size: 300px; left: 40%; } }
@media (max-width: 991px) { .hero-photo { width: 66%; right: 0; opacity: .55; } .hero-watermark { display: none; } }
.veride-map { background-color: #e9ece5; background-image: linear-gradient(rgba(51,63,65,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(51,63,65,.07) 1px, transparent 1px); background-size: 64px 64px, 64px 64px; }
:root { --base-color: #97a98f; --dark-gray: #333f41; --light-gray: #edf0ea; --medium-gray: #78807b; }
.text-gradient-san-blue-new-york-red { background-image: linear-gradient(to right, #333f41, #45544f, #6f866c, #8aa080, #97a98f); }
.bg-gradient-blue-ironstone-brown { background-image: linear-gradient(to right, #2f3a3c, #354040, #3d4a45, #49584e, #5b6d59); }
.bg-gradient-blue-ironstone-brown-transparent { background-image: linear-gradient(to right, rgb(47,58,60), rgba(48,59,61,.7), rgba(58,71,66,.7), rgba(72,88,78,.7), rgba(91,109,89,.7)); }
.bg-gradient-solitude-blue-fair-pink { background-image: linear-gradient(to bottom, #eef1ea, #eef1ec, #eef1ee, #ecf0f0, #e9edef); }
.bg-gradient-dark-transparent { background: linear-gradient(to top, #333f41 7%, transparent 100%); }
.btn.btn-base-color, .btn.btn-box-shadow.btn-base-color:hover { color: #23282a; }
.bg-yellow { background-color: #97a98f !important; color: #23282a !important; }
#veride-preloader { position: fixed; inset: 0; z-index: 9999; background: #333f41; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 26px; }
#veride-preloader .pl-mark { font-family: var(--alt-font); font-size: 34px; letter-spacing: 10px; text-transform: uppercase; color: #fff; text-indent: 10px; }
#veride-preloader .pl-sub { font-family: var(--primary-font); font-size: 11px; letter-spacing: 6px; text-transform: uppercase; color: rgba(255,255,255,.5); text-indent: 6px; margin-top: -14px; }
#veride-preloader .pl-track { width: 190px; height: 1px; background: rgba(255,255,255,.18); overflow: hidden; }
#veride-preloader .pl-bar { display: block; width: 100%; height: 100%; background: #97a98f; transform: scaleX(0); transform-origin: left center; }
body.veride-loaded #veride-preloader { pointer-events: none; }
#veride-map { overflow: hidden; }
#veride-map iframe { width: 100%; height: 100%; border: 0; display: block; }
.map-consent { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 30px; }
.map-consent-inner { max-width: 420px; text-align: center; background: rgba(255,255,255,.88); backdrop-filter: blur(6px); padding: 34px 38px; border-radius: 6px; }
.mc-eyebrow { display: block; font-size: 12px; letter-spacing: 3px; text-transform: uppercase; color: #6f7c72; margin-bottom: 10px; }
.mc-text { font-size: 15px; line-height: 26px; color: #4a5551; margin-bottom: 20px; }
#veride-cookie { position: fixed; left: 50%; bottom: 26px; z-index: 9998; width: min(880px, calc(100vw - 40px)); transform: translate(-50%, 26px); opacity: 0; transition: opacity .55s cubic-bezier(.22,.61,.36,1), transform .55s cubic-bezier(.22,.61,.36,1); }
#veride-cookie:not(.is-in) { pointer-events: none; }
#veride-cookie.is-in { transform: translate(-50%, 0); opacity: 1; pointer-events: auto; }
#veride-cookie .ck-card { background: rgba(43, 52, 54, .94); backdrop-filter: blur(14px) saturate(140%); border: 1px solid rgba(255,255,255,.08); border-radius: 14px; box-shadow: 0 30px 80px rgba(16,22,24,.45); overflow: hidden; color: #fff; }
#veride-cookie .ck-main { display: flex; align-items: center; gap: 30px; padding: 24px 28px; }
#veride-cookie .ck-copy { flex: 1 1 auto; min-width: 0; }
#veride-cookie .ck-title { display: flex; align-items: center; gap: 9px; font-family: var(--alt-font); font-size: 19px; letter-spacing: .4px; margin-bottom: 6px; }
#veride-cookie .ck-dot { width: 7px; height: 7px; border-radius: 50%; background: #97a98f; flex: none; }
#veride-cookie p { font-size: 13.5px; line-height: 22px; color: rgba(255,255,255,.58); margin: 0; text-wrap: pretty; }
#veride-cookie p a { color: rgba(255,255,255,.85); text-decoration: underline; text-underline-offset: 3px; }
#veride-cookie .ck-actions { display: flex; align-items: center; gap: 8px; flex: none; }
#veride-cookie button { font-family: var(--primary-font); font-size: 13px; font-weight: 600; padding: 11px 20px; border-radius: 8px; border: 1px solid transparent; cursor: pointer; transition: .25s ease; white-space: nowrap; }
#veride-cookie .ck-accept { background: #97a98f; color: #22282a; }
#veride-cookie .ck-accept:hover { background: #a9ba9f; }
#veride-cookie .ck-decline { background: rgba(255,255,255,.06); color: rgba(255,255,255,.8); border-color: rgba(255,255,255,.14); }
#veride-cookie .ck-decline:hover { background: rgba(255,255,255,.12); color: #fff; }
#veride-cookie .ck-settings { background: transparent; color: rgba(255,255,255,.55); padding: 11px 6px; }
#veride-cookie .ck-settings:hover { color: #fff; }
#veride-cookie .ck-panel { max-height: 0; overflow: hidden; transition: max-height .45s cubic-bezier(.22,.61,.36,1); border-top: 1px solid rgba(255,255,255,0); }
#veride-cookie.is-open .ck-panel { max-height: 420px; border-top-color: rgba(255,255,255,.09); }
#veride-cookie .ck-rows { padding: 6px 28px 24px; }
#veride-cookie .ck-row { display: flex; align-items: flex-start; gap: 18px; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.07); }
#veride-cookie .ck-row:last-child { border-bottom: 0; }
#veride-cookie .ck-row-copy { flex: 1 1 auto; }
#veride-cookie .ck-row-name { font-size: 14px; font-weight: 600; margin-bottom: 3px; }
#veride-cookie .ck-row-desc { font-size: 12.5px; line-height: 20px; color: rgba(255,255,255,.48); }
#veride-cookie .ck-toggle { flex: none; width: 42px; height: 24px; border-radius: 999px; background: rgba(255,255,255,.14); border: 0; padding: 0; position: relative; cursor: pointer; margin-top: 2px; }
#veride-cookie .ck-toggle::after { content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: transform .25s ease; }
#veride-cookie .ck-toggle[aria-checked="true"] { background: #97a98f; }
#veride-cookie .ck-toggle[aria-checked="true"]::after { transform: translateX(18px); }
#veride-cookie .ck-toggle[disabled] { opacity: .45; cursor: not-allowed; }
#veride-cookie .ck-save { margin-top: 18px; }
@media (max-width: 767px) {
  #veride-cookie .ck-main { flex-direction: column; align-items: stretch; gap: 18px; padding: 22px; }
  #veride-cookie .ck-actions { flex-wrap: wrap; }
  #veride-cookie .ck-actions button { flex: 1 1 auto; }
  #veride-cookie .ck-rows { padding: 6px 22px 22px; }
}
.veride-cookie-link { cursor: pointer; }
@keyframes verideSafetyFade { to { opacity: 0; visibility: hidden; } }
#veride-preloader { animation: verideSafetyFade .5s 4s forwards; }

/* ---- Mobile & Tablet ---- */
@media (max-width: 991px) {
  .container, .container-fluid, .container-lg, .container-md, .container-sm { width: 90% !important; max-width: 90% !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: auto !important; margin-right: auto !important; }
  :is(section,:where(.vr-sec)) { padding-top: 60px !important; padding-bottom: 60px !important; }
  :is(section,:where(.vr-sec)).p-0, :is(section,:where(.vr-sec)).pt-0 { padding-top: 0 !important; }
  :is(section,:where(.vr-sec)).p-0, :is(section,:where(.vr-sec)).pb-0 { padding-bottom: 0 !important; }
  h1, .h1 { font-size: 46px !important; line-height: 52px !important; }
  h2, .h2 { font-size: 34px !important; line-height: 42px !important; }
  h3, .h3 { font-size: 28px !important; line-height: 36px !important; }
  h4, .h4 { font-size: 24px !important; line-height: 32px !important; }
  h5, .h5 { font-size: 21px !important; line-height: 30px !important; }
  h6, .h6 { font-size: 19px !important; line-height: 28px !important; }
  p, body { font-size: 16px; line-height: 27px; }
  .fs-20 { font-size: 17px !important; line-height: 28px !important; }
  .fs-22, .fs-24, .fs-26 { font-size: 20px !important; line-height: 28px !important; }
  .w-50, .w-55, .w-60, .w-65, .w-70, .w-75, .w-80, .w-85, .w-90, .w-95 { width: 100% !important; }
  .overlap-gap-section { padding-top: 60px !important; }
}
@media (max-width: 767px) {
  #top { height: auto !important; min-height: 88vh !important; display: flex; align-items: center; padding-top: 150px !important; padding-bottom: 110px !important; }
  #top .fs-150 { font-size: 68px !important; line-height: 70px !important; letter-spacing: -1px !important; margin-bottom: 18px !important; }
  #top .container, #top .row, #top .h-100 { height: auto !important; }
  #top .container { width: 90% !important; }
  #top .fs-20 { font-size: 19px !important; line-height: 30px !important; }
  .hero-watermark { display: block !important; font-size: 170px !important; left: 30% !important; }
  .hero-photo { width: 115% !important; right: -12% !important; height: 72% !important; opacity: .38 !important; }
  .veride-mslider { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: 16px; margin-left: -5vw !important; margin-right: -5vw !important; padding: 2px 5vw 14px !important; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .veride-mslider::-webkit-scrollbar { display: none; }
  .veride-mslider > * { flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; scroll-snap-align: center; margin-bottom: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
  .veride-brands-slider > * { flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; border: 1px solid rgba(51,63,65,.12) !important; border-radius: 6px; padding: 26px 8px !important; }
  .veride-price-slider { align-items: stretch !important; }
  .veride-price-slider > .col-lg-6 { display: contents; }
  .veride-price-slider > .col-lg-6 > .row { flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; scroll-snap-align: center; border: 1px solid rgba(51,63,65,.14) !important; border-radius: 6px; padding: 20px 14px !important; text-align: left !important; margin: 0 !important; height: auto !important; align-self: stretch !important; align-content: center; }
  .veride-price-slider > .col-lg-6 > .row > [class*="col-sm-"] { border: 0 !important; padding: 4px 0 !important; text-align: left !important; }
  .veride-brand { font-size: 20px !important; white-space: nowrap; }
  .veride-mslider, .veride-price-slider { scroll-padding-left: 5vw; }
  /* linksbündig auf dem Smartphone */
  .text-center, .text-sm-center, .text-md-center, .text-lg-start, .text-sm-start { text-align: left !important; }
  .justify-content-center, .justify-content-sm-center, .align-items-center.justify-content-center { justify-content: flex-start !important; }
  .mx-auto { margin-left: 0 !important; }
  .veride-brands-slider > *, .veride-brands-slider > * .client-box { text-align: center !important; }
  .veride-price-slider p[style] { white-space: normal !important; }
  .veride-mhint { display: block; text-align: center; font-size: 13px; letter-spacing: 1px; text-transform: uppercase; color: rgba(51,63,65,.45); margin-top: 4px; }
}
@media (min-width: 768px) { .veride-mhint { display: none; } }


/* ---- Mobiles Menü ---- */
.veride-burger { display: none; }
#veride-menu { display: none; }
@media (max-width: 991px) { #veride-menu { display: flex; } }
@media (max-width: 991px) {
  header .navbar-toggler { display: none !important; }
  header .navbar-collapse { display: none !important; }
  .veride-burger { display: flex; flex-direction: column; justify-content: center; gap: 6px; width: 48px; height: 48px; padding: 0; margin: 0; border: 0; background: transparent; cursor: pointer; position: relative; z-index: 1002; }
  .veride-burger span { display: block; height: 2px; width: 26px; background: #333f41; border-radius: 2px; transition: transform .35s cubic-bezier(.65,.05,.36,1), opacity .2s ease, background-color .3s ease; }
  .veride-burger span:nth-child(2) { width: 18px; }
  body.veride-menu-open .veride-burger span { background: #fff !important; }
  body.veride-menu-open .veride-burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  body.veride-menu-open .veride-burger span:nth-child(2) { opacity: 0; }
  body.veride-menu-open .veride-burger span:nth-child(3) { width: 26px; transform: translateY(-8px) rotate(-45deg); }
  #veride-menu { position: fixed; inset: 0; z-index: 1001; background: #2b3436; background-image: radial-gradient(80% 60% at 85% 15%, rgba(151,169,143,.30), transparent 70%); display: flex; flex-direction: column; justify-content: center; padding: 110px 8vw 48px; opacity: 0; visibility: hidden; transform: translateY(-14px); transition: opacity .38s ease, transform .38s ease, visibility .38s; }
  body.veride-menu-open { overflow: hidden; }
  body.veride-menu-open #veride-menu { opacity: 1; visibility: visible; transform: none; }
  #veride-menu a.vm-link { display: block; font-family: var(--alt-font); font-size: 34px; line-height: 1.1; letter-spacing: -.5px; color: #fff; text-decoration: none; padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.10); opacity: 0; transform: translateY(14px); transition: opacity .4s ease, transform .4s ease, color .25s ease; }
  #veride-menu a.vm-link:hover, #veride-menu a.vm-link.active { color: #b7c6ae; }
  body.veride-menu-open #veride-menu a.vm-link { opacity: 1; transform: none; }
  #veride-menu a.vm-link:nth-child(1) { transition-delay: .10s; }
  #veride-menu a.vm-link:nth-child(2) { transition-delay: .16s; }
  #veride-menu a.vm-link:nth-child(3) { transition-delay: .22s; }
  #veride-menu a.vm-link:nth-child(4) { transition-delay: .28s; }
  #veride-menu a.vm-link:nth-child(5) { transition-delay: .34s; }
  #veride-menu a.vm-link:nth-child(6) { transition-delay: .40s; }
  #veride-menu .vm-foot { margin-top: 40px; display: flex; flex-direction: column; gap: 16px; align-items: flex-start; opacity: 0; transition: opacity .4s ease .48s; }
  body.veride-menu-open #veride-menu .vm-foot { opacity: 1; }
  #veride-menu .vm-foot a.vm-phone { color: rgba(255,255,255,.7); font-size: 16px; letter-spacing: .5px; text-decoration: none; }
  #veride-menu .vm-foot a.vm-cta { display: inline-block; background: #97a98f; color: #fff; font-size: 15px; letter-spacing: 1px; text-transform: uppercase; padding: 15px 30px; border-radius: 40px; text-decoration: none; }
  #veride-menu .vm-meta { margin-top: 28px; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,.35); }
}


@media (max-width: 991px) {
  #veride-menu { justify-content: flex-start; padding: 120px 8vw 40px; overflow-y: auto; }
  #veride-menu .vm-eyebrow { font-size: 11px; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,.35); margin-bottom: 26px; opacity: 0; transition: opacity .4s ease .06s; }
  body.veride-menu-open #veride-menu .vm-eyebrow { opacity: 1; }
  #veride-menu a.vm-link { display: flex !important; align-items: center; gap: 18px; font-size: 32px !important; padding: 15px 0 !important; }
  #veride-menu a.vm-link .vm-num { font-family: var(--primary-font); font-size: 11px; letter-spacing: 2px; color: rgba(255,255,255,.32); width: 24px; flex: 0 0 24px; }
  #veride-menu a.vm-link .vm-label { flex: 1; }
  #veride-menu a.vm-link .vm-arrow { font-size: 20px; color: #b7c6ae; opacity: 0; transform: translateX(-10px); transition: opacity .3s ease, transform .3s ease; }
  #veride-menu a.vm-link.active .vm-arrow, #veride-menu a.vm-link:hover .vm-arrow { opacity: 1; transform: none; }
  #veride-menu a.vm-link.active .vm-num { color: #b7c6ae; }
  #veride-menu > a.vm-link:nth-of-type(1) { transition-delay: .10s; }
  #veride-menu > a.vm-link:nth-of-type(2) { transition-delay: .16s; }
  #veride-menu > a.vm-link:nth-of-type(3) { transition-delay: .22s; }
  #veride-menu > a.vm-link:nth-of-type(4) { transition-delay: .28s; }
  #veride-menu > a.vm-link:nth-of-type(5) { transition-delay: .34s; }
  #veride-menu > a.vm-link:nth-of-type(6) { transition-delay: .40s; }
}


@keyframes verideForceIn { to { opacity: 1; transform: none; } }


@media (max-width: 991px) {
  #veride-menu .vm-close { position: absolute; top: 34px; right: 7vw; width: 48px; height: 48px; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: transparent; cursor: pointer; padding: 0; display: flex; align-items: center; justify-content: center; opacity: 0; transform: scale(.9); transition: opacity .35s ease .12s, transform .35s ease .12s, border-color .25s ease, background-color .25s ease; }
  body.veride-menu-open #veride-menu .vm-close { opacity: 1; transform: none; }
  #veride-menu .vm-close:hover { border-color: #b7c6ae; background: rgba(183,198,174,.12); }
  #veride-menu .vm-close::before, #veride-menu .vm-close::after { content: ''; position: absolute; width: 18px; height: 1.5px; background: #fff; border-radius: 2px; }
  #veride-menu .vm-close::before { transform: rotate(45deg); }
  #veride-menu .vm-close::after { transform: rotate(-45deg); }
  body.veride-menu-open .veride-burger { opacity: 0; pointer-events: none; }
}


@media (max-width: 991px) {
  header .col-auto.menu-order, header .navbar > .container > .col-auto { align-items: center !important; }
  .veride-burger { align-self: center !important; margin-block: auto !important; }
  #veride-menu { padding: 96px 8vw 36px !important; }
  #veride-menu .vm-close { top: 24px !important; }
  #veride-menu .vm-eyebrow { margin-bottom: 16px !important; }
  #veride-menu a.vm-link { font-size: 27px !important; padding: 11px 0 !important; }
  #veride-menu .vm-foot { margin-top: 26px !important; gap: 12px !important; }
  #veride-menu .vm-meta { margin-top: 18px !important; }
}

/* veride-icon-fix */
@media (max-width: 767px) {
  .icon-box, .absolute-middle-center, .rounded-circle, .vm-close, .swiper-pagination, .veride-brands-slider > *, .row.clients-style-04 > * { justify-content: center !important; }
  .icon-box.mx-auto, .absolute-middle-center.mx-auto, .rounded-circle.mx-auto { margin-left: auto !important; margin-right: auto !important; }
  .services-box-style-01 .icon-box { left: 50% !important; }
}


/* veride-nomotion */
@media (max-width: 767px) {
  *:not(#veride-menu):not(#veride-menu *):not(.veride-burger):not(.veride-burger *):not(#veride-preloader):not(#veride-preloader *) {
    animation: none !important;
    transition: none !important;
  }
  .animation-rotation, .animation-float { animation: none !important; }
  .veride-mslider, .veride-icon-slider, .veride-price-slider, .row.clients-style-04 { scroll-behavior: auto !important; }
}


/* veride-icon-fix2 */
@media (max-width: 767px) {
  .services-box-style-01 .box-image { position: relative !important; }
  .services-box-style-01 .icon-box {
    position: absolute !important; left: 50% !important; top: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important; display: flex !important;
    align-items: center !important; justify-content: center !important;
    text-align: center !important; opacity: 1 !important;
  }
  .services-box-style-01 .icon-box i {
    display: block !important; width: 1em !important; height: 1em !important;
    line-height: 1 !important; text-align: center !important; margin: 0 !important;
  }
}


body:not(.v-pl-on)::before { content: ""; position: fixed; inset: 0; z-index: 9998; background: #333f41; pointer-events: none; animation: vCoverOff .4s 4s forwards; }
@keyframes vCoverOff { to { opacity: 0; visibility: hidden; } }
#__bundler_err { display: none !important; }

.veride-snav { display: none; }
@media (max-width: 767px) {
  .veride-snav { display: flex; gap: 10px; margin-top: 22px; }
  .veride-snav button { width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(51,63,65,.25); background: #fff; color: #333f41; display: flex; align-items: center; justify-content: center; font-size: 18px; padding: 0; cursor: pointer; transition: background .2s, color .2s !important; }
  .veride-snav button:active { background: #333f41; color: #fff; }
}
