:root{--lorin-green:#245b22;--lorin-green-dark:#0f2b12;--lorin-black:#080b09;--lorin-text:#121512;--lorin-muted:#5d655d;--lorin-bg:#f6f5f1;--lorin-card:#fff;--lorin-line:rgba(20,30,18,.12);--lorin-shadow:0 18px 45px rgba(0,0,0,.12);--lorin-radius:18px}html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif;color:var(--lorin-text);background:var(--lorin-bg);overflow-x:hidden}.lorin-site-header{position:sticky;top:0;z-index:999;background:var(--lorin-black);box-shadow:0 12px 32px rgba(0,0,0,.2)}.lorin-header-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:28px;padding:0 28px}.lorin-logo{background:#fff;border-bottom-right-radius:72px;padding:20px 44px 22px 8px;margin-right:auto;line-height:0;min-width:255px}.lorin-logo img,.custom-logo-link img{width:245px;max-height:115px;object-fit:contain}.lorin-nav{display:flex;align-items:center;gap:24px}.lorin-nav ul{display:flex;align-items:center;gap:24px;margin:0;padding:0;list-style:none}.lorin-nav a{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#fff;text-decoration:none}.lorin-nav a:hover,.lorin-nav .current-menu-item>a{color:#80a957}.lorin-wa-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#2d6b29,#173d18);color:#fff!important;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:16px 22px;text-decoration:none;font-weight:800;box-shadow:0 10px 25px rgba(0,0,0,.18)}.lorin-wa-button small{display:block;font-size:12px;font-weight:500}.lorin-menu-toggle{display:none}.lorin-hero{position:relative;min-height:720px;display:grid;align-items:center;isolation:isolate;overflow:hidden;background:#eee}.lorin-hero__bg{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.94) 32%,rgba(255,255,255,.45) 52%,rgba(0,0,0,.18) 100%),radial-gradient(circle at 80% 55%,rgba(0,0,0,.2),transparent 23%),linear-gradient(135deg,#dbd7cb 0%,#f4f1e7 34%,#9b9d8a 35%,#2d382d 60%,#111 100%)}.lorin-hero__bg:after{content:"";position:absolute;right:2%;bottom:5%;width:min(58vw,680px);height:52%;background:url('../img/train-hero.svg') center/contain no-repeat;filter:drop-shadow(0 35px 20px rgba(0,0,0,.34))}.lorin-hero__content{max-width:1180px;width:100%;margin:0 auto;padding:120px 28px 170px}.lorin-kicker{color:var(--lorin-green);font-weight:900;text-transform:uppercase;letter-spacing:.04em}.lorin-hero h1{font-family:Georgia,serif;font-size:clamp(43px,6vw,72px);line-height:1.08;max-width:640px;margin:20px 0;color:#060606}.lorin-lead{font-size:21px;line-height:1.55;max-width:540px}.lorin-checks{display:grid;gap:18px;margin:28px 0;padding:0;list-style:none}.lorin-checks li{display:flex;gap:14px;align-items:center;font-weight:600}.lorin-checks li:before{content:"✓";display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--lorin-green);color:#fff;font-weight:900}.lorin-offer-card{display:grid;grid-template-columns:50px 1fr;max-width:425px;background:linear-gradient(135deg,#2c6929,#143916);color:#fff!important;border-radius:8px;padding:18px 20px;text-decoration:none;box-shadow:var(--lorin-shadow)}.lorin-offer-card span{grid-row:1/3;width:44px;height:44px;border:2px solid #fff;border-radius:10px;display:grid;place-items:center}.lorin-offer-card small{opacity:.9}.lorin-rating-card{position:absolute;right:7%;bottom:98px;background:#fff;border-radius:16px;padding:26px 34px;box-shadow:var(--lorin-shadow);min-width:330px}.lorin-rating-card strong{font-size:46px;color:#4285f4;margin-right:20px}.lorin-rating-card span{font-size:22px;font-weight:900}.lorin-rating-card span{display:inline-block;color:var(--lorin-green)}.lorin-rating-card small{display:block;border-top:1px solid var(--lorin-line);margin-top:18px;padding-top:18px;text-align:center}.lorin-trust-card{max-width:1100px;margin:-70px auto 0;position:relative;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:18px;box-shadow:var(--lorin-shadow);padding:34px}.lorin-trust-card article{text-align:center;padding:0 22px;border-right:1px solid var(--lorin-line)}.lorin-trust-card article:last-child{border-right:0}.lorin-trust-card span,.lorin-process span{display:inline-grid;place-items:center;width:78px;height:78px;border-radius:50%;background:linear-gradient(135deg,#2c6929,#123612);color:#fff;font-size:38px}.lorin-trust-card span{background:transparent;color:var(--lorin-green);font-size:50px}.lorin-trust-card h3,.lorin-process h3{font-size:15px;text-transform:uppercase}.lorin-trust-card p,.lorin-process p{color:var(--lorin-muted);font-size:15px;line-height:1.55}.lorin-process,.lorin-brands{max-width:1180px;margin:55px auto;text-align:center;padding:0 28px}.lorin-process h2,.lorin-brands h2{text-transform:uppercase;font-size:22px;letter-spacing:.04em}.lorin-process h2:after,.lorin-brands h2:after{content:"";display:block;width:68px;height:2px;background:var(--lorin-green);margin:12px auto}.lorin-process__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:32px}.lorin-process article{position:relative}.lorin-process article:not(:last-child):after{content:"";position:absolute;top:43px;left:72%;width:70%;border-top:3px dotted rgba(0,0,0,.45)}.lorin-process i{position:absolute;top:-16px;left:50%;transform:translateX(-50%);z-index:2;background:var(--lorin-green);color:#fff;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:13px;font-weight:900}.lorin-brand-row{display:flex;align-items:center;justify-content:space-around;gap:24px;flex-wrap:wrap;background:#fff;padding:25px;border-radius:14px}.lorin-brand-row b{font-size:28px;color:#d22;text-transform:uppercase}.lorin-brand-row b:nth-child(2){color:#0a8735}.lorin-brand-row b:nth-child(3){color:#e97814}.lorin-brand-row b:nth-child(5){color:#ef1b1b}.lorin-brand-row b:nth-child(6){color:#111}.lorin-footer{background:#080b09;color:#fff;padding:32px 28px}.lorin-footer-stats,.lorin-footer-cta{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.lorin-footer-stats div{border-right:1px solid rgba(255,255,255,.17);padding:10px 22px}.lorin-footer-stats div:last-child{border-right:0}.lorin-footer-stats strong{color:#80a957;text-transform:uppercase}.lorin-footer-stats span{display:block;font-size:14px}.lorin-footer-cta{margin-top:28px;border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:20px;grid-template-columns:230px 1fr auto;align-items:center}.lorin-footer-cta img{max-width:210px;background:#fff;border-radius:8px}.lorin-footer-cta p{margin:0;font-family:Georgia,serif;font-size:20px}@media(max-width:1024px){.lorin-header-inner{padding:0 18px}.lorin-logo{min-width:210px;padding-right:32px}.lorin-logo img,.custom-logo-link img{width:205px}.lorin-nav ul{gap:16px}.lorin-nav a{font-size:12px}.lorin-wa-button--nav{display:none}.lorin-hero{min-height:650px}.lorin-hero__content{padding-top:90px}.lorin-rating-card{right:28px;bottom:72px}.lorin-trust-card{grid-template-columns:repeat(2,1fr);margin-left:28px;margin-right:28px}.lorin-trust-card article{border-right:0;border-bottom:1px solid var(--lorin-line);padding:20px}.lorin-trust-card article:nth-child(n+3){border-bottom:0}.lorin-process__grid{grid-template-columns:repeat(2,1fr)}.lorin-process article:after{display:none}.lorin-footer-stats{grid-template-columns:repeat(2,1fr)}.lorin-footer-cta{grid-template-columns:1fr;text-align:center}.lorin-footer-cta img{margin:auto}}@media(max-width:767px){.lorin-header-inner{min-height:82px}.lorin-logo{min-width:190px;border-bottom-right-radius:42px;padding:12px 28px 12px 6px}.lorin-logo img,.custom-logo-link img{width:180px}.lorin-menu-toggle{display:grid;gap:4px;background:transparent;border:0;color:#fff;padding:10px}.lorin-menu-toggle span{display:block;width:28px;height:2px;background:#fff}.lorin-menu-toggle b{font-size:10px;text-transform:uppercase}.lorin-nav{position:fixed;left:0;right:0;top:82px;background:#080b09;padding:22px;display:none;box-shadow:0 25px 35px rgba(0,0,0,.25)}body.lorin-menu-open .lorin-nav{display:block}.lorin-nav ul{display:grid;gap:18px}.lorin-nav a{font-size:15px}.lorin-wa-button--nav{display:flex;margin-top:18px}.lorin-hero{min-height:auto}.lorin-hero__bg{opacity:.72}.lorin-hero__bg:after{right:-22%;bottom:0;width:95vw;height:38%;opacity:.6}.lorin-hero__content{padding:56px 22px 330px}.lorin-hero h1{font-size:42px}.lorin-lead{font-size:18px}.lorin-rating-card{left:22px;right:22px;bottom:30px;min-width:0;padding:20px}.lorin-trust-card{grid-template-columns:1fr;margin:-10px 18px 0;padding:18px}.lorin-trust-card article{border-bottom:1px solid var(--lorin-line)!important}.lorin-trust-card article:last-child{border-bottom:0!important}.lorin-process,.lorin-brands{margin:42px auto}.lorin-process__grid{grid-template-columns:1fr;gap:28px}.lorin-process span{width:68px;height:68px;font-size:32px}.lorin-brand-row{gap:18px}.lorin-brand-row b{font-size:22px}.lorin-footer{padding:26px 18px}.lorin-footer-stats{grid-template-columns:1fr}.lorin-footer-stats div{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);text-align:center}.lorin-footer-stats div:last-child{border-bottom:0}.lorin-footer-cta{padding:18px}.lorin-wa-button{width:100%}}

/* =========================================================
   Lorin-Bahn 1.1.0 – Elementor/Royal Elementor Addons layer
   ========================================================= */
:root{
  --lb-blue:#1b365d;
  --lb-blue-dark:#0c1d33;
  --lb-gold:#d4a437;
  --lb-gold-hover:#f0bc32;
  --lb-green:#25d366;
  --lb-cream:#f7f4ed;
  --lb-light:#f7f7f7;
  --lb-white:#fff;
  --lb-text:#1e1e1e;
  --lb-muted:#667085;
  --lb-border:rgba(27,54,93,.14);
  --lb-shadow:0 18px 48px rgba(16,24,40,.13);
  --lb-radius:18px;
  --lb-radius-lg:28px;
}
body.lorin-bahn-theme{background:var(--lb-cream);color:var(--lb-text)}
body.lorin-bahn-theme .elementor-section,body.lorin-bahn-theme .e-con{box-sizing:border-box}

/* Royal Elementor Addons Header/Menu – set class lb-header on the header container */
.lb-header,.elementor-location-header .lb-header{position:sticky;top:0;z-index:9999;background:var(--lb-blue-dark);box-shadow:0 14px 32px rgba(0,0,0,.22);transition:box-shadow .25s ease,background .25s ease}
.lb-header .e-con-inner,.lb-header.elementor-element{overflow:visible!important}
.lb-header a{transition:color .22s ease,background .22s ease,border-color .22s ease,transform .22s ease}
.lb-header .custom-logo-link img,.lb-header .elementor-widget-theme-site-logo img,.lb-header .elementor-widget-image img{max-height:82px;width:auto;object-fit:contain}

/* RAE Menu robust selectors */
.lb-header .wpr-nav-menu .menu-item a,.lb-header .wpr-nav-menu a,.lb-header .wpr-main-menu a,.lb-header .wpr-menu-item,.lb-header nav a{color:#fff!important;font-weight:800;letter-spacing:.035em;text-transform:uppercase;text-decoration:none;position:relative}
.lb-header .wpr-nav-menu .menu-item a:after,.lb-header .wpr-main-menu a:after,.lb-header nav > ul > li > a:after{content:"";position:absolute;left:0;right:auto;bottom:-8px;width:0;height:2px;background:var(--lb-gold);transition:width .25s ease;border-radius:999px}
.lb-header .wpr-nav-menu .menu-item a:hover,.lb-header .wpr-nav-menu .current-menu-item>a,.lb-header .wpr-main-menu a:hover,.lb-header .wpr-main-menu .current-menu-item>a,.lb-header nav a:hover{color:var(--lb-gold-hover)!important}
.lb-header .wpr-nav-menu .menu-item a:hover:after,.lb-header .wpr-nav-menu .current-menu-item>a:after,.lb-header .wpr-main-menu a:hover:after,.lb-header .wpr-main-menu .current-menu-item>a:after,.lb-header nav > ul > li > a:hover:after{width:100%}
.lb-header .wpr-sub-menu,.lb-header .sub-menu{background:#fff!important;border:1px solid rgba(27,54,93,.1)!important;border-radius:14px!important;box-shadow:var(--lb-shadow)!important;padding:10px!important;overflow:hidden!important}
.lb-header .wpr-sub-menu a,.lb-header .sub-menu a{color:var(--lb-blue)!important;border-radius:10px!important;padding:11px 14px!important;text-transform:none!important;letter-spacing:0!important}
.lb-header .wpr-sub-menu a:hover,.lb-header .sub-menu a:hover{background:rgba(212,164,55,.14)!important;color:var(--lb-blue-dark)!important}

/* Header CTA – assign class lb-header-cta or use shortcode */
.lb-header-cta a,.lb-header .lb-header-cta,.lb-wa-shortcode,.lb-mobile-wa a,.lb-mobile-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--lb-green),#138a42)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:13px 20px!important;font-weight:900!important;text-decoration:none!important;box-shadow:0 14px 26px rgba(37,211,102,.26)!important;line-height:1.1!important}
.lb-header-cta a:hover,.lb-header .lb-header-cta:hover,.lb-wa-shortcode:hover,.lb-mobile-wa a:hover,.lb-mobile-wa:hover{transform:translateY(-1px);filter:saturate(1.08) brightness(1.02);color:#fff!important}

/* RAE Mobile menu/offcanvas stability */
.lb-header .wpr-mobile-toggle,.lb-header .wpr-mobile-menu-toggle,.lb-header .wpr-hamburger,.lb-header .wpr-menu-toggle,.lb-header .wpr-nav-menu-burger{color:#fff!important;background:transparent!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:12px!important;padding:10px!important;box-shadow:none!important}
.lb-header .wpr-mobile-toggle:hover,.lb-header .wpr-mobile-menu-toggle:hover,.lb-header .wpr-hamburger:hover,.lb-header .wpr-menu-toggle:hover{border-color:var(--lb-gold)!important;color:var(--lb-gold)!important}
.lb-header .wpr-mobile-nav-menu,.lb-header .wpr-mobile-menu,.lb-header .wpr-mobile-menu-container,.lb-header .wpr-offcanvas-content,.lb-header .wpr-nav-menu-mobile{background:var(--lb-blue-dark)!important;color:#fff!important;box-shadow:-18px 0 45px rgba(0,0,0,.35)!important;z-index:10001!important}
.lb-header .wpr-mobile-nav-menu a,.lb-header .wpr-mobile-menu a,.lb-header .wpr-nav-menu-mobile a{color:#fff!important;font-size:17px!important;font-weight:800!important;padding:15px 20px!important;border-bottom:1px solid rgba(255,255,255,.11)!important;text-transform:none!important}
.lb-header .wpr-mobile-nav-menu a:hover,.lb-header .wpr-mobile-menu a:hover,.lb-header .wpr-nav-menu-mobile a:hover{background:rgba(212,164,55,.13)!important;color:var(--lb-gold-hover)!important}


/* Elementor section system */
.lb-section{padding:clamp(56px,7vw,100px) 24px}.lb-section--light{background:var(--lb-light)}.lb-section--white{background:#fff}.lb-section--blue{background:linear-gradient(135deg,var(--lb-blue-dark),var(--lb-blue));color:#fff}.lb-inner{max-width:1180px;margin:0 auto}.lb-grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}.lb-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.lb-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.lb-kicker{color:var(--lb-gold);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lb-h1,.lb-h2,.lb-page-hero h1,.lb-brand-hero h1{font-family:Georgia,serif;color:var(--lb-blue-dark);line-height:1.08}.lb-h1,.lb-brand-hero h1{font-size:clamp(42px,5vw,72px)}.lb-h2{font-size:clamp(30px,3.2vw,48px)}.lb-lead{font-size:clamp(18px,2vw,22px);line-height:1.58;color:#344054}.lb-card{background:#fff;border:1px solid var(--lb-border);border-radius:var(--lb-radius);padding:26px;box-shadow:0 10px 28px rgba(16,24,40,.07)}.lb-card:hover{transform:translateY(-3px);box-shadow:var(--lb-shadow);border-color:rgba(212,164,55,.4)}

/* Startseite classes */
.lb-hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#fff 0%,#fff 44%,rgba(27,54,93,.08) 44%,rgba(27,54,93,.18) 100%)}
.lb-hero .lb-card,.lb-trustbox{border-left:5px solid var(--lb-gold)}.lb-usp .lb-card{text-align:center}.lb-usp .lb-card .elementor-icon,.lb-process .elementor-icon,.lb-brand-types .elementor-icon{color:var(--lb-gold)!important;fill:var(--lb-gold)!important}.lb-process .lb-card{position:relative;text-align:center}.lb-process .lb-card:not(:last-child):after{content:"";position:absolute;top:50%;right:-28px;width:32px;border-top:3px dotted rgba(27,54,93,.25)}.lb-brands .lb-card{text-align:center;font-weight:900;color:var(--lb-blue);text-transform:uppercase}.lb-about .elementor-icon-list-item{align-items:flex-start}.lb-about .elementor-icon-list-icon{margin-top:4px;color:var(--lb-gold)!important}

/* Landingpages */
.lb-brand-hero{background:radial-gradient(circle at 80% 20%,rgba(212,164,55,.18),transparent 28%),linear-gradient(135deg,#fff,var(--lb-cream));padding:clamp(62px,8vw,110px) 24px}.lb-brand-hero .lb-card{background:rgba(255,255,255,.88);backdrop-filter:blur(6px)}.lb-brand-types .lb-card,.lb-brand-value .lb-card{text-align:center}.lb-related-brands a{text-decoration:none;color:var(--lb-blue)!important}.lb-related-brands .lb-card:hover{background:rgba(212,164,55,.11)}

/* Normal subpages */
.lb-page-hero{padding:clamp(54px,7vw,92px) 24px;background:linear-gradient(135deg,var(--lb-blue-dark),var(--lb-blue));color:#fff;text-align:center}.lb-page-hero h1,.lb-page-hero .lb-h1{color:#fff}.lb-page-hero p{color:rgba(255,255,255,.86);max-width:760px;margin-left:auto;margin-right:auto}.lb-content-narrow{max-width:860px;margin:0 auto}.lb-process-detail .lb-card{border-left:5px solid var(--lb-gold)}

/* FAQ – Elementor Accordion/Toggle + Royal Addons accordion */
.lb-faq,.lb-faq-home,.lb-brand-faq,.lb-process-faq,.lb-faq-accordion{--faq-gap:16px}.lb-faq .elementor-accordion .elementor-accordion-item,.lb-faq-home .elementor-accordion .elementor-accordion-item,.lb-brand-faq .elementor-accordion .elementor-accordion-item,.lb-faq-accordion .elementor-accordion .elementor-accordion-item,.lb-faq .elementor-toggle .elementor-toggle-item,.lb-faq-home .elementor-toggle .elementor-toggle-item,.lb-brand-faq .elementor-toggle .elementor-toggle-item,.lb-faq-accordion .elementor-toggle .elementor-toggle-item,.lb-faq .wpr-advanced-accordion-item,.lb-faq-home .wpr-advanced-accordion-item,.lb-brand-faq .wpr-advanced-accordion-item,.lb-faq-accordion .wpr-advanced-accordion-item{background:#fff!important;border:1px solid var(--lb-border)!important;border-radius:16px!important;margin-bottom:var(--faq-gap)!important;overflow:hidden!important;box-shadow:0 8px 22px rgba(16,24,40,.06)!important;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.lb-faq .elementor-tab-title,.lb-faq-home .elementor-tab-title,.lb-brand-faq .elementor-tab-title,.lb-faq-accordion .elementor-tab-title,.lb-faq .wpr-advanced-accordion-title,.lb-faq-home .wpr-advanced-accordion-title,.lb-brand-faq .wpr-advanced-accordion-title,.lb-faq-accordion .wpr-advanced-accordion-title{font-weight:900!important;color:var(--lb-blue-dark)!important;padding:20px 24px!important;line-height:1.35!important}.lb-faq .elementor-accordion-item:hover,.lb-faq-home .elementor-accordion-item:hover,.lb-brand-faq .elementor-accordion-item:hover,.lb-faq-accordion .elementor-accordion-item:hover,.lb-faq .wpr-advanced-accordion-item:hover{border-left:5px solid var(--lb-gold)!important;box-shadow:var(--lb-shadow)!important}.lb-faq .elementor-tab-content,.lb-faq-home .elementor-tab-content,.lb-brand-faq .elementor-tab-content,.lb-faq-accordion .elementor-tab-content,.lb-faq .wpr-advanced-accordion-content,.lb-faq-home .wpr-advanced-accordion-content,.lb-brand-faq .wpr-advanced-accordion-content,.lb-faq-accordion .wpr-advanced-accordion-content{background:#f5f8fc!important;color:#344054!important;padding:0 24px 22px!important;line-height:1.65!important;border-top:1px solid rgba(27,54,93,.08)!important}.lb-faq .elementor-accordion-icon,.lb-faq-home .elementor-accordion-icon,.lb-brand-faq .elementor-accordion-icon,.lb-faq-accordion .elementor-accordion-icon{color:var(--lb-gold)!important}

/* CTA blocks */
.lb-cta{background:linear-gradient(135deg,var(--lb-blue-dark),var(--lb-blue));color:#fff;border-radius:var(--lb-radius-lg);padding:clamp(34px,5vw,58px);box-shadow:var(--lb-shadow);overflow:hidden;position:relative}.lb-cta:after{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;background:rgba(212,164,55,.18)}.lb-cta h2,.lb-cta .elementor-heading-title{color:#fff!important}.lb-cta p{color:rgba(255,255,255,.86)}.lb-cta .elementor-button{background:var(--lb-gold)!important;color:var(--lb-blue-dark)!important;border-radius:999px!important;font-weight:900!important}.lb-cta .elementor-button:hover{background:var(--lb-gold-hover)!important;transform:translateY(-1px)}

@media(max-width:1024px){.lb-grid-4{grid-template-columns:repeat(2,1fr)}.lb-grid-3{grid-template-columns:repeat(2,1fr)}.lb-grid-2{grid-template-columns:1fr}.lb-process .lb-card:after{display:none}.lb-header .custom-logo-link img,.lb-header .elementor-widget-theme-site-logo img,.lb-header .elementor-widget-image img{max-height:70px}}
@media(max-width:767px){.lb-section{padding:48px 18px}.lb-grid-4,.lb-grid-3,.lb-grid-2{grid-template-columns:1fr;gap:18px}.lb-card{padding:22px;border-radius:16px}.lb-h1,.lb-brand-hero h1{font-size:38px}.lb-h2{font-size:30px}.lb-header{min-height:76px}.lb-header .custom-logo-link img,.lb-header .elementor-widget-theme-site-logo img,.lb-header .elementor-widget-image img{max-height:58px}.lb-header .wpr-mobile-nav-menu,.lb-header .wpr-mobile-menu,.lb-header .wpr-nav-menu-mobile{width:min(88vw,340px)!important}.lb-cta{border-radius:20px;padding:28px 20px}.lb-page-hero,.lb-brand-hero{padding:50px 18px}.lb-faq .elementor-tab-title,.lb-faq-home .elementor-tab-title,.lb-brand-faq .elementor-tab-title,.lb-faq-accordion .elementor-tab-title{padding:18px!important}}

/* =========================================================
   Lorin-Bahn 1.2.2 – Header exakt nach Vorlage / RAE Menu
   Ziel: Elementor-Header mit Klassen lb-header, lb-header-logo,
   lb-header-menu, lb-header-cta. Kein WhatsApp Overlay.
   ========================================================= */
body.lorin-bahn-theme .lb-header{
  --lb-header-bg:#080b09;
  --lb-header-green:#245b22;
  --lb-header-green-dark:#173d18;
  --lb-header-gold:#80a957;
  position:sticky!important;
  top:0!important;
  z-index:9999!important;
  width:100%!important;
  min-height:86px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
  background:var(--lb-header-bg)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.18)!important;
  overflow:visible!important;
}
body.lorin-bahn-theme .lb-header > .e-con-inner{width:min(100%,1180px)!important;max-width:1180px!important;margin:0 auto!important;display:flex!important;align-items:stretch!important;justify-content:space-between!important;gap:0!important;padding:0!important;overflow:visible!important;}
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{padding-left:0!important;padding-right:0!important;}
body.lorin-bahn-theme .lb-header .lb-header-logo,
body.lorin-bahn-theme .lb-header .lb-header-menu,
body.lorin-bahn-theme .lb-header .lb-header-cta{min-height:86px!important;display:flex!important;align-items:center!important;margin:0!important;padding:0!important;overflow:visible!important;}
body.lorin-bahn-theme .lb-header .lb-header-logo{position:relative!important;flex:0 0 272px!important;width:272px!important;max-width:272px!important;background:#fff!important;border-radius:0 0 54px 0!important;z-index:3!important;justify-content:flex-start!important;padding-left:18px!important;padding-right:54px!important;box-shadow:8px 0 24px rgba(0,0,0,.12)!important;}
body.lorin-bahn-theme .lb-header .lb-header-logo:after{content:"";position:absolute;right:-42px;top:0;width:82px;height:86px;background:#fff;border-radius:0 0 70px 0;transform:skewX(-31deg);transform-origin:top left;z-index:-1;box-shadow:8px 0 18px rgba(0,0,0,.06);}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner{width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;padding:0!important;margin:0!important;}
body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:185px!important;max-height:74px!important;width:auto!important;height:auto!important;object-fit:contain!important;display:block!important;}
body.lorin-bahn-theme .lb-header .lb-header-menu{flex:1 1 auto!important;justify-content:center!important;padding-left:56px!important;padding-right:18px!important;background:var(--lb-header-bg)!important;}
body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner{width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important;}
body.lorin-bahn-theme .lb-header .lb-header-cta{flex:0 0 158px!important;width:158px!important;max-width:158px!important;justify-content:flex-end!important;background:var(--lb-header-bg)!important;padding-right:0!important;}
body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner{width:100%!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;padding:0!important;margin:0!important;}

/* Royal Elementor Addons Desktop-Menü – kompakt wie Vorlage */
body.lorin-bahn-theme .lb-header .wpr-nav-menu-container,
body.lorin-bahn-theme .lb-header .wpr-nav-menu-horizontal{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;}
body.lorin-bahn-theme .lb-header .wpr-nav-menu{display:flex!important;align-items:center!important;justify-content:center!important;gap:22px!important;margin:0!important;padding:0!important;list-style:none!important;}
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li{margin:0!important;padding:0!important;}
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a,
body.lorin-bahn-theme .lb-header .wpr-menu-item,
body.lorin-bahn-theme .lb-header nav.wpr-nav-menu-container a{font-size:11px!important;line-height:1!important;font-weight:800!important;letter-spacing:.045em!important;text-transform:uppercase!important;color:#fff!important;padding:34px 0 31px!important;background:transparent!important;text-decoration:none!important;border:0!important;position:relative!important;}
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a:after,
body.lorin-bahn-theme .lb-header .wpr-menu-item:after{content:""!important;position:absolute!important;left:0!important;right:auto!important;bottom:22px!important;width:0!important;height:2px!important;background:var(--lb-header-gold)!important;border-radius:99px!important;transition:width .22s ease!important;}
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a:hover,
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li.current-menu-item > a,
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li.current_page_item > a,
body.lorin-bahn-theme .lb-header .wpr-menu-item:hover,
body.lorin-bahn-theme .lb-header .wpr-active-menu-item{color:var(--lb-header-gold)!important;background:transparent!important;}
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a:hover:after,
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li.current-menu-item > a:after,
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li.current_page_item > a:after,
body.lorin-bahn-theme .lb-header .wpr-active-menu-item:after{width:100%!important;}

/* WhatsApp/CTA im Header – nur Button/Link stylen, niemals den Container aufblasen */
body.lorin-bahn-theme .lb-header .lb-header-cta{background:var(--lb-header-bg)!important;box-shadow:none!important;border-radius:0!important;}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button,
body.lorin-bahn-theme .lb-header .lb-mobile-wa a,
body.lorin-bahn-theme .lb-header a.lb-mobile-wa{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;width:auto!important;min-width:112px!important;max-width:146px!important;min-height:42px!important;padding:8px 13px!important;border-radius:7px!important;background:linear-gradient(135deg,var(--lb-header-green),var(--lb-header-green-dark))!important;color:#fff!important;font-size:10px!important;line-height:1.12!important;font-weight:800!important;text-transform:none!important;text-decoration:none!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 8px 20px rgba(36,91,34,.28)!important;}
body.lorin-bahn-theme .lb-header .lb-header-cta a:before,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:before,
body.lorin-bahn-theme .lb-header a.lb-header-button:before{content:"◉";font-size:13px;line-height:1;color:#fff;opacity:.95;}
body.lorin-bahn-theme .lb-header .lb-header-cta a:hover,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:hover,
body.lorin-bahn-theme .lb-header a.lb-header-button:hover{transform:translateY(-1px)!important;background:linear-gradient(135deg,#2f712c,#1a471c)!important;color:#fff!important;filter:none!important;}
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text{white-space:normal!important;}

/* RAE Mobile – Logo links, Burger rechts, Menü sauber aufklappend */
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header{min-height:78px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .lb-header .lb-header-menu,
  body.lorin-bahn-theme .lb-header .lb-header-cta{min-height:78px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo{flex:0 0 222px!important;width:222px!important;max-width:222px!important;border-radius:0 0 46px 0!important;padding-left:14px!important;padding-right:42px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{right:-34px;width:68px;height:78px;border-radius:0 0 58px 0;}
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:158px!important;max-height:62px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-menu{justify-content:flex-end!important;padding-left:36px!important;padding-right:16px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-cta{display:none!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-wrap{display:flex!important;justify-content:flex-end!important;align-items:center!important;width:100%!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle,
  body.lorin-bahn-theme .lb-header .wpr-mobile-menu-toggle,
  body.lorin-bahn-theme .lb-header .wpr-hamburger,
  body.lorin-bahn-theme .lb-header .wpr-menu-toggle{width:44px!important;height:44px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:9px!important;background:rgba(255,255,255,.03)!important;padding:10px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line{width:22px!important;height:2px!important;background:#fff!important;border-radius:99px!important;display:block!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{top:78px!important;background:#080b09!important;border-top:1px solid rgba(255,255,255,.12)!important;box-shadow:0 20px 34px rgba(0,0,0,.28)!important;padding:18px!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu li{margin:0!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu a{display:block!important;color:#fff!important;font-size:15px!important;font-weight:800!important;text-align:left!important;text-transform:uppercase!important;letter-spacing:.035em!important;padding:15px 12px!important;border-bottom:1px solid rgba(255,255,255,.10)!important;background:transparent!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu a:hover,
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu .wpr-active-menu-item{color:var(--lb-header-gold)!important;background:rgba(128,169,87,.10)!important;}
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-header{min-height:74px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .lb-header .lb-header-menu{min-height:74px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo{flex:0 0 198px!important;width:198px!important;max-width:198px!important;border-radius:0 0 40px 0!important;padding-left:10px!important;padding-right:34px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{right:-28px;width:58px;height:74px;border-radius:0 0 50px 0;}
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:138px!important;max-height:56px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-menu{padding-left:24px!important;padding-right:12px!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{top:74px!important;width:100vw!important;left:0!important;right:0!important;padding:16px 18px 20px!important;}
}
@media(max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{flex-basis:174px!important;width:174px!important;max-width:174px!important;padding-right:30px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{right:-24px;width:50px;}
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:122px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-menu{padding-left:18px!important;}
}

/* =========================================================
   Lorin-Bahn 1.2.3 – Header-Korrektur Vorlage
   - Logo-Bogen gedreht: Schwarz oben weiter links, unten weiter rechts
   - CTA kompakt, nicht mehr an rechter Browserkante
   ========================================================= */
body.lorin-bahn-theme .lb-header{
  padding-right:24px!important;
  background:#080b09!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo{
  flex:0 0 286px!important;
  width:286px!important;
  max-width:286px!important;
  min-height:86px!important;
  background:#fff!important;
  border-radius:0!important;
  clip-path:polygon(0 0, calc(100% - 82px) 0, 100% 100%, 0 100%)!important;
  padding-left:20px!important;
  padding-right:78px!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:before{
  content:"";
  position:absolute;
  right:10px;
  bottom:-18px;
  width:118px;
  height:90px;
  border-radius:0 0 100% 0;
  border-right:16px solid rgba(230,230,230,.95);
  border-bottom:16px solid rgba(230,230,230,.95);
  opacity:.95;
  pointer-events:none;
  z-index:0;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:after{
  display:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image{
  position:relative!important;
  z-index:2!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner{
  justify-content:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img{
  max-width:145px!important;
  max-height:76px!important;
}
body.lorin-bahn-theme .lb-header .lb-header-menu{
  padding-left:18px!important;
  padding-right:18px!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta{
  flex:0 0 142px!important;
  width:142px!important;
  max-width:142px!important;
  justify-content:center!important;
  padding-right:0!important;
  margin-right:0!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner{
  justify-content:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button{
  min-width:106px!important;
  max-width:118px!important;
  min-height:44px!important;
  padding:7px 10px!important;
  border-radius:8px!important;
  font-size:10px!important;
  line-height:1.08!important;
  background:linear-gradient(135deg,#2c7a2f,#1e5d24)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.20), 0 0 18px rgba(44,122,47,.18)!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a:before,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:before,
body.lorin-bahn-theme .lb-header a.lb-header-button:before{
  content:""!important;
  width:14px!important;
  height:14px!important;
  flex:0 0 14px!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 4px #2c7a2f!important;
  opacity:1!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header{padding-right:14px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 232px!important;
    width:232px!important;
    max-width:232px!important;
    min-height:78px!important;
    clip-path:polygon(0 0, calc(100% - 64px) 0, 100% 100%, 0 100%)!important;
    padding-left:14px!important;
    padding-right:58px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:before{
    right:7px;
    bottom:-16px;
    width:92px;
    height:72px;
    border-right-width:13px;
    border-bottom-width:13px;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:132px!important;max-height:62px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-menu{padding-left:12px!important;padding-right:0!important;}
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-header{padding-right:10px!important;min-height:72px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 198px!important;
    width:198px!important;
    max-width:198px!important;
    min-height:72px!important;
    clip-path:polygon(0 0, calc(100% - 54px) 0, 100% 100%, 0 100%)!important;
    padding-left:10px!important;
    padding-right:50px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:before{
    right:5px;
    bottom:-14px;
    width:76px;
    height:62px;
    border-right-width:11px;
    border-bottom-width:11px;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:116px!important;max-height:54px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-menu{padding-left:8px!important;padding-right:0!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{top:72px!important;}
}
@media(max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex-basis:174px!important;
    width:174px!important;
    max-width:174px!important;
    clip-path:polygon(0 0, calc(100% - 46px) 0, 100% 100%, 0 100%)!important;
    padding-right:42px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:104px!important;}
}

/* =========================================================
   Lorin-Bahn 1.2.4 – Header Feinschliff
   - Weißer Logo-Bereich endet nicht mehr diagonal, sondern mit Bogen
   - CTA wird vom rechten Browserrand gelöst und kompakter ausgerichtet
   ========================================================= */
body.lorin-bahn-theme .lb-header{
  padding-right:0!important;
  background:#080b09!important;
}

/* Elementor-Header-Kinder auf eine saubere Arbeitsbreite bringen,
   damit der CTA nicht an der Browserkante klebt. */
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
  justify-content:center!important;
}
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-logo,
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-menu,
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-cta{
  align-self:stretch!important;
}
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-menu{
  flex:1 1 760px!important;
  max-width:820px!important;
}

/* Logo-Fläche: weißer Bereich mit echter Bogenkante zum schwarzen Menü. */
body.lorin-bahn-theme .lb-header .lb-header-logo{
  flex:0 0 300px!important;
  width:300px!important;
  max-width:300px!important;
  min-height:86px!important;
  background:#fff!important;
  clip-path:none!important;
  border-radius:0!important;
  padding-left:22px!important;
  padding-right:96px!important;
  overflow:hidden!important;
  box-shadow:none!important;
  isolation:isolate!important;
}

/* Schwarzer Kreis schneidet die weiße Fläche als Bogen aus:
   oben beginnt Schwarz früher, unten läuft Weiß weiter nach rechts. */
body.lorin-bahn-theme .lb-header .lb-header-logo:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  right:-108px!important;
  top:-126px!important;
  width:245px!important;
  height:245px!important;
  background:#080b09!important;
  border-radius:50%!important;
  z-index:1!important;
  pointer-events:none!important;
  box-shadow:none!important;
  transform:none!important;
}

/* dezenter grauer Innenbogen wie in der Vorlage */
body.lorin-bahn-theme .lb-header .lb-header-logo:before{
  content:""!important;
  position:absolute!important;
  left:-34px!important;
  bottom:10px!important;
  width:112px!important;
  height:112px!important;
  border-radius:50%!important;
  border:14px solid rgba(226,226,226,.92)!important;
  background:transparent!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:1!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image{
  position:relative!important;
  z-index:2!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner{
  justify-content:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img{
  max-width:138px!important;
  max-height:74px!important;
}

/* CTA: kleinere Vorlage, optisch im Header eingerückt */
body.lorin-bahn-theme .lb-header .lb-header-cta{
  flex:0 0 176px!important;
  width:176px!important;
  max-width:176px!important;
  justify-content:center!important;
  padding-right:28px!important;
  margin-right:0!important;
  background:#080b09!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner{
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button{
  min-width:116px!important;
  max-width:122px!important;
  min-height:44px!important;
  padding:7px 10px!important;
  border-radius:8px!important;
  font-size:10px!important;
  line-height:1.08!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 238px!important;
    width:238px!important;
    max-width:238px!important;
    min-height:78px!important;
    padding-left:14px!important;
    padding-right:74px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    right:-88px!important;
    top:-108px!important;
    width:210px!important;
    height:210px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:before{
    left:-32px!important;
    bottom:8px!important;
    width:94px!important;
    height:94px!important;
    border-width:12px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:122px!important;max-height:62px!important;}
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-menu{max-width:none!important;}
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 194px!important;
    width:194px!important;
    max-width:194px!important;
    min-height:72px!important;
    padding-left:10px!important;
    padding-right:58px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    right:-72px!important;
    top:-92px!important;
    width:178px!important;
    height:178px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:before{
    left:-30px!important;
    bottom:8px!important;
    width:78px!important;
    height:78px!important;
    border-width:10px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:104px!important;max-height:54px!important;}
}

@media(max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex-basis:170px!important;
    width:170px!important;
    max-width:170px!important;
    padding-right:50px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    right:-66px!important;
    top:-88px!important;
    width:166px!important;
    height:166px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:96px!important;}
}

/* =========================================================
   Lorin-Bahn 1.2.5 – Header Bogen + WhatsApp CTA Lesbarkeit
   - Logo-/Menü-Übergang als echter Bogen statt seitlicher Block/Diagonale
   - Logo sitzt wieder sauber innerhalb der weißen Fläche
   - CTA ist eingerückt, kompakt, kontrastreich und erhält ein WhatsApp Icon per CSS
   ========================================================= */
body.lorin-bahn-theme .lb-header{
  --lb-header-dark:#080b09;
  --lb-header-green:#2f7d32;
  --lb-header-green-hover:#3d963f;
  --lb-header-light:#ffffff;
  min-height:86px!important;
  background:var(--lb-header-dark)!important;
  padding-left:0!important;
  padding-right:clamp(18px, calc((100vw - 1420px) / 2 + 18px), 72px)!important;
  overflow:visible!important;
}

/* Header-Kinder dürfen nicht bis an den Browserrand gedrückt werden */
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
  justify-content:flex-start!important;
  align-items:stretch!important;
  gap:0!important;
}
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-logo,
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-menu,
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-cta{
  align-self:stretch!important;
}

/* Weißer Logo-Bereich mit gebogener rechter Schnittkante */
body.lorin-bahn-theme .lb-header .lb-header-logo{
  position:relative!important;
  flex:0 0 315px!important;
  width:315px!important;
  max-width:315px!important;
  min-height:86px!important;
  background:var(--lb-header-light)!important;
  clip-path:path('M 0 0 L 205 0 C 226 13 244 33 260 54 C 271 67 283 78 300 86 L 0 86 Z')!important;
  border-radius:0!important;
  padding:0 78px 0 72px!important;
  overflow:hidden!important;
  z-index:3!important;
}

/* alte Kreis-/Keil-Lösung deaktivieren */
body.lorin-bahn-theme .lb-header .lb-header-logo:after{
  content:none!important;
  display:none!important;
}

/* dezenter grauer Bogen links unten wie in der Vorlage */
body.lorin-bahn-theme .lb-header .lb-header-logo:before{
  content:""!important;
  position:absolute!important;
  left:-45px!important;
  bottom:7px!important;
  width:118px!important;
  height:118px!important;
  border-radius:50%!important;
  border:13px solid rgba(226,226,226,.88)!important;
  background:transparent!important;
  z-index:0!important;
  opacity:1!important;
  pointer-events:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner{
  justify-content:center!important;
  align-items:center!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img{
  display:block!important;
  width:auto!important;
  max-width:118px!important;
  max-height:66px!important;
  object-fit:contain!important;
}

body.lorin-bahn-theme .lb-header.elementor-element.e-con-full > .lb-header-menu{
  flex:1 1 auto!important;
  max-width:none!important;
  min-width:0!important;
  background:var(--lb-header-dark)!important;
}

/* CTA sauber eingerückt und lesbar */
body.lorin-bahn-theme .lb-header .lb-header-cta{
  flex:0 0 158px!important;
  width:158px!important;
  max-width:158px!important;
  min-height:86px!important;
  padding:0 0 0 16px!important;
  margin:0!important;
  background:var(--lb-header-dark)!important;
  justify-content:center!important;
  align-items:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner{
  width:100%!important;
  height:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  padding:0!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-widget-button,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-wrapper{
  width:auto!important;
  display:flex!important;
  justify-content:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
  width:auto!important;
  min-width:122px!important;
  max-width:132px!important;
  min-height:46px!important;
  padding:8px 10px 8px 9px!important;
  border-radius:8px!important;
  background:linear-gradient(180deg, var(--lb-header-green-hover), var(--lb-header-green))!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 9px 20px rgba(47,125,50,.30)!important;
  color:#fff!important;
  text-decoration:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  font-size:10.5px!important;
  font-weight:900!important;
  line-height:1.05!important;
  text-align:center!important;
  letter-spacing:0!important;
  white-space:normal!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a:hover,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:hover{
  background:linear-gradient(180deg, #43a047, #33883a)!important;
  transform:translateY(-1px)!important;
}

/* WhatsApp Icon wird automatisch erzeugt; keine zusätzliche Klasse nötig. */
body.lorin-bahn-theme .lb-header .lb-header-cta a:before,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:before,
body.lorin-bahn-theme .lb-header a.lb-header-button:before,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button:before{
  content:""!important;
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  display:block!important;
  border-radius:50%!important;
  background-color:#fff!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:13px 13px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%232f7d32' d='M16.04 3.2A12.7 12.7 0 0 0 5.2 22.55L3.6 28.8l6.4-1.5A12.7 12.7 0 1 0 16.04 3.2Zm0 22.94c-2.02 0-3.9-.59-5.5-1.6l-.4-.25-3.8.9 1-3.68-.26-.42a10.2 10.2 0 1 1 8.96 5.05Zm5.76-7.63c-.31-.16-1.84-.9-2.13-1-.28-.1-.49-.16-.7.16-.2.3-.8 1-.98 1.2-.18.2-.36.23-.67.08-.31-.16-1.32-.49-2.52-1.56-.93-.83-1.56-1.86-1.74-2.17-.18-.31-.02-.48.14-.64.14-.14.31-.36.47-.54.15-.18.2-.31.31-.52.1-.2.05-.39-.03-.54-.08-.16-.7-1.68-.96-2.3-.25-.6-.5-.52-.7-.53h-.6c-.2 0-.54.08-.82.39-.28.31-1.08 1.05-1.08 2.57 0 1.52 1.1 2.98 1.26 3.19.16.2 2.18 3.32 5.28 4.66.74.32 1.31.51 1.76.65.74.23 1.41.2 1.94.12.59-.09 1.84-.75 2.1-1.47.26-.72.26-1.34.18-1.47-.08-.13-.28-.2-.59-.36Z'/%3E%3C/svg%3E")!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text{
  color:#fff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.22)!important;
  display:block!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header{
    min-height:76px!important;
    padding-right:16px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 238px!important;
    width:238px!important;
    max-width:238px!important;
    min-height:76px!important;
    padding-left:44px!important;
    padding-right:58px!important;
    clip-path:path('M 0 0 L 158 0 C 178 12 190 31 201 50 C 207 62 217 70 232 76 L 0 76 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:104px!important;max-height:58px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-cta{display:none!important;}
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-header{
    min-height:70px!important;
    padding-right:12px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 190px!important;
    width:190px!important;
    max-width:190px!important;
    min-height:70px!important;
    padding-left:28px!important;
    padding-right:48px!important;
    clip-path:path('M 0 0 L 126 0 C 142 12 153 29 162 47 C 167 59 176 66 188 70 L 0 70 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:before{left:-48px!important;bottom:5px!important;width:94px!important;height:94px!important;border-width:11px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:92px!important;max-height:52px!important;}
}

/* =========================================================
   Lorin-Bahn 1.2.6 – Logo-Kreis entfernt + Hero-Weißverlauf
   - Entfernt den grauen Kreis im Header-Logo-Bereich vollständig
   - Erstellt auf lb-hero den weißen linken Verlauf wie in der Vorlage,
     wenn das Hero-Bild als Hintergrundbild am Elementor-Container liegt
   ========================================================= */
body.lorin-bahn-theme .lb-header .lb-header-logo:before{
  content:none!important;
  display:none!important;
  border:0!important;
  background:none!important;
}

/* Hero: Bild bleibt als Elementor-Hintergrund auf .lb-hero, Theme legt nur
   den weißen Lesbarkeits-/Designverlauf darüber. */
body.lorin-bahn-theme .lb-hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
body.lorin-bahn-theme .lb-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:min(760px,58vw)!important;
  height:100%!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,
    rgba(255,255,255,1) 0%,
    rgba(255,255,255,.98) 44%,
    rgba(255,255,255,.88) 63%,
    rgba(255,255,255,.48) 82%,
    rgba(255,255,255,0) 100%)!important;
  clip-path:polygon(0 0, 74% 0, 100% 100%, 0 100%)!important;
}
body.lorin-bahn-theme .lb-hero > *,
body.lorin-bahn-theme .lb-hero > .e-con-inner,
body.lorin-bahn-theme .lb-hero .elementor-widget,
body.lorin-bahn-theme .lb-hero .e-con{
  position:relative!important;
  z-index:1!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-hero:before{
    width:min(720px,72vw)!important;
    clip-path:polygon(0 0, 78% 0, 100% 100%, 0 100%)!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-hero:before{
    width:100%!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,.96) 0%,
      rgba(255,255,255,.90) 44%,
      rgba(255,255,255,.62) 72%,
      rgba(255,255,255,.18) 100%)!important;
    clip-path:none!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.2.7 – finaler Header/Hero-Abgleich Vorlage
   - kein Schatten/keine Trennkante zwischen Header und Hero
   - Hero-Weißverlauf deutlich stärker, weich und ohne harte Diagonale
   - fließender Übergang vom weißen Logo-Bereich in den linken Hero-Bereich
   - WhatsApp-CTA rechts oben größer, besser lesbar und näher an der Vorlage
   ========================================================= */
body.lorin-bahn-theme .lb-header,
body.lorin-bahn-theme .elementor-location-header .lb-header{
  box-shadow:none!important;
  border-bottom:0!important;
  margin-bottom:0!important;
  background:#080b09!important;
}
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
  min-height:86px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  padding-right:clamp(28px, calc((100vw - 1420px) / 2 + 28px), 86px)!important;
}

/* Logo bleibt links in der weißen Fläche; keine grauen Kreise/Schattierungen. */
body.lorin-bahn-theme .lb-header .lb-header-logo{
  flex:0 0 350px!important;
  width:350px!important;
  max-width:350px!important;
  min-height:86px!important;
  background:#fff!important;
  padding:0 112px 0 56px!important;
  clip-path:path('M 0 0 L 222 0 C 255 8 270 37 292 60 C 311 80 331 86 350 86 L 0 86 Z')!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:before,
body.lorin-bahn-theme .lb-header .lb-header-logo:after{
  content:none!important;
  display:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner{
  justify-content:center!important;
  align-items:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img{
  max-width:132px!important;
  max-height:70px!important;
}

/* Menü bleibt mittig und kompakt. */
body.lorin-bahn-theme .lb-header .lb-header-menu{
  min-height:86px!important;
  background:#080b09!important;
  padding-left:26px!important;
  padding-right:20px!important;
}
body.lorin-bahn-theme .lb-header .wpr-nav-menu{
  gap:25px!important;
}

/* WhatsApp-CTA wie Vorlage: lesbarer, breiter, mit echtem WhatsApp-Zeichen links. */
body.lorin-bahn-theme .lb-header .lb-header-cta{
  flex:0 0 230px!important;
  width:230px!important;
  max-width:230px!important;
  min-height:86px!important;
  padding:0 0 0 24px!important;
  justify-content:flex-end!important;
  background:#080b09!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner{
  justify-content:flex-end!important;
  align-items:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
  width:168px!important;
  min-width:168px!important;
  max-width:168px!important;
  min-height:58px!important;
  padding:10px 16px 10px 13px!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,#2f7132 0%,#1d4f22 100%)!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:0 0 0 1px rgba(128,169,87,.22), 0 10px 24px rgba(0,0,0,.24)!important;
  color:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  text-align:left!important;
  font-size:14px!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:0!important;
  text-shadow:0 1px 1px rgba(0,0,0,.32)!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a:before,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:before,
body.lorin-bahn-theme .lb-header a.lb-header-button:before,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button:before{
  content:""!important;
  flex:0 0 31px!important;
  width:31px!important;
  height:31px!important;
  display:block!important;
  border-radius:50%!important;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:31px 31px!important;
  box-shadow:none!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='24' fill='none' stroke='%23fff' stroke-width='4'/%3E%3Cpath fill='%23fff' d='M32.1 18.2c-7.7 0-14 6.2-14 13.9 0 2.6.7 5 2 7.1l-2.1 7.6 7.8-2c2 1.1 4.2 1.7 6.3 1.7 7.7 0 13.9-6.2 13.9-13.9s-6.2-14.4-13.9-14.4zm0 25.5c-2 0-4-.5-5.7-1.6l-.4-.2-4.6 1.2 1.2-4.5-.3-.5c-1.1-1.8-1.7-3.8-1.7-5.9 0-6.3 5.1-11.4 11.4-11.4s11.4 5.1 11.4 11.4-5 11.5-11.3 11.5zm6.3-8.6c-.3-.2-2-.9-2.3-1-.3-.1-.5-.2-.8.2-.2.3-.9 1-.1 1.2-.2.2-.4.2-.7.1-.3-.2-1.4-.5-2.7-1.7-1-.9-1.7-2-1.9-2.4-.2-.3 0-.5.1-.7l.5-.6c.2-.2.2-.3.3-.6.1-.2.1-.4 0-.6-.1-.2-.8-1.9-1-2.5-.3-.6-.5-.5-.8-.5h-.6c-.2 0-.6.1-.9.4-.3.3-1.2 1.2-1.2 2.8s1.2 3.2 1.3 3.4c.2.2 2.4 3.7 5.9 5.1.8.4 1.5.6 2 .7.8.3 1.6.2 2.2.1.7-.1 2-.8 2.3-1.6.3-.8.3-1.5.2-1.6-.1-.1-.3-.2-.6-.4z'/%3E%3C/svg%3E")!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text{
  color:#fff!important;
  font-size:14px!important;
  line-height:1.05!important;
  font-weight:900!important;
  text-align:left!important;
  text-shadow:0 1px 1px rgba(0,0,0,.32)!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a:hover,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:hover{
  background:linear-gradient(180deg,#3a883d 0%,#236029 100%)!important;
  transform:translateY(-1px)!important;
}

/* Hero direkt unter Header ohne Schattenkante. */
body.lorin-bahn-theme .lb-hero{
  margin-top:0!important;
  border-top:0!important;
  box-shadow:none!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}

/* Stärkerer Weißverlauf wie Vorlage: links deckend weiß, dann weich ins Bild. */
body.lorin-bahn-theme .lb-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  z-index:0!important;
  pointer-events:none!important;
  clip-path:none!important;
  background:
    linear-gradient(90deg,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,1) 24%,
      rgba(255,255,255,.98) 34%,
      rgba(255,255,255,.88) 45%,
      rgba(255,255,255,.58) 56%,
      rgba(255,255,255,.24) 66%,
      rgba(255,255,255,0) 78%),
    radial-gradient(ellipse at 28% 48%,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,.95) 25%,
      rgba(255,255,255,.62) 43%,
      rgba(255,255,255,.18) 62%,
      rgba(255,255,255,0) 76%)!important;
}

/* Falls Elementor einen inneren Container nutzt: kein Abstand zwischen Header und Hero. */
body.lorin-bahn-theme .elementor-location-header + .elementor,
body.lorin-bahn-theme .lb-header + .lb-hero,
body.lorin-bahn-theme .lb-header + .elementor .lb-hero{
  margin-top:0!important;
}

@media(max-width:1280px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex-basis:310px!important;
    width:310px!important;
    max-width:310px!important;
    padding-left:42px!important;
    padding-right:94px!important;
    clip-path:path('M 0 0 L 196 0 C 228 8 243 36 264 59 C 280 78 296 84 310 86 L 0 86 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu{gap:20px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-cta{flex-basis:200px!important;width:200px!important;max-width:200px!important;}
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{min-height:76px!important;padding-right:16px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 244px!important;
    width:244px!important;
    max-width:244px!important;
    min-height:76px!important;
    padding-left:32px!important;
    padding-right:70px!important;
    clip-path:path('M 0 0 L 152 0 C 177 8 190 31 206 51 C 217 66 230 73 244 76 L 0 76 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:108px!important;max-height:58px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-cta{display:none!important;}
  body.lorin-bahn-theme .lb-hero:before{
    background:linear-gradient(90deg,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,.98) 38%,
      rgba(255,255,255,.72) 58%,
      rgba(255,255,255,.22) 76%,
      rgba(255,255,255,0) 92%)!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{min-height:70px!important;padding-right:12px!important;}
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 194px!important;
    width:194px!important;
    max-width:194px!important;
    min-height:70px!important;
    padding-left:24px!important;
    padding-right:52px!important;
    clip-path:path('M 0 0 L 118 0 C 137 8 148 27 160 45 C 170 61 182 68 194 70 L 0 70 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{max-width:90px!important;max-height:52px!important;}
  body.lorin-bahn-theme .lb-hero:before{
    background:linear-gradient(180deg,
      rgba(255,255,255,.98) 0%,
      rgba(255,255,255,.94) 45%,
      rgba(255,255,255,.74) 72%,
      rgba(255,255,255,.42) 100%)!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.2.8 – stabile Header/Mobile/Hero-Korrektur
   - WhatsApp-CTA etwas niedriger und näher an Vorlage
   - Desktop-Hero-Verlauf kürzer, Zug bleibt klarer sichtbar
   - Auf Tablet/Mobil wird Desktop-Menü ausgeblendet, nur Burger bleibt
   - Mobile Dropdown-Menüpunkte lesbar mit dunklem Text auf weißem Panel
   ========================================================= */

/* 1) WhatsApp Button Desktop kompakter */
body.lorin-bahn-theme .lb-header .lb-header-cta{
  flex:0 0 210px!important;
  width:210px!important;
  max-width:210px!important;
  min-height:86px!important;
  padding-left:18px!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
  width:158px!important;
  min-width:158px!important;
  max-width:158px!important;
  min-height:48px!important;
  padding:8px 14px 8px 12px!important;
  border-radius:8px!important;
  gap:10px!important;
  font-size:13px!important;
  line-height:1.08!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a:before,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:before,
body.lorin-bahn-theme .lb-header a.lb-header-button:before,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button:before{
  flex-basis:27px!important;
  width:27px!important;
  height:27px!important;
  background-size:27px 27px!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text{
  font-size:13px!important;
  line-height:1.08!important;
}

/* 2) Hero-Weißverlauf Desktop kürzer/weicher: Zug bleibt deutlicher sichtbar */
body.lorin-bahn-theme .lb-hero:before{
  background:
    linear-gradient(90deg,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,1) 22%,
      rgba(255,255,255,.96) 31%,
      rgba(255,255,255,.74) 40%,
      rgba(255,255,255,.38) 49%,
      rgba(255,255,255,.12) 57%,
      rgba(255,255,255,0) 66%),
    radial-gradient(ellipse at 24% 50%,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,.90) 22%,
      rgba(255,255,255,.50) 39%,
      rgba(255,255,255,.13) 55%,
      rgba(255,255,255,0) 68%)!important;
}

/* 3) Mobile/Tablet Header: Desktop-Menü aus, Burger im schwarzen Bereich neben Logo */
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    display:flex!important;
    flex-direction:row!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    min-height:76px!important;
    padding-right:14px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu{
    flex:1 1 auto!important;
    min-width:0!important;
    min-height:76px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding-left:10px!important;
    padding-right:0!important;
    background:#080b09!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner{
    justify-content:flex-start!important;
    align-items:center!important;
    width:100%!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu-container,
  body.lorin-bahn-theme .lb-header nav.wpr-nav-menu-container,
  body.lorin-bahn-theme .lb-header .wpr-nav-menu-horizontal{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    overflow:hidden!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu-container{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:auto!important;
    position:relative!important;
    z-index:10004!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-wrap{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    margin-left:0!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle{
    display:flex!important;
    width:42px!important;
    height:42px!important;
    border-radius:9px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    background:#080b09!important;
    box-shadow:none!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line{
    background:#fff!important;
    width:22px!important;
    height:2px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta{
    display:none!important;
  }
}

/* 4) Mobiles Menü lesbar: weißes Panel, dunkle Texte, aktive Einträge grün */
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
    position:absolute!important;
    top:76px!important;
    left:0!important;
    width:min(420px, calc(100vw - 34px))!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    border:1px solid rgba(0,0,0,.08)!important;
    border-top:2px solid #d4a437!important;
    box-shadow:0 22px 46px rgba(0,0,0,.28)!important;
    overflow:visible!important;
    z-index:10005!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu li{
    background:#fff!important;
    margin:0!important;
    padding:0!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu a,
  body.lorin-bahn-theme .lb-header .wpr-mobile-menu-item{
    display:block!important;
    background:#fff!important;
    color:#111!important;
    font-size:15px!important;
    line-height:1.3!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.055em!important;
    text-align:left!important;
    padding:17px 24px!important;
    border-bottom:1px solid rgba(0,0,0,.08)!important;
    text-shadow:none!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu a:hover,
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu .wpr-active-menu-item,
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu .current-menu-item > a{
    color:#6f9c4f!important;
    background:#f7f9f4!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    min-height:70px!important;
    padding-right:10px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu{
    min-height:70px!important;
    padding-left:8px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
    top:70px!important;
    width:min(400px, calc(100vw - 24px))!important;
  }
  body.lorin-bahn-theme .lb-hero:before{
    background:linear-gradient(180deg,
      rgba(255,255,255,.97) 0%,
      rgba(255,255,255,.91) 42%,
      rgba(255,255,255,.68) 68%,
      rgba(255,255,255,.34) 100%)!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.2.9 – Header CTA Zentrierung & Mobile Burger Fix
   - WhatsApp-CTA vertikal exakt zur Menüachse ausgerichtet
   - Royal Elementor Addons Burger ist sichtbar über CSS-Pseudo-Icon
   - Burger sitzt direkt rechts neben dem weißen Logo-Bogen im schwarzen Bereich
   - mobile Menüeinträge bleiben lesbar
   ========================================================= */

/* Desktop: WhatsApp-CTA sitzt auf gleicher Höhe wie Navigation */
body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
  align-items:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-menu,
body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner,
body.lorin-bahn-theme .lb-header .lb-header-cta,
body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner{
  align-items:center!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta{
  display:flex!important;
  justify-content:flex-end!important;
  min-height:86px!important;
  height:86px!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner{
  display:flex!important;
  height:86px!important;
  min-height:86px!important;
  justify-content:flex-end!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-widget-button,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-wrapper{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
  height:46px!important;
  min-height:46px!important;
  padding-top:7px!important;
  padding-bottom:7px!important;
  transform:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a:hover,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:hover{
  transform:none!important;
}

/* Tablet/Mobil: Header bleibt flach, Burger direkt im schwarzen Bereich neben dem Logo */
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    position:relative!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    min-height:76px!important;
    height:76px!important;
    padding:0!important;
    overflow:visible!important;
    background:#080b09!important;
  }

  body.lorin-bahn-theme .lb-header .lb-header-logo{
    z-index:20!important;
  }

  /* Das Menü-Widget dient mobil nur als Burger-Träger. Es wird aus dem Flexfluss genommen. */
  body.lorin-bahn-theme .lb-header .lb-header-menu{
    position:absolute!important;
    left:250px!important;
    top:0!important;
    width:56px!important;
    max-width:56px!important;
    min-width:56px!important;
    height:76px!important;
    min-height:76px!important;
    padding:0!important;
    margin:0!important;
    flex:0 0 56px!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    background:transparent!important;
    z-index:30!important;
    overflow:visible!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner{
    width:56px!important;
    max-width:56px!important;
    min-width:56px!important;
    height:76px!important;
    min-height:76px!important;
    padding:0!important;
    margin:0!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-wpr-nav-menu,
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-container{
    width:56px!important;
    max-width:56px!important;
    min-width:56px!important;
    height:76px!important;
    min-height:76px!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }

  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu-container{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    width:56px!important;
    height:76px!important;
    position:relative!important;
    overflow:visible!important;
    z-index:10004!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-wrap{
    width:44px!important;
    height:44px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:16px 0 0 0!important;
    padding:0!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle{
    position:relative!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    max-width:42px!important;
    max-height:42px!important;
    display:block!important;
    border-radius:9px!important;
    border:1px solid rgba(255,255,255,.26)!important;
    background:rgba(8,11,9,.98)!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    cursor:pointer!important;
  }

  /* Stabile 3-Striche-Darstellung – unabhängig davon, wie Royal Addons die Spans rendert. */
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line{
    display:none!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle:before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:9px!important;
    top:12px!important;
    width:24px!important;
    height:2px!important;
    border-radius:99px!important;
    background:#fff!important;
    box-shadow:0 8px 0 #fff, 0 16px 0 #fff!important;
    opacity:1!important;
    visibility:visible!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle:after{
    content:none!important;
    display:none!important;
  }

  /* Ausgeklapptes mobiles Menü bleibt sichtbar und lesbar. */
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
    position:absolute!important;
    top:76px!important;
    left:-212px!important;
    width:min(420px, calc(100vw - 28px))!important;
    background:#fff!important;
    border-top:2px solid #d4a437!important;
    box-shadow:0 22px 46px rgba(0,0,0,.28)!important;
    overflow:visible!important;
    z-index:10005!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu a,
  body.lorin-bahn-theme .lb-header .wpr-mobile-menu-item{
    color:#111!important;
    background:#fff!important;
    text-shadow:none!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    min-height:70px!important;
    height:70px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu{
    left:198px!important;
    width:52px!important;
    max-width:52px!important;
    min-width:52px!important;
    height:70px!important;
    min-height:70px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-wpr-nav-menu,
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-container,
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu-container{
    width:52px!important;
    max-width:52px!important;
    min-width:52px!important;
    height:70px!important;
    min-height:70px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-wrap{
    margin-top:14px!important;
    width:42px!important;
    height:42px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle:before{
    left:8px!important;
    top:11px!important;
    width:24px!important;
    box-shadow:0 8px 0 #fff, 0 16px 0 #fff!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
    top:70px!important;
    left:-164px!important;
    width:min(400px, calc(100vw - 20px))!important;
  }
}

@media(max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-menu{
    left:184px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
    left:-154px!important;
    width:calc(100vw - 16px)!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.0 – redundante CSS-Datei-Absicherung
   Die eigentliche finale Headerkorrektur wird zusätzlich spät in wp_head ausgegeben.
   ========================================================= */
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-widget-button{position:absolute!important;top:50%!important;right:0!important;transform:translateY(-50%)!important;margin:0!important;}
  body.lorin-bahn-theme .lb-header .lb-header-cta{position:relative!important;height:86px!important;align-items:center!important;}
  body.lorin-bahn-theme .lb-header .lb-header-cta>.e-con-inner{position:relative!important;height:86px!important;align-items:center!important;}
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header .lb-header-menu{position:absolute!important;top:0!important;right:16px!important;left:auto!important;width:46px!important;max-width:46px!important;min-width:46px!important;height:76px!important;min-height:76px!important;z-index:99999!important;background:transparent!important;overflow:visible!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle{position:relative!important;display:block!important;width:42px!important;height:42px!important;border:1px solid rgba(255,255,255,.34)!important;background:#080b09!important;border-radius:9px!important;opacity:1!important;visibility:visible!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle:before{content:""!important;display:block!important;position:absolute!important;left:9px!important;top:12px!important;width:24px!important;height:2px!important;background:#fff!important;border-radius:99px!important;box-shadow:0 8px 0 #fff,0 16px 0 #fff!important;z-index:2!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line{display:block!important;position:absolute!important;left:9px!important;width:24px!important;height:2px!important;background:#fff!important;opacity:1!important;visibility:visible!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line:nth-child(1){top:12px!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line:nth-child(2){top:20px!important;}
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line:nth-child(3){top:28px!important;}
}
@media(max-width:767px){body.lorin-bahn-theme .lb-header .lb-header-menu{right:12px!important;height:70px!important;min-height:70px!important;}}

/* =========================================================
   Lorin-Bahn 1.3.1 – Elementor Hero-Klassen
   Ziel: Hero komplett in Elementor bauen; alle typografischen
   und strukturellen Vorgaben liegen direkt auf den Klassen.
   ========================================================= */

/* Hero Grundcontainer: Hintergrundbild wird in Elementor auf .lb-hero gesetzt. */
body.lorin-bahn-theme .lb-hero{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:clamp(720px, 47vw, 820px)!important;
  display:flex!important;
  align-items:center!important;
  margin-top:0!important;
  padding:0!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
body.lorin-bahn-theme .lb-hero > .e-con-inner,
body.lorin-bahn-theme .lb-hero .lb-hero-inner{
  position:relative!important;
  z-index:2!important;
}

/* Innerer Hero-Container */
body.lorin-bahn-theme .lb-hero-inner{
  width:min(100%, 1280px)!important;
  max-width:1280px!important;
  margin:0 auto!important;
  padding:clamp(84px, 7vw, 116px) 40px clamp(92px, 7vw, 124px)!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:clamp(28px, 5vw, 72px)!important;
}

/* Linke Inhaltsspalte */
body.lorin-bahn-theme .lb-hero-content{
  position:relative!important;
  z-index:3!important;
  flex:0 0 44%!important;
  width:44%!important;
  max-width:560px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0!important;
}

/* Rechte Leer-/Bildspalte. Bild selbst kommt über .lb-hero background. */
body.lorin-bahn-theme .lb-hero-spacer{
  flex:1 1 auto!important;
  min-width:0!important;
  min-height:1px!important;
}

/* Kicker über H1 */
body.lorin-bahn-theme .lb-kicker,
body.lorin-bahn-theme .lb-kicker .elementor-heading-title,
body.lorin-bahn-theme .lb-kicker .elementor-widget-container,
body.lorin-bahn-theme .lb-kicker p{
  color:#245b22!important;
  font-size:clamp(13px, .86vw, 16px)!important;
  line-height:1.25!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  margin:0 0 8px!important;
  padding:0!important;
}

/* Hauptüberschrift */
body.lorin-bahn-theme .lb-h1,
body.lorin-bahn-theme .lb-h1 .elementor-heading-title,
body.lorin-bahn-theme h1.lb-h1{
  font-family:Georgia, 'Times New Roman', Times, serif!important;
  color:#070707!important;
  font-size:clamp(58px, 4.25vw, 72px)!important;
  line-height:1.08!important;
  font-weight:700!important;
  letter-spacing:-.025em!important;
  margin:0 0 18px!important;
  padding:0!important;
  max-width:680px!important;
}

/* Lead-Text */
body.lorin-bahn-theme .lb-lead,
body.lorin-bahn-theme .lb-lead .elementor-widget-container,
body.lorin-bahn-theme .lb-lead p{
  color:#1e1e1e!important;
  font-size:clamp(20px, 1.22vw, 22px)!important;
  line-height:1.55!important;
  font-weight:400!important;
  max-width:520px!important;
  margin:0 0 26px!important;
  padding:0!important;
}

/* Vorteilsliste im Hero – funktioniert mit Elementor Icon List und normalem ul/li. */
body.lorin-bahn-theme .lb-hero-checks{
  width:100%!important;
  max-width:560px!important;
  margin:0 0 30px!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-hero-checks .elementor-icon-list-items{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-hero-checks .elementor-icon-list-item{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-hero-checks .elementor-icon-list-icon{
  flex:0 0 26px!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-hero-checks .elementor-icon-list-icon i,
body.lorin-bahn-theme .lb-hero-checks .elementor-icon-list-icon svg{
  color:#fff!important;
  fill:#fff!important;
  width:13px!important;
  height:13px!important;
  font-size:13px!important;
}
body.lorin-bahn-theme .lb-hero-checks .elementor-icon-list-text,
body.lorin-bahn-theme .lb-hero-checks li{
  color:#1e1e1e!important;
  font-size:16px!important;
  line-height:1.45!important;
  font-weight:600!important;
}
body.lorin-bahn-theme ul.lb-hero-checks{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  list-style:none!important;
}
body.lorin-bahn-theme ul.lb-hero-checks li{
  position:relative!important;
  padding-left:40px!important;
}
body.lorin-bahn-theme ul.lb-hero-checks li:before{
  content:'✓'!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:26px!important;
  height:26px!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-weight:900!important;
  font-size:14px!important;
}

/* Grüner Angebots-CTA im Hero */
body.lorin-bahn-theme .lb-hero-offer{
  width:min(100%, 430px)!important;
  max-width:430px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:16px!important;
  padding:18px 22px!important;
  margin:0!important;
  border-radius:8px!important;
  background:linear-gradient(135deg,#2f7132 0%, #173d18 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 42px rgba(15,43,18,.22)!important;
  border:1px solid rgba(255,255,255,.12)!important;
}
body.lorin-bahn-theme .lb-hero-offer-icon{
  flex:0 0 52px!important;
  width:52px!important;
  min-width:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-hero-offer-icon .elementor-icon,
body.lorin-bahn-theme .lb-hero-offer-icon i,
body.lorin-bahn-theme .lb-hero-offer-icon svg{
  color:#fff!important;
  fill:#fff!important;
  font-size:46px!important;
  width:46px!important;
  height:46px!important;
}
body.lorin-bahn-theme .lb-hero-offer-text,
body.lorin-bahn-theme .lb-hero-offer-text .elementor-widget-container,
body.lorin-bahn-theme .lb-hero-offer-text p{
  color:#fff!important;
  margin:0!important;
  padding:0!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:400!important;
}
body.lorin-bahn-theme .lb-hero-offer-text strong,
body.lorin-bahn-theme .lb-hero-offer-text b{
  display:inline-block!important;
  color:#fff!important;
  font-size:15.5px!important;
  line-height:1.25!important;
  font-weight:900!important;
  margin-bottom:3px!important;
}
body.lorin-bahn-theme .lb-hero-offer a,
body.lorin-bahn-theme a.lb-hero-offer{
  text-decoration:none!important;
}
body.lorin-bahn-theme .lb-hero-offer:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 22px 50px rgba(15,43,18,.28)!important;
}

/* Google Bewertungsbox im Hero */
body.lorin-bahn-theme .lb-google-rating{
  position:absolute!important;
  right:clamp(72px, 12vw, 180px)!important;
  bottom:clamp(76px, 6vw, 108px)!important;
  z-index:4!important;
  width:min(360px, 28vw)!important;
  min-width:330px!important;
  padding:26px 30px!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:0 18px 48px rgba(0,0,0,.16)!important;
  border:1px solid rgba(0,0,0,.05)!important;
}
body.lorin-bahn-theme .lb-google-rating__top{
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  padding-bottom:18px!important;
  margin-bottom:18px!important;
  border-bottom:1px solid rgba(0,0,0,.10)!important;
}
body.lorin-bahn-theme .lb-google-rating__g{
  flex:0 0 54px!important;
  width:54px!important;
  height:54px!important;
  display:grid!important;
  place-items:center!important;
  font-size:42px!important;
  line-height:1!important;
  font-weight:900!important;
  font-family:Arial, sans-serif!important;
  color:#4285f4!important;
}
body.lorin-bahn-theme .lb-google-rating strong{
  color:#111!important;
  font-size:28px!important;
  line-height:1.05!important;
  font-weight:900!important;
  margin-right:8px!important;
}
body.lorin-bahn-theme .lb-google-rating span:not(.lb-google-rating__g){
  color:#245b22!important;
  font-size:19px!important;
  letter-spacing:.14em!important;
  white-space:nowrap!important;
}
body.lorin-bahn-theme .lb-google-rating small{
  display:block!important;
  color:#1e1e1e!important;
  font-size:15px!important;
  line-height:1.3!important;
  margin-top:6px!important;
}
body.lorin-bahn-theme .lb-google-rating__bottom{
  text-align:center!important;
  color:#1e1e1e!important;
  font-size:16px!important;
  line-height:1.45!important;
  font-weight:500!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-hero{min-height:680px!important;}
  body.lorin-bahn-theme .lb-hero-inner{
    padding:86px 32px 96px!important;
    gap:32px!important;
  }
  body.lorin-bahn-theme .lb-hero-content{
    flex-basis:56%!important;
    width:56%!important;
    max-width:540px!important;
  }
  body.lorin-bahn-theme .lb-h1,
  body.lorin-bahn-theme .lb-h1 .elementor-heading-title,
  body.lorin-bahn-theme h1.lb-h1{
    font-size:clamp(48px, 5.3vw, 56px)!important;
  }
  body.lorin-bahn-theme .lb-google-rating{
    right:32px!important;
    bottom:54px!important;
    min-width:300px!important;
    width:300px!important;
    padding:22px 24px!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-hero{
    min-height:620px!important;
    align-items:flex-start!important;
  }
  body.lorin-bahn-theme .lb-hero-inner{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    padding:64px 22px 72px!important;
    gap:0!important;
  }
  body.lorin-bahn-theme .lb-hero-content{
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
  }
  body.lorin-bahn-theme .lb-hero-spacer{
    display:none!important;
  }
  body.lorin-bahn-theme .lb-kicker,
  body.lorin-bahn-theme .lb-kicker .elementor-heading-title,
  body.lorin-bahn-theme .lb-kicker .elementor-widget-container,
  body.lorin-bahn-theme .lb-kicker p{
    font-size:clamp(13px, 3.6vw, 14px)!important;
  }
  body.lorin-bahn-theme .lb-h1,
  body.lorin-bahn-theme .lb-h1 .elementor-heading-title,
  body.lorin-bahn-theme h1.lb-h1{
    font-size:clamp(38px, 10.5vw, 44px)!important;
    margin-bottom:16px!important;
  }
  body.lorin-bahn-theme .lb-lead,
  body.lorin-bahn-theme .lb-lead .elementor-widget-container,
  body.lorin-bahn-theme .lb-lead p{
    font-size:clamp(17px, 4.6vw, 18px)!important;
    line-height:1.55!important;
    margin-bottom:22px!important;
  }
  body.lorin-bahn-theme .lb-hero-checks .elementor-icon-list-text,
  body.lorin-bahn-theme .lb-hero-checks li{
    font-size:15.5px!important;
  }
  body.lorin-bahn-theme .lb-hero-offer{
    width:100%!important;
    max-width:100%!important;
    padding:17px 18px!important;
  }
  body.lorin-bahn-theme .lb-google-rating{
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:360px!important;
    margin:30px 0 0!important;
    padding:22px 22px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.2 – Google Rating exakt rechts im Hero
   Problem: Bei Elementor boxed/e-con-inner wurde die Bewertungsbox
   als Flex-Element bzw. relativ zu einem inneren Container berechnet.
   Lösung: Rating absolut am äußeren .lb-hero ausrichten.
   ========================================================= */
body.lorin-bahn-theme .lb-hero{
  position:relative!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-hero > .e-con-inner,
body.lorin-bahn-theme .lb-hero .lb-hero-inner,
body.lorin-bahn-theme .lb-hero .lb-hero-inner > .e-con-inner{
  position:static!important;
}
body.lorin-bahn-theme .lb-hero .lb-hero-content{
  position:relative!important;
  z-index:5!important;
}
body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
body.lorin-bahn-theme .lb-hero .lb-google-rating{
  position:absolute!important;
  left:auto!important;
  top:auto!important;
  right:clamp(84px, 12vw, 190px)!important;
  bottom:clamp(72px, 6vw, 108px)!important;
  transform:none!important;
  z-index:6!important;
  margin:0!important;
  flex:none!important;
  align-self:auto!important;
  width:360px!important;
  min-width:360px!important;
  max-width:360px!important;
}
body.lorin-bahn-theme .lb-hero .lb-google-rating > .elementor-widget-html,
body.lorin-bahn-theme .lb-hero .lb-google-rating > .elementor-widget-html > .elementor-widget-container{
  width:100%!important;
}

@media(max-width:1280px){
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
  body.lorin-bahn-theme .lb-hero .lb-google-rating{
    right:48px!important;
    bottom:58px!important;
    width:330px!important;
    min-width:330px!important;
    max-width:330px!important;
  }
}
@media(max-width:1024px){
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
  body.lorin-bahn-theme .lb-hero .lb-google-rating{
    right:28px!important;
    bottom:42px!important;
    width:300px!important;
    min-width:300px!important;
    max-width:300px!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
  body.lorin-bahn-theme .lb-hero .lb-google-rating{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    top:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:360px!important;
    margin:28px 0 0!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.3 – Sticky Header
   Wichtig: Der Header ist in Elementor als eigener Inhalt/Template gebaut.
   Sticky muss daher auf dem Elementor-Wrapper und auf .lb-header liegen,
   damit der Header nicht durch einen kurzen Parent-Container begrenzt wird.
   ========================================================= */
body.lorin-bahn-theme .elementor-location-header,
body.lorin-bahn-theme .elementor.elementor-20,
body.lorin-bahn-theme .elementor[data-elementor-id="20"]{
  position:sticky!important;
  top:0!important;
  z-index:99990!important;
  width:100%!important;
  overflow:visible!important;
  isolation:isolate!important;
}
body.lorin-bahn-theme .lb-header,
body.lorin-bahn-theme .elementor-location-header .lb-header,
body.lorin-bahn-theme .elementor.elementor-20 .lb-header,
body.lorin-bahn-theme .elementor[data-elementor-id="20"] .lb-header{
  position:sticky!important;
  top:0!important;
  z-index:99991!important;
  width:100%!important;
  overflow:visible!important;
  transform:translateZ(0)!important;
  will-change:transform!important;
  background:#080b09!important;
}
body.admin-bar.lorin-bahn-theme .elementor-location-header,
body.admin-bar.lorin-bahn-theme .elementor.elementor-20,
body.admin-bar.lorin-bahn-theme .elementor[data-elementor-id="20"],
body.admin-bar.lorin-bahn-theme .lb-header{
  top:32px!important;
}
@media(max-width:782px){
  body.admin-bar.lorin-bahn-theme .elementor-location-header,
  body.admin-bar.lorin-bahn-theme .elementor.elementor-20,
  body.admin-bar.lorin-bahn-theme .elementor[data-elementor-id="20"],
  body.admin-bar.lorin-bahn-theme .lb-header{
    top:46px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.4 – Logo größer, weißer Logo-Flügel läuft unter Menü aus
   Ziel: schwarzer Menübalken bleibt kompakt, weißer Logo-Bereich darf
   darunter auslaufen. Dadurch wirkt das Logo größer wie in der Vorlage.
   ========================================================= */
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    height:86px!important;
    min-height:86px!important;
    max-height:86px!important;
    overflow:visible!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu,
  body.lorin-bahn-theme .lb-header .lb-header-cta{
    height:86px!important;
    min-height:86px!important;
    max-height:86px!important;
    align-self:flex-start!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 360px!important;
    width:360px!important;
    max-width:360px!important;
    height:118px!important;
    min-height:118px!important;
    max-height:118px!important;
    align-self:flex-start!important;
    margin:0!important;
    padding:6px 112px 12px 48px!important;
    background:#fff!important;
    overflow:hidden!important;
    z-index:100000!important;
    clip-path:path('M 0 0 L 226 0 C 264 8 276 64 306 93 C 323 110 341 116 360 118 L 0 118 Z')!important;
    box-shadow:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container{
    height:100%!important;
    min-height:100%!important;
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:194px!important;
    max-height:102px!important;
    width:auto!important;
    height:auto!important;
    object-fit:contain!important;
    display:block!important;
  }
}

@media(max-width:1280px) and (min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex-basis:330px!important;
    width:330px!important;
    max-width:330px!important;
    height:112px!important;
    min-height:112px!important;
    max-height:112px!important;
    padding:6px 98px 12px 40px!important;
    clip-path:path('M 0 0 L 202 0 C 239 8 251 60 280 88 C 295 104 313 110 330 112 L 0 112 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:176px!important;
    max-height:96px!important;
  }
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    height:76px!important;
    min-height:76px!important;
    max-height:76px!important;
    overflow:visible!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 252px!important;
    width:252px!important;
    max-width:252px!important;
    height:92px!important;
    min-height:92px!important;
    max-height:92px!important;
    align-self:flex-start!important;
    padding:5px 72px 10px 30px!important;
    background:#fff!important;
    z-index:100000!important;
    overflow:hidden!important;
    clip-path:path('M 0 0 L 154 0 C 184 8 195 42 215 65 C 226 82 240 89 252 92 L 0 92 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container{
    height:100%!important;
    min-height:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:128px!important;
    max-height:74px!important;
    width:auto!important;
    height:auto!important;
    object-fit:contain!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    height:70px!important;
    min-height:70px!important;
    max-height:70px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 204px!important;
    width:204px!important;
    max-width:204px!important;
    height:84px!important;
    min-height:84px!important;
    max-height:84px!important;
    padding:4px 52px 9px 20px!important;
    clip-path:path('M 0 0 L 121 0 C 144 8 152 36 169 57 C 180 75 193 82 204 84 L 0 84 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:106px!important;
    max-height:66px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.5 – USP-Karte unter Hero
   Ziel: Die Elementor-Struktur .lb-usp-inner > .e-con-inner > .lb-usp-card
   wird wie in der Vorlage als horizontale weiße Karte mit 4 Spalten gerendert.
   Funktioniert auch, wenn zunächst nur 2 Karten hinterlegt sind.
   ========================================================= */

/* Äußere Karte / Wrapper – auch ohne zusätzliches .lb-usp-Parent stabil */
body.lorin-bahn-theme .lb-usp,
body.lorin-bahn-theme .lb-usp-inner{
  position:relative!important;
  z-index:20!important;
}
body.lorin-bahn-theme .lb-usp-inner{
  width:min(1180px, calc(100% - 64px))!important;
  max-width:1180px!important;
  margin:-70px auto 0!important;
  padding:0!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(0,0,0,.12)!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-usp-inner > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(4, minmax(0, 1fr))!important;
  gap:0!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  padding:0!important;
  margin:0!important;
}

/* Einzelne USP-Karte */
body.lorin-bahn-theme .lb-usp-card{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:178px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  gap:0!important;
  padding:32px 24px 30px!important;
  margin:0!important;
  background:#fff!important;
  border-radius:0!important;
  box-shadow:none!important;
  border:0!important;
  overflow:visible!important;
}
body.lorin-bahn-theme .lb-usp-card:not(:last-child):after{
  content:""!important;
  position:absolute!important;
  top:34px!important;
  right:0!important;
  bottom:34px!important;
  width:1px!important;
  background:rgba(0,0,0,.10)!important;
}

/* Icon */
body.lorin-bahn-theme .lb-usp-icon,
body.lorin-bahn-theme .lb-usp-icon .elementor-widget-container,
body.lorin-bahn-theme .lb-usp-icon .elementor-icon-wrapper{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:0 0 22px!important;
  padding:0!important;
  line-height:1!important;
}
body.lorin-bahn-theme .lb-usp-icon .elementor-icon,
body.lorin-bahn-theme .lb-usp-icon i,
body.lorin-bahn-theme .lb-usp-icon svg{
  color:#245b22!important;
  fill:#245b22!important;
  font-size:44px!important;
  width:44px!important;
  height:44px!important;
  line-height:1!important;
}
body.lorin-bahn-theme .lb-usp-icon .elementor-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* Titel */
body.lorin-bahn-theme .lb-usp-title,
body.lorin-bahn-theme .lb-usp-title .elementor-widget-container,
body.lorin-bahn-theme .lb-usp-title .elementor-heading-title,
body.lorin-bahn-theme .lb-usp-title h1,
body.lorin-bahn-theme .lb-usp-title h2,
body.lorin-bahn-theme .lb-usp-title h3{
  color:#111!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  margin:0 0 16px!important;
  padding:0!important;
}

/* Text */
body.lorin-bahn-theme .lb-usp-text,
body.lorin-bahn-theme .lb-usp-text .elementor-widget-container,
body.lorin-bahn-theme .lb-usp-text p{
  color:#5f665f!important;
  font-size:14px!important;
  line-height:1.65!important;
  font-weight:400!important;
  text-align:center!important;
  margin:0!important;
  padding:0!important;
}

/* Falls nur zwei Karten vorhanden sind, bleiben sie sauber nebeneinander. */
body.lorin-bahn-theme .lb-usp-inner > .e-con-inner:has(> .lb-usp-card:nth-child(2):last-child){
  grid-template-columns:repeat(2, minmax(0, 1fr))!important;
}
body.lorin-bahn-theme .lb-usp-inner > .e-con-inner:has(> .lb-usp-card:nth-child(3):last-child){
  grid-template-columns:repeat(3, minmax(0, 1fr))!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-usp-inner{
    width:min(920px, calc(100% - 44px))!important;
    margin:-48px auto 0!important;
  }
  body.lorin-bahn-theme .lb-usp-inner > .e-con-inner,
  body.lorin-bahn-theme .lb-usp-inner > .e-con-inner:has(> .lb-usp-card:nth-child(2):last-child),
  body.lorin-bahn-theme .lb-usp-inner > .e-con-inner:has(> .lb-usp-card:nth-child(3):last-child){
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
  }
  body.lorin-bahn-theme .lb-usp-card{
    min-height:170px!important;
    padding:30px 22px 28px!important;
  }
  body.lorin-bahn-theme .lb-usp-card:nth-child(2n):after{
    display:none!important;
  }
  body.lorin-bahn-theme .lb-usp-card:nth-child(n+3){
    border-top:1px solid rgba(0,0,0,.10)!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-usp-inner{
    width:calc(100% - 28px)!important;
    margin:24px auto 0!important;
    border-radius:16px!important;
  }
  body.lorin-bahn-theme .lb-usp-inner > .e-con-inner,
  body.lorin-bahn-theme .lb-usp-inner > .e-con-inner:has(> .lb-usp-card:nth-child(2):last-child),
  body.lorin-bahn-theme .lb-usp-inner > .e-con-inner:has(> .lb-usp-card:nth-child(3):last-child){
    grid-template-columns:1fr!important;
  }
  body.lorin-bahn-theme .lb-usp-card{
    min-height:0!important;
    padding:28px 22px!important;
  }
  body.lorin-bahn-theme .lb-usp-card:after{
    display:none!important;
  }
  body.lorin-bahn-theme .lb-usp-card + .lb-usp-card{
    border-top:1px solid rgba(0,0,0,.10)!important;
  }
  body.lorin-bahn-theme .lb-usp-icon,
  body.lorin-bahn-theme .lb-usp-icon .elementor-widget-container,
  body.lorin-bahn-theme .lb-usp-icon .elementor-icon-wrapper{
    margin-bottom:18px!important;
  }
  body.lorin-bahn-theme .lb-usp-icon .elementor-icon,
  body.lorin-bahn-theme .lb-usp-icon i,
  body.lorin-bahn-theme .lb-usp-icon svg{
    width:40px!important;
    height:40px!important;
    font-size:40px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.6 – Google Rating im Hero höher positionieren
   Ziel: Bewertungsbox bleibt rechts im Hero, läuft aber nicht in die
   darunter liegende USP-Karte hinein.
   ========================================================= */
body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
body.lorin-bahn-theme .lb-hero .lb-google-rating{
  bottom:clamp(145px, 9vw, 175px)!important;
}

@media(max-width:1280px){
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
  body.lorin-bahn-theme .lb-hero .lb-google-rating{
    bottom:132px!important;
  }
}

@media(max-width:1024px){
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
  body.lorin-bahn-theme .lb-hero .lb-google-rating{
    bottom:110px!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.elementor-element,
  body.lorin-bahn-theme .elementor .lb-hero .lb-google-rating.e-con,
  body.lorin-bahn-theme .lb-hero .lb-google-rating{
    bottom:auto!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.7 – Process / Ablauf exakt wie Vorlage
   Struktur: .lb-process > .lb-process-inner > .e-con-inner >
   .lb-h2 + .lb-process-grid > .lb-process-step
   ========================================================= */
body.lorin-bahn-theme .lb-process{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:64px 32px 58px!important;
  background:#fff!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-process .lb-process-inner{
  width:min(1180px, 100%)!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
}
body.lorin-bahn-theme .lb-process .lb-process-inner > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
}

/* Der zusätzliche Kicker wird im Ablauf optisch zurückgenommen, damit nur die zentrale Überschrift wirkt. */
body.lorin-bahn-theme .lb-process .lb-kicker{
  display:none!important;
}

/* Ablauf-Überschrift */
body.lorin-bahn-theme .lb-process .lb-h2,
body.lorin-bahn-theme .lb-process .lb-h2 .elementor-widget-container,
body.lorin-bahn-theme .lb-process .lb-h2 .elementor-heading-title,
body.lorin-bahn-theme .lb-process .lb-h2 h1,
body.lorin-bahn-theme .lb-process .lb-h2 h2,
body.lorin-bahn-theme .lb-process .lb-h2 h3{
  color:#111!important;
  font-family:Inter, Arial, sans-serif!important;
  font-size:22px!important;
  line-height:1.25!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-process .lb-h2:after{
  content:""!important;
  display:block!important;
  width:68px!important;
  height:2px!important;
  background:#245b22!important;
  margin:13px auto 0!important;
}

/* Grid mit 4 Schritten */
body.lorin-bahn-theme .lb-process .lb-process-grid{
  position:relative!important;
  width:min(100%, 1060px)!important;
  max-width:1060px!important;
  margin:34px auto 0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(4, minmax(0, 1fr))!important;
  gap:34px!important;
  align-items:start!important;
  justify-content:center!important;
  background:transparent!important;
  overflow:visible!important;
}
body.lorin-bahn-theme .lb-process .lb-process-grid:has(.lb-process-step:nth-child(2)):before{
  content:""!important;
  position:absolute!important;
  left:12.5%!important;
  right:12.5%!important;
  top:67px!important;
  border-top:3px dotted rgba(0,0,0,.38)!important;
  z-index:0!important;
  pointer-events:none!important;
}

/* Einzelner Schritt */
body.lorin-bahn-theme .lb-process .lb-process-step{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  min-width:0!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  overflow:visible!important;
}

/* Nummer */
body.lorin-bahn-theme .lb-process .lb-process-number,
body.lorin-bahn-theme .lb-process .lb-process-number .elementor-widget-container,
body.lorin-bahn-theme .lb-process .lb-process-number p{
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  margin:0 0 8px!important;
  padding:0!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  text-align:center!important;
}

/* Icon-Kreis */
body.lorin-bahn-theme .lb-process .lb-process-icon,
body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-widget-container,
body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon-wrapper{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:0 0 19px!important;
  padding:0!important;
  line-height:1!important;
}
body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon{
  position:relative!important;
  z-index:2!important;
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  min-height:72px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(135deg,#2f7132 0%, #173d18 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(15,43,18,.18)!important;
}
body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon i,
body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon svg{
  color:#fff!important;
  fill:#fff!important;
  width:34px!important;
  height:34px!important;
  font-size:34px!important;
}

/* Titel */
body.lorin-bahn-theme .lb-process .lb-process-title,
body.lorin-bahn-theme .lb-process .lb-process-title .elementor-widget-container,
body.lorin-bahn-theme .lb-process .lb-process-title .elementor-heading-title,
body.lorin-bahn-theme .lb-process .lb-process-title h1,
body.lorin-bahn-theme .lb-process .lb-process-title h2,
body.lorin-bahn-theme .lb-process .lb-process-title h3{
  color:#111!important;
  font-family:Inter, Arial, sans-serif!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  margin:0 0 14px!important;
  padding:0!important;
}

/* Text */
body.lorin-bahn-theme .lb-process .lb-process-text,
body.lorin-bahn-theme .lb-process .lb-process-text .elementor-widget-container,
body.lorin-bahn-theme .lb-process .lb-process-text p{
  color:#5f665f!important;
  font-size:14px!important;
  line-height:1.55!important;
  font-weight:400!important;
  text-align:center!important;
  max-width:170px!important;
  margin:0 auto!important;
  padding:0!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-process{
    padding:58px 24px 54px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:42px 34px!important;
    max-width:760px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-grid:before{
    display:none!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-process{
    padding:50px 18px 48px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-h2,
  body.lorin-bahn-theme .lb-process .lb-h2 .elementor-heading-title{
    font-size:20px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-grid{
    grid-template-columns:1fr!important;
    gap:34px!important;
    max-width:360px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-step{
    padding:0 16px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon{
    width:68px!important;
    height:68px!important;
    min-width:68px!important;
    min-height:68px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.8 – Process Linie segmentiert und tiefer
   Ziel: Die gestrichelte Linie läuft nur zwischen den Prozess-Icons
   und endet am letzten Eintrag. Keine durchgehende Linie über das letzte Icon hinaus.
   ========================================================= */
body.lorin-bahn-theme .lb-process .lb-process-grid:before{
  display:none!important;
  content:none!important;
}
body.lorin-bahn-theme .lb-process .lb-process-step:not(:last-child):after{
  content:""!important;
  position:absolute!important;
  top:82px!important;
  left:calc(50% + 48px)!important;
  width:calc(100% - 58px)!important;
  border-top:3px dotted rgba(0,0,0,.38)!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.lorin-bahn-theme .lb-process .lb-process-step:last-child:after{
  display:none!important;
  content:none!important;
}
body.lorin-bahn-theme .lb-process .lb-process-number,
body.lorin-bahn-theme .lb-process .lb-process-icon{
  position:relative!important;
  z-index:2!important;
}
body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon{
  position:relative!important;
  z-index:3!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-process .lb-process-step:after{
    display:none!important;
    content:none!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.3.9 – Beige Hintergrund unter USP/Process entfernen
   Ursache war die globale Seiten-/Body-Farbe (--lb-cream), die in Abständen
   zwischen den Elementor-Containern sichtbar wurde. Der Startseitenfluss
   unterhalb des Hero wird nun weiß geführt.
   ========================================================= */
body.lorin-bahn-theme,
body.lorin-bahn-theme .site-main,
body.lorin-bahn-theme .page-content,
body.lorin-bahn-theme .elementor.elementor-7{
  background:#fff!important;
}
body.lorin-bahn-theme .lb-usp{
  position:relative!important;
  z-index:20!important;
  background:#fff!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-usp-inner{
  margin:-70px auto 0!important;
}
body.lorin-bahn-theme .lb-usp + .lb-process,
body.lorin-bahn-theme .lb-process{
  background:#fff!important;
  margin-top:0!important;
}
body.lorin-bahn-theme .lb-process{
  padding-top:64px!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-usp-inner{margin:-48px auto 0!important;}
  body.lorin-bahn-theme .lb-process{padding-top:58px!important;}
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-usp-inner{margin:24px auto 0!important;}
  body.lorin-bahn-theme .lb-process{padding-top:50px!important;}
}

/* =========================================================
   Lorin-Bahn 1.4.0 – Markenbereich als Text-Logos
   Ziel: Überschrift zentriert, darunter eine horizontale Markenreihe.
   Funktioniert mit Text-Editor, Heading oder Bild-Widget auf .lb-brand-logo.
   ========================================================= */
body.lorin-bahn-theme .lb-brands{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:56px 32px 54px!important;
  background:#fff!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-brands-inner{
  width:min(1180px, 100%)!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
}
body.lorin-bahn-theme .lb-brands-inner > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
}

/* Überschrift im Markenbereich */
body.lorin-bahn-theme .lb-brands .lb-h2,
body.lorin-bahn-theme .lb-brands-inner .lb-h2,
body.lorin-bahn-theme .lb-brands .lb-h2 .elementor-widget-container,
body.lorin-bahn-theme .lb-brands-inner .lb-h2 .elementor-widget-container,
body.lorin-bahn-theme .lb-brands .lb-h2 .elementor-heading-title,
body.lorin-bahn-theme .lb-brands-inner .lb-h2 .elementor-heading-title,
body.lorin-bahn-theme .lb-brands .lb-h2 h1,
body.lorin-bahn-theme .lb-brands .lb-h2 h2,
body.lorin-bahn-theme .lb-brands .lb-h2 h3,
body.lorin-bahn-theme .lb-brands-inner .lb-h2 h1,
body.lorin-bahn-theme .lb-brands-inner .lb-h2 h2,
body.lorin-bahn-theme .lb-brands-inner .lb-h2 h3{
  width:100%!important;
  max-width:560px!important;
  color:#111!important;
  font-family:Inter, Arial, sans-serif!important;
  font-size:22px!important;
  line-height:1.25!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  text-align:center!important;
  margin:0 auto!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brands .lb-h2:after,
body.lorin-bahn-theme .lb-brands-inner .lb-h2:after{
  content:""!important;
  display:block!important;
  width:68px!important;
  height:2px!important;
  background:#245b22!important;
  margin:14px auto 0!important;
}

/* Markenreihe */
body.lorin-bahn-theme .lb-brand-row{
  width:100%!important;
  max-width:1060px!important;
  margin:34px auto 0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:clamp(24px, 4vw, 56px)!important;
  background:transparent!important;
}

/* Text- oder Bildmarken */
body.lorin-bahn-theme .lb-brand-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:92px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  text-align:center!important;
}
body.lorin-bahn-theme .lb-brand-logo .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-logo p,
body.lorin-bahn-theme .lb-brand-logo .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-logo h1,
body.lorin-bahn-theme .lb-brand-logo h2,
body.lorin-bahn-theme .lb-brand-logo h3,
body.lorin-bahn-theme .lb-brand-logo a{
  margin:0!important;
  padding:0!important;
  color:#245b22!important;
  font-family:Inter, Arial, sans-serif!important;
  font-size:clamp(24px, 2.2vw, 34px)!important;
  line-height:1!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.lorin-bahn-theme .lb-brand-logo img{
  display:block!important;
  max-height:42px!important;
  width:auto!important;
  object-fit:contain!important;
  filter:none!important;
}
body.lorin-bahn-theme .lb-brand-logo:hover,
body.lorin-bahn-theme .lb-brand-logo a:hover{
  transform:translateY(-1px)!important;
}

/* Farbsequenz für Textmarken, wenn nur lb-brand-logo gesetzt wird */
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(1) p,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(1) .elementor-heading-title{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(2) p,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(2) .elementor-heading-title{color:#178c38!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(3) p,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(3) .elementor-heading-title{color:#e26b22!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(4) p,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(4) .elementor-heading-title{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(5) p,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(5) .elementor-heading-title{color:#e30613!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(6) p,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(6) .elementor-heading-title{color:#111!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(n+7) p,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(n+7) .elementor-heading-title{color:#333!important;font-size:18px!important;letter-spacing:.02em!important;}

/* Optionale Modifier-Klassen, falls du später die Farbe gezielt setzen möchtest */
body.lorin-bahn-theme .lb-brand-logo--marklin p,
body.lorin-bahn-theme .lb-brand-logo--marklin .elementor-heading-title{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-logo--trix p,
body.lorin-bahn-theme .lb-brand-logo--trix .elementor-heading-title{color:#178c38!important;}
body.lorin-bahn-theme .lb-brand-logo--roco p,
body.lorin-bahn-theme .lb-brand-logo--roco .elementor-heading-title{color:#e26b22!important;}
body.lorin-bahn-theme .lb-brand-logo--fleischmann p,
body.lorin-bahn-theme .lb-brand-logo--fleischmann .elementor-heading-title{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-logo--piko p,
body.lorin-bahn-theme .lb-brand-logo--piko .elementor-heading-title{color:#e30613!important;}
body.lorin-bahn-theme .lb-brand-logo--brawa p,
body.lorin-bahn-theme .lb-brand-logo--brawa .elementor-heading-title{color:#111!important;}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brands{padding:50px 24px 48px!important;}
  body.lorin-bahn-theme .lb-brand-row{gap:30px 42px!important;max-width:860px!important;}
  body.lorin-bahn-theme .lb-brand-logo .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-logo p,
  body.lorin-bahn-theme .lb-brand-logo .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-logo a{font-size:clamp(22px, 3vw, 30px)!important;}
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brands{padding:44px 18px 44px!important;}
  body.lorin-bahn-theme .lb-brands .lb-h2,
  body.lorin-bahn-theme .lb-brands-inner .lb-h2,
  body.lorin-bahn-theme .lb-brands .lb-h2 .elementor-heading-title,
  body.lorin-bahn-theme .lb-brands-inner .lb-h2 .elementor-heading-title{font-size:20px!important;}
  body.lorin-bahn-theme .lb-brand-row{margin-top:28px!important;gap:24px 30px!important;}
  body.lorin-bahn-theme .lb-brand-logo{min-width:auto!important;}
  body.lorin-bahn-theme .lb-brand-logo .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-logo p,
  body.lorin-bahn-theme .lb-brand-logo .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-logo a{font-size:24px!important;}
}

/* =========================================================
   Lorin-Bahn 1.4.1 – Royal Addons Footer Styles
   Ziel: Footer ist als separates Royal/Elementor Footer-Template baubar,
   nicht als Startseiten-Sektion. Klassen können global im Footer-Template
   verwendet werden.
   ========================================================= */
body.lorin-bahn-theme .lb-footer{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#080b09!important;
  color:#fff!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-footer-inner,
body.lorin-bahn-theme .lb-footer-stats,
body.lorin-bahn-theme .lb-footer-cta-inner{
  width:min(1180px, calc(100% - 56px))!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Obere Statistik-/Trust-Leiste */
body.lorin-bahn-theme .lb-footer-stats{
  display:grid!important;
  grid-template-columns:repeat(4, minmax(0, 1fr))!important;
  gap:0!important;
  align-items:stretch!important;
  padding:28px 0 24px!important;
  background:#080b09!important;
}
body.lorin-bahn-theme .lb-footer-stat{
  position:relative!important;
  display:grid!important;
  grid-template-columns:52px 1fr!important;
  gap:14px!important;
  align-items:center!important;
  min-height:72px!important;
  padding:0 24px!important;
  margin:0!important;
  color:#fff!important;
  background:transparent!important;
}
body.lorin-bahn-theme .lb-footer-stat:not(:last-child):after{
  content:""!important;
  position:absolute!important;
  top:8px!important;
  right:0!important;
  bottom:8px!important;
  width:1px!important;
  background:rgba(255,255,255,.14)!important;
}
body.lorin-bahn-theme .lb-footer-stat-icon,
body.lorin-bahn-theme .lb-footer-stat-icon .elementor-widget-container,
body.lorin-bahn-theme .lb-footer-stat-icon .elementor-icon-wrapper{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:52px!important;
  min-width:52px!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-footer-stat-icon .elementor-icon,
body.lorin-bahn-theme .lb-footer-stat-icon i,
body.lorin-bahn-theme .lb-footer-stat-icon svg{
  width:38px!important;
  height:38px!important;
  font-size:38px!important;
  color:#6fa651!important;
  fill:#6fa651!important;
}
body.lorin-bahn-theme .lb-footer-stat-content,
body.lorin-bahn-theme .lb-footer-stat-content .elementor-widget-container,
body.lorin-bahn-theme .lb-footer-stat-content p{
  color:rgba(255,255,255,.84)!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:400!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-footer-stat-content strong,
body.lorin-bahn-theme .lb-footer-stat-title,
body.lorin-bahn-theme .lb-footer-stat-title .elementor-heading-title{
  display:block!important;
  color:#6fa651!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  margin:0 0 3px!important;
  padding:0!important;
}

/* Untere CTA-Karte */
body.lorin-bahn-theme .lb-footer-cta{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 34px!important;
  background:#080b09!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-footer-cta-inner{
  display:grid!important;
  grid-template-columns:250px 1fr 330px!important;
  align-items:center!important;
  gap:26px!important;
  padding:21px 28px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.015)!important;
  box-shadow:none!important;
}
body.lorin-bahn-theme .lb-footer-logo,
body.lorin-bahn-theme .lb-footer-cta-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-footer-logo img,
body.lorin-bahn-theme .lb-footer-cta-logo img{
  max-width:220px!important;
  max-height:82px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  display:block!important;
}
body.lorin-bahn-theme .lb-footer-cta-text,
body.lorin-bahn-theme .lb-footer-cta-text .elementor-widget-container,
body.lorin-bahn-theme .lb-footer-cta-text p{
  margin:0!important;
  padding:0!important;
  color:rgba(255,255,255,.88)!important;
  font-size:17px!important;
  line-height:1.45!important;
  font-weight:400!important;
}
body.lorin-bahn-theme .lb-footer-cta-text strong,
body.lorin-bahn-theme .lb-footer-cta-text b,
body.lorin-bahn-theme .lb-footer-cta-title,
body.lorin-bahn-theme .lb-footer-cta-title .elementor-heading-title{
  display:block!important;
  color:#fff!important;
  font-family:Georgia, 'Times New Roman', Times, serif!important;
  font-size:25px!important;
  line-height:1.2!important;
  font-weight:500!important;
  margin:0 0 3px!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-footer-cta-text em,
body.lorin-bahn-theme .lb-footer-cta-text .lb-footer-green{
  color:#6fa651!important;
  font-style:normal!important;
}
body.lorin-bahn-theme .lb-footer-cta-button,
body.lorin-bahn-theme .lb-footer-cta-button .elementor-widget-container,
body.lorin-bahn-theme .lb-footer-cta-button .elementor-button-wrapper{
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-footer-cta-button .elementor-button,
body.lorin-bahn-theme .lb-footer-cta-button a,
body.lorin-bahn-theme .lb-footer a.lb-footer-wa-button{
  width:100%!important;
  max-width:310px!important;
  min-height:58px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  padding:14px 22px!important;
  border-radius:7px!important;
  background:linear-gradient(135deg,#2f7132 0%, #173d18 100%)!important;
  border:1px solid rgba(255,255,255,.15)!important;
  color:#fff!important;
  font-size:17px!important;
  font-weight:800!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body.lorin-bahn-theme .lb-footer-cta-button .elementor-button:before,
body.lorin-bahn-theme .lb-footer-cta-button a:before,
body.lorin-bahn-theme .lb-footer a.lb-footer-wa-button:before{
  content:""!important;
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
  display:block!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:30px 30px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='24' fill='none' stroke='%23fff' stroke-width='4'/%3E%3Cpath fill='%23fff' d='M32.1 18.2c-7.7 0-14 6.2-14 13.9 0 2.6.7 5 2 7.1l-2.1 7.6 7.8-2c2 1.1 4.2 1.7 6.3 1.7 7.7 0 13.9-6.2 13.9-13.9s-6.2-14.4-13.9-14.4zm0 25.5c-2 0-4-.5-5.7-1.6l-.4-.2-4.6 1.2 1.2-4.5-.3-.5c-1.1-1.8-1.7-3.8-1.7-5.9 0-6.3 5.1-11.4 11.4-11.4s11.4 5.1 11.4 11.4-5 11.5-11.3 11.5zm6.3-8.6c-.3-.2-2-.9-2.3-1-.3-.1-.5-.2-.8.2-.2.3-.9 1-.1 1.2-.2.2-.4.2-.7.1-.3-.2-1.4-.5-2.7-1.7-1-.9-1.7-2-1.9-2.4-.2-.3 0-.5.1-.7l.5-.6c.2-.2.2-.3.3-.6.1-.2.1-.4 0-.6-.1-.2-.8-1.9-1-2.5-.3-.6-.5-.5-.8-.5h-.6c-.2 0-.6.1-.9.4-.3.3-1.2 1.2-1.2 2.8s1.2 3.2 1.3 3.4c.2.2 2.4 3.7 5.9 5.1.8.4 1.5.6 2 .7.8.3 1.6.2 2.2.1.7-.1 2-.8 2.3-1.6.3-.8.3-1.5.2-1.6-.1-.1-.3-.2-.6-.4z'/%3E%3C/svg%3E")!important;
}
body.lorin-bahn-theme .lb-footer-cta-button .elementor-button:hover,
body.lorin-bahn-theme .lb-footer-cta-button a:hover,
body.lorin-bahn-theme .lb-footer a.lb-footer-wa-button:hover{
  background:linear-gradient(135deg,#397f3c 0%, #1f5b24 100%)!important;
  transform:translateY(-1px)!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-footer-inner,
  body.lorin-bahn-theme .lb-footer-stats,
  body.lorin-bahn-theme .lb-footer-cta-inner{width:calc(100% - 44px)!important;}
  body.lorin-bahn-theme .lb-footer-stats{grid-template-columns:repeat(2, minmax(0,1fr))!important;gap:0!important;}
  body.lorin-bahn-theme .lb-footer-stat{padding:18px 24px!important;}
  body.lorin-bahn-theme .lb-footer-stat:nth-child(2n):after{display:none!important;}
  body.lorin-bahn-theme .lb-footer-stat:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)!important;}
  body.lorin-bahn-theme .lb-footer-cta-inner{grid-template-columns:1fr!important;text-align:center!important;gap:18px!important;}
  body.lorin-bahn-theme .lb-footer-logo,
  body.lorin-bahn-theme .lb-footer-cta-logo,
  body.lorin-bahn-theme .lb-footer-cta-button,
  body.lorin-bahn-theme .lb-footer-cta-button .elementor-widget-container,
  body.lorin-bahn-theme .lb-footer-cta-button .elementor-button-wrapper{justify-content:center!important;}
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-footer-inner,
  body.lorin-bahn-theme .lb-footer-stats,
  body.lorin-bahn-theme .lb-footer-cta-inner{width:calc(100% - 28px)!important;}
  body.lorin-bahn-theme .lb-footer-stats{grid-template-columns:1fr!important;padding:24px 0 20px!important;}
  body.lorin-bahn-theme .lb-footer-stat{grid-template-columns:44px 1fr!important;padding:18px 8px!important;}
  body.lorin-bahn-theme .lb-footer-stat:after{display:none!important;}
  body.lorin-bahn-theme .lb-footer-stat + .lb-footer-stat{border-top:1px solid rgba(255,255,255,.14)!important;}
  body.lorin-bahn-theme .lb-footer-cta{padding-bottom:24px!important;}
  body.lorin-bahn-theme .lb-footer-cta-inner{padding:22px 18px!important;}
  body.lorin-bahn-theme .lb-footer-cta-text strong,
  body.lorin-bahn-theme .lb-footer-cta-title .elementor-heading-title{font-size:22px!important;}
  body.lorin-bahn-theme .lb-footer-cta-button .elementor-button,
  body.lorin-bahn-theme .lb-footer-cta-button a{max-width:100%!important;}
}

/* =========================================================
   Lorin-Bahn 1.4.2 – Footer Legal Bar
   Ziel: Unterhalb der Footer-CTA-Karte Copyright links und rechtliche
   Menüpunkte rechts nebeneinander im Royal/Elementor Footer Template.
   ========================================================= */
body.lorin-bahn-theme .lb-footer-legal{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 22px!important;
  background:#080b09!important;
  color:rgba(255,255,255,.72)!important;
}
body.lorin-bahn-theme .lb-footer-legal-inner{
  width:min(1180px, calc(100% - 56px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:18px 0 0!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
}
body.lorin-bahn-theme .lb-footer-copyright,
body.lorin-bahn-theme .lb-footer-copyright .elementor-widget-container,
body.lorin-bahn-theme .lb-footer-copyright p{
  margin:0!important;
  padding:0!important;
  color:rgba(255,255,255,.68)!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:400!important;
  text-align:left!important;
}
body.lorin-bahn-theme .lb-footer-legal-menu{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:20px!important;
  margin:0!important;
  padding:0!important;
  color:rgba(255,255,255,.72)!important;
}
body.lorin-bahn-theme .lb-footer-legal-menu ul,
body.lorin-bahn-theme .lb-footer-legal-menu .menu{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:0!important;
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-footer-legal-menu li{
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-footer-legal-menu li:not(:last-child):after,
body.lorin-bahn-theme .lb-footer-legal-link:not(:last-child):after{
  content:""!important;
  display:inline-block!important;
  width:1px!important;
  height:13px!important;
  margin:0 12px!important;
  background:rgba(255,255,255,.22)!important;
}
body.lorin-bahn-theme .lb-footer-legal-menu a,
body.lorin-bahn-theme .lb-footer-legal-link,
body.lorin-bahn-theme .lb-footer-legal-link a{
  color:rgba(255,255,255,.72)!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:500!important;
  text-decoration:none!important;
  text-transform:none!important;
  letter-spacing:0!important;
  transition:color .18s ease!important;
}
body.lorin-bahn-theme .lb-footer-legal-menu a:hover,
body.lorin-bahn-theme .lb-footer-legal-link a:hover{
  color:#6fa651!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-footer-legal-inner{
    width:calc(100% - 44px)!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-footer-legal{
    padding-bottom:20px!important;
  }
  body.lorin-bahn-theme .lb-footer-legal-inner{
    width:calc(100% - 28px)!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
    text-align:center!important;
  }
  body.lorin-bahn-theme .lb-footer-copyright,
  body.lorin-bahn-theme .lb-footer-copyright .elementor-widget-container,
  body.lorin-bahn-theme .lb-footer-copyright p{
    text-align:center!important;
  }
  body.lorin-bahn-theme .lb-footer-legal-menu,
  body.lorin-bahn-theme .lb-footer-legal-menu ul,
  body.lorin-bahn-theme .lb-footer-legal-menu .menu{
    justify-content:center!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.4.3 – Mobile Header Alignment + Process Mobile Cards
   Ziel 1: Schwarzer mobiler Header endet auf gleicher Höhe wie weißer Logo-Bogen.
   Ziel 2: Prozess mobil als hochwertige, kompaktere Karten hervorheben.
   ========================================================= */
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    height:92px!important;
    min-height:92px!important;
    max-height:92px!important;
    background:#080b09!important;
    overflow:visible!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu,
  body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-wpr-nav-menu,
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-container,
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu-container,
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-wrap{
    height:92px!important;
    min-height:92px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
    top:92px!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    height:84px!important;
    min-height:84px!important;
    max-height:84px!important;
    background:#080b09!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    height:84px!important;
    min-height:84px!important;
    max-height:84px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu,
  body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-wpr-nav-menu,
  body.lorin-bahn-theme .lb-header .lb-header-menu .elementor-widget-container,
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu-container,
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-wrap{
    height:84px!important;
    min-height:84px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-wrap{
    align-items:center!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
    top:84px!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-process{
    padding:46px 18px 50px!important;
    background:#fff!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-grid{
    width:100%!important;
    max-width:390px!important;
    gap:20px!important;
    margin-top:32px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-step{
    position:relative!important;
    width:100%!important;
    min-height:0!important;
    padding:26px 22px 24px!important;
    border:1px solid rgba(36,91,34,.13)!important;
    border-radius:20px!important;
    background:#fff!important;
    box-shadow:0 16px 40px rgba(0,0,0,.08)!important;
    overflow:hidden!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-step:before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:5px!important;
    background:#245b22!important;
    display:block!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-step:after{
    display:none!important;
    content:none!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-number,
  body.lorin-bahn-theme .lb-process .lb-process-number .elementor-widget-container,
  body.lorin-bahn-theme .lb-process .lb-process-number p{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    margin:0 auto 16px!important;
    font-size:15px!important;
    box-shadow:0 8px 18px rgba(36,91,34,.18)!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-icon,
  body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-widget-container,
  body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon-wrapper{
    margin-bottom:20px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon{
    width:78px!important;
    height:78px!important;
    min-width:78px!important;
    min-height:78px!important;
    box-shadow:0 18px 34px rgba(15,43,18,.18)!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon i,
  body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon svg{
    width:36px!important;
    height:36px!important;
    font-size:36px!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-title,
  body.lorin-bahn-theme .lb-process .lb-process-title .elementor-widget-container,
  body.lorin-bahn-theme .lb-process .lb-process-title .elementor-heading-title{
    font-size:17px!important;
    line-height:1.25!important;
    margin-bottom:12px!important;
    letter-spacing:.055em!important;
  }
  body.lorin-bahn-theme .lb-process .lb-process-text,
  body.lorin-bahn-theme .lb-process .lb-process-text .elementor-widget-container,
  body.lorin-bahn-theme .lb-process .lb-process-text p{
    max-width:260px!important;
    font-size:15.5px!important;
    line-height:1.55!important;
    color:#5d665d!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.4.4 – Process number duplicate circle fix
   The number widget in Elementor wraps text in nested elements.
   Only the widget itself should render the green circle.
   ========================================================= */
body.lorin-bahn-theme .lb-process .lb-process-number{
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  margin:0 0 8px!important;
  padding:0!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  text-align:center!important;
  box-shadow:0 8px 18px rgba(15,43,18,.10)!important;
}
body.lorin-bahn-theme .lb-process .lb-process-number .elementor-widget-container,
body.lorin-bahn-theme .lb-process .lb-process-number p{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:inherit!important;
  display:block!important;
  line-height:1!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  text-align:center!important;
  box-shadow:none!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-process .lb-process-number{
    margin:0 auto 12px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.4.5 – Hero background position controlled by Elementor
   Do not force background-position on .lb-hero. This allows Elementor's
   responsive background-position controls (desktop/tablet/mobile) to work.
   Keep size/repeat as sensible fallback only.
   ========================================================= */
body.lorin-bahn-theme .lb-hero{
  background-size:cover!important;
  background-repeat:no-repeat!important;
}

/* =========================================================
   Lorin-Bahn 1.4.6 – iPad / schmale Desktop-Header Optimierung
   Ziel: Menüeinträge wie "Über Uns" dürfen nicht umbrechen.
   Statt Menü breiter zu machen, wird der Header auf iPad-Breiten kompakter.
   ========================================================= */
body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a,
body.lorin-bahn-theme .lb-header .wpr-menu-item,
body.lorin-bahn-theme .lb-header nav.wpr-nav-menu-container a{
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

@media(min-width:1025px) and (max-width:1240px){
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full{
    padding-right:18px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 292px!important;
    width:292px!important;
    max-width:292px!important;
    height:104px!important;
    min-height:104px!important;
    max-height:104px!important;
    padding:6px 82px 10px 34px!important;
    clip-path:path('M 0 0 L 178 0 C 211 8 222 55 250 80 C 263 96 279 102 292 104 L 0 104 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:158px!important;
    max-height:88px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu{
    padding-left:12px!important;
    padding-right:8px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu{
    gap:13px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a,
  body.lorin-bahn-theme .lb-header .wpr-menu-item,
  body.lorin-bahn-theme .lb-header nav.wpr-nav-menu-container a{
    font-size:10.2px!important;
    letter-spacing:.025em!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta{
    flex:0 0 170px!important;
    width:170px!important;
    max-width:170px!important;
    padding-left:8px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta a,
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
  body.lorin-bahn-theme .lb-header a.lb-header-button,
  body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
    width:148px!important;
    min-width:148px!important;
    max-width:148px!important;
    font-size:12px!important;
    gap:8px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta a:before,
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:before,
  body.lorin-bahn-theme .lb-header a.lb-header-button:before,
  body.lorin-bahn-theme .lb-header a.lb-whatsapp-button:before{
    width:25px!important;
    height:25px!important;
    flex-basis:25px!important;
    background-size:25px 25px!important;
  }
}

@media(min-width:1025px) and (max-width:1100px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex-basis:270px!important;
    width:270px!important;
    max-width:270px!important;
    padding-left:28px!important;
    padding-right:72px!important;
    clip-path:path('M 0 0 L 160 0 C 193 8 205 52 230 78 C 242 94 258 102 270 104 L 0 104 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:145px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu{
    gap:10px!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a,
  body.lorin-bahn-theme .lb-header .wpr-menu-item,
  body.lorin-bahn-theme .lb-header nav.wpr-nav-menu-container a{
    font-size:9.8px!important;
    letter-spacing:.015em!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta{
    flex-basis:160px!important;
    width:160px!important;
    max-width:160px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.4.7 – Footer Stat Links
   Ziel: Links in der Trust-/Bewertungsleiste des Footers sauber im
   dunklen Footer stylen und Elementor-Linkfarben überschreiben.
   ========================================================= */
body.lorin-bahn-theme .lb-footer-stat-content a,
body.lorin-bahn-theme .lb-footer-stat-content .elementor-widget-container a,
body.lorin-bahn-theme .lb-footer-stat-content p a{
  color:rgba(255,255,255,.86)!important;
  text-decoration:none!important;
  border-bottom:1px solid rgba(111,166,81,.45)!important;
  padding-bottom:1px!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:500!important;
  transition:color .18s ease, border-color .18s ease!important;
}
body.lorin-bahn-theme .lb-footer-stat-content a:hover,
body.lorin-bahn-theme .lb-footer-stat-content .elementor-widget-container a:hover,
body.lorin-bahn-theme .lb-footer-stat-content p a:hover{
  color:#6fa651!important;
  border-bottom-color:#6fa651!important;
}
body.lorin-bahn-theme .lb-footer-stat-content p br + a{
  display:inline-block!important;
  margin-top:3px!important;
}
body.lorin-bahn-theme .lb-footer-stat-content strong + br + a{
  margin-top:3px!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-footer-stat-content a,
  body.lorin-bahn-theme .lb-footer-stat-content .elementor-widget-container a,
  body.lorin-bahn-theme .lb-footer-stat-content p a{
    font-size:14px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.4.8 – Footer Stat Link Spacing
   Ziel: Kein zusätzlicher Abstand zwischen Stat-Überschrift und Links.
   Der Umbruch nach <strong> wird vom Strong selbst erzeugt; das folgende <br>
   wird deshalb ausgeblendet.
   ========================================================= */
body.lorin-bahn-theme .lb-footer-stat-content strong + br,
body.lorin-bahn-theme .lb-footer-stat-content b + br{
  display:none!important;
}
body.lorin-bahn-theme .lb-footer-stat-content p > a{
  display:inline-block!important;
  margin-top:0!important;
}
body.lorin-bahn-theme .lb-footer-stat-content p > a + br{
  display:none!important;
}
body.lorin-bahn-theme .lb-footer-stat-content p > a + br + a,
body.lorin-bahn-theme .lb-footer-stat-content p > a + a{
  margin-top:3px!important;
}
body.lorin-bahn-theme .lb-footer-stat-content p br + a{
  margin-top:0!important;
}

/* =========================================================
   Lorin-Bahn 1.4.9 – Kontakt-/Anfragebereich mit WPForms
   Ziel: WPForms nicht im Marken-Container nutzen. Neuer Elementor-Aufbau:
   .lb-contact > .lb-contact-inner > .lb-h2 + .lb-contact-form
   ========================================================= */
body.lorin-bahn-theme .lb-contact{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:70px 32px 76px!important;
  background:#fff!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-contact-inner{
  width:min(960px, 100%)!important;
  max-width:960px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
}
body.lorin-bahn-theme .lb-contact-inner > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-contact .lb-h2,
body.lorin-bahn-theme .lb-contact-inner .lb-h2,
body.lorin-bahn-theme .lb-contact .lb-h2 .elementor-widget-container,
body.lorin-bahn-theme .lb-contact-inner .lb-h2 .elementor-widget-container,
body.lorin-bahn-theme .lb-contact .lb-h2 .elementor-heading-title,
body.lorin-bahn-theme .lb-contact-inner .lb-h2 .elementor-heading-title{
  width:100%!important;
  max-width:620px!important;
  color:#111!important;
  font-family:Inter, Arial, sans-serif!important;
  font-size:24px!important;
  line-height:1.25!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  text-align:center!important;
  margin:0 auto!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-contact .lb-h2:after,
body.lorin-bahn-theme .lb-contact-inner .lb-h2:after{
  content:""!important;
  display:block!important;
  width:68px!important;
  height:2px!important;
  background:#245b22!important;
  margin:14px auto 0!important;
}

/* WPForms Breite */
body.lorin-bahn-theme .lb-contact-form,
body.lorin-bahn-theme .lb-contact .elementor-widget-wpforms,
body.lorin-bahn-theme .lb-contact-inner .elementor-widget-wpforms{
  width:100%!important;
  max-width:880px!important;
  margin:34px auto 0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-contact-form .elementor-widget-container,
body.lorin-bahn-theme .lb-contact .elementor-widget-wpforms .elementor-widget-container,
body.lorin-bahn-theme .lb-contact-inner .elementor-widget-wpforms .elementor-widget-container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-container,
body.lorin-bahn-theme .lb-contact-inner .wpforms-container,
body.lorin-bahn-theme .lb-contact-form .wpforms-container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-form,
body.lorin-bahn-theme .lb-contact-inner .wpforms-form,
body.lorin-bahn-theme .lb-contact-form .wpforms-form{
  width:100%!important;
  max-width:none!important;
}

/* Felder */
body.lorin-bahn-theme .lb-contact .wpforms-field,
body.lorin-bahn-theme .lb-contact-inner .wpforms-field,
body.lorin-bahn-theme .lb-contact-form .wpforms-field{
  padding:0 0 20px!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-field-label,
body.lorin-bahn-theme .lb-contact-inner .wpforms-field-label,
body.lorin-bahn-theme .lb-contact-form .wpforms-field-label,
body.lorin-bahn-theme .lb-contact legend.wpforms-field-label,
body.lorin-bahn-theme .lb-contact-inner legend.wpforms-field-label{
  color:#111!important;
  font-size:15px!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:.015em!important;
  margin:0 0 8px!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-required-label,
body.lorin-bahn-theme .lb-contact-inner .wpforms-required-label,
body.lorin-bahn-theme .lb-contact-form .wpforms-required-label{
  color:#a23a32!important;
}
body.lorin-bahn-theme .lb-contact input[type="text"],
body.lorin-bahn-theme .lb-contact input[type="email"],
body.lorin-bahn-theme .lb-contact input[type="tel"],
body.lorin-bahn-theme .lb-contact textarea,
body.lorin-bahn-theme .lb-contact-inner input[type="text"],
body.lorin-bahn-theme .lb-contact-inner input[type="email"],
body.lorin-bahn-theme .lb-contact-inner input[type="tel"],
body.lorin-bahn-theme .lb-contact-inner textarea,
body.lorin-bahn-theme .lb-contact-form input[type="text"],
body.lorin-bahn-theme .lb-contact-form input[type="email"],
body.lorin-bahn-theme .lb-contact-form input[type="tel"],
body.lorin-bahn-theme .lb-contact-form textarea{
  width:100%!important;
  max-width:none!important;
  border:1px solid rgba(0,0,0,.18)!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:none!important;
  outline:none!important;
  transition:border-color .18s ease, box-shadow .18s ease!important;
}
body.lorin-bahn-theme .lb-contact input:focus,
body.lorin-bahn-theme .lb-contact textarea:focus,
body.lorin-bahn-theme .lb-contact-inner input:focus,
body.lorin-bahn-theme .lb-contact-inner textarea:focus,
body.lorin-bahn-theme .lb-contact-form input:focus,
body.lorin-bahn-theme .lb-contact-form textarea:focus{
  border-color:#245b22!important;
  box-shadow:0 0 0 3px rgba(36,91,34,.10)!important;
}
body.lorin-bahn-theme .lb-contact textarea,
body.lorin-bahn-theme .lb-contact-inner textarea,
body.lorin-bahn-theme .lb-contact-form textarea{
  min-height:160px!important;
  resize:vertical!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-field-sublabel,
body.lorin-bahn-theme .lb-contact-inner .wpforms-field-sublabel,
body.lorin-bahn-theme .lb-contact-form .wpforms-field-sublabel{
  color:#667066!important;
  font-size:13px!important;
  line-height:1.35!important;
  margin-top:6px!important;
}

/* WPForms Halbspalten stabilisieren */
body.lorin-bahn-theme .lb-contact .wpforms-one-half,
body.lorin-bahn-theme .lb-contact-inner .wpforms-one-half,
body.lorin-bahn-theme .lb-contact-form .wpforms-one-half{
  width:calc(50% - 12px)!important;
  margin-left:24px!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-first,
body.lorin-bahn-theme .lb-contact-inner .wpforms-first,
body.lorin-bahn-theme .lb-contact-form .wpforms-first{
  margin-left:0!important;
  clear:both!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-field-row,
body.lorin-bahn-theme .lb-contact-inner .wpforms-field-row,
body.lorin-bahn-theme .lb-contact-form .wpforms-field-row{
  width:100%!important;
  max-width:none!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-field-row-block,
body.lorin-bahn-theme .lb-contact-inner .wpforms-field-row-block,
body.lorin-bahn-theme .lb-contact-form .wpforms-field-row-block{
  width:calc(50% - 12px)!important;
  margin-left:24px!important;
}
body.lorin-bahn-theme .lb-contact .wpforms-field-row-block.wpforms-first,
body.lorin-bahn-theme .lb-contact-inner .wpforms-field-row-block.wpforms-first,
body.lorin-bahn-theme .lb-contact-form .wpforms-field-row-block.wpforms-first{
  margin-left:0!important;
}

/* Button */
body.lorin-bahn-theme .lb-contact .wpforms-submit-container,
body.lorin-bahn-theme .lb-contact-inner .wpforms-submit-container,
body.lorin-bahn-theme .lb-contact-form .wpforms-submit-container{
  margin-top:4px!important;
  padding:0!important;
  text-align:left!important;
}
body.lorin-bahn-theme .lb-contact button.wpforms-submit,
body.lorin-bahn-theme .lb-contact-inner button.wpforms-submit,
body.lorin-bahn-theme .lb-contact-form button.wpforms-submit{
  min-height:48px!important;
  padding:13px 25px!important;
  border:0!important;
  border-radius:7px!important;
  background:linear-gradient(135deg,#2f7132 0%,#173d18 100%)!important;
  color:#fff!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:800!important;
  box-shadow:0 12px 25px rgba(15,43,18,.18)!important;
  transition:transform .18s ease, background .18s ease!important;
}
body.lorin-bahn-theme .lb-contact button.wpforms-submit:hover,
body.lorin-bahn-theme .lb-contact-inner button.wpforms-submit:hover,
body.lorin-bahn-theme .lb-contact-form button.wpforms-submit:hover{
  transform:translateY(-1px)!important;
  background:linear-gradient(135deg,#397f3c 0%,#1f5b24 100%)!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-contact{padding:58px 24px 64px!important;}
  body.lorin-bahn-theme .lb-contact-inner{max-width:860px!important;}
  body.lorin-bahn-theme .lb-contact-form,
  body.lorin-bahn-theme .lb-contact .elementor-widget-wpforms,
  body.lorin-bahn-theme .lb-contact-inner .elementor-widget-wpforms{max-width:820px!important;}
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-contact{padding:50px 18px 56px!important;}
  body.lorin-bahn-theme .lb-contact .lb-h2 .elementor-heading-title,
  body.lorin-bahn-theme .lb-contact-inner .lb-h2 .elementor-heading-title{font-size:21px!important;}
  body.lorin-bahn-theme .lb-contact-form,
  body.lorin-bahn-theme .lb-contact .elementor-widget-wpforms,
  body.lorin-bahn-theme .lb-contact-inner .elementor-widget-wpforms{margin-top:28px!important;max-width:none!important;}
  body.lorin-bahn-theme .lb-contact .wpforms-one-half,
  body.lorin-bahn-theme .lb-contact-inner .wpforms-one-half,
  body.lorin-bahn-theme .lb-contact-form .wpforms-one-half,
  body.lorin-bahn-theme .lb-contact .wpforms-field-row-block,
  body.lorin-bahn-theme .lb-contact-inner .wpforms-field-row-block,
  body.lorin-bahn-theme .lb-contact-form .wpforms-field-row-block{
    width:100%!important;
    margin-left:0!important;
    float:none!important;
  }
  body.lorin-bahn-theme .lb-contact button.wpforms-submit,
  body.lorin-bahn-theme .lb-contact-inner button.wpforms-submit,
  body.lorin-bahn-theme .lb-contact-form button.wpforms-submit{
    width:100%!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.5.0 – Desktop Header CTA ohne WhatsApp-Icon
   Ziel: Desktop CTA zeigt "Jetzt Anfragen" ohne WhatsApp-Symbol.
   Mobile bleibt unverändert, da dort der CTA nicht im Header angezeigt wird.
   ========================================================= */
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-cta a:before,
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:before,
  body.lorin-bahn-theme .lb-header a.lb-header-button:before,
  body.lorin-bahn-theme .lb-header a.lb-whatsapp-button:before{
    content:none!important;
    display:none!important;
    background-image:none!important;
    width:0!important;
    height:0!important;
    flex-basis:0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta a,
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
  body.lorin-bahn-theme .lb-header a.lb-header-button,
  body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
    width:154px!important;
    min-width:154px!important;
    max-width:154px!important;
    min-height:46px!important;
    height:46px!important;
    padding:8px 16px!important;
    gap:0!important;
    text-align:center!important;
    justify-content:center!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text{
    display:block!important;
    color:#fff!important;
    font-size:0!important;
    line-height:0!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text:after{
    content:"Jetzt Anfragen"!important;
    display:block!important;
    color:#fff!important;
    font-size:14px!important;
    line-height:1.05!important;
    font-weight:900!important;
    text-align:center!important;
    white-space:nowrap!important;
    text-shadow:0 1px 1px rgba(0,0,0,.32)!important;
  }
}
@media(min-width:1025px) and (max-width:1240px){
  body.lorin-bahn-theme .lb-header .lb-header-cta a,
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
  body.lorin-bahn-theme .lb-header a.lb-header-button,
  body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
    width:140px!important;
    min-width:140px!important;
    max-width:140px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text:after{
    font-size:13px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.5.1 – Hero background-position fully released
   Entfernt die letzte alte !important-Hintergrundposition aus .lb-hero,
   damit Elementor die responsive Position wirklich steuern kann.
   ========================================================= */
body.lorin-bahn-theme .lb-hero{
  background-size:cover!important;
  background-repeat:no-repeat!important;
}


/* Lorin-Bahn 1.5.2 – version metadata corrected: style.css and LORIN_CHILD_VERSION now match the ZIP release. */

/* =========================================================
   Lorin-Bahn 1.5.3 – Google Bewertungen aus Hero herauslösen
   Neuer separater Bewertungsbereich: .lb-reviews
   ========================================================= */

/* Alte Hero-Bewertungsbox im Hero deaktivieren, sobald sie dort noch existiert. */
body.lorin-bahn-theme .lb-hero .lb-google-rating{
  display:none!important;
}

/* Neuer Bewertungsbereich */
body.lorin-bahn-theme .lb-reviews{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:58px 32px!important;
  background:linear-gradient(180deg,#fff 0%,#f7f8f4 100%)!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-reviews-inner{
  width:min(1180px,100%)!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) minmax(360px, 440px)!important;
  gap:46px!important;
  align-items:center!important;
}
body.lorin-bahn-theme .lb-reviews-inner > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  display:contents!important;
}

/* Textseite */
body.lorin-bahn-theme .lb-reviews-content{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  max-width:650px!important;
}
body.lorin-bahn-theme .lb-reviews .lb-kicker,
body.lorin-bahn-theme .lb-reviews .lb-kicker .elementor-heading-title,
body.lorin-bahn-theme .lb-reviews .lb-kicker p{
  color:#245b22!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  margin:0 0 10px!important;
}
body.lorin-bahn-theme .lb-reviews .lb-h2,
body.lorin-bahn-theme .lb-reviews .lb-h2 .elementor-heading-title,
body.lorin-bahn-theme .lb-reviews .lb-h2 h2,
body.lorin-bahn-theme .lb-reviews .lb-h2 h3{
  color:#111!important;
  font-family:Georgia, 'Times New Roman', Times, serif!important;
  font-size:clamp(34px, 3.3vw, 48px)!important;
  line-height:1.12!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-align:left!important;
  margin:0 0 18px!important;
  max-width:620px!important;
}
body.lorin-bahn-theme .lb-reviews-text,
body.lorin-bahn-theme .lb-reviews-text .elementor-widget-container,
body.lorin-bahn-theme .lb-reviews-text p{
  color:#4f594f!important;
  font-size:18px!important;
  line-height:1.6!important;
  font-weight:400!important;
  margin:0!important;
  max-width:620px!important;
}

/* Bewertungs-Karte */
body.lorin-bahn-theme .lb-reviews-card,
body.lorin-bahn-theme .lb-reviews .lb-google-rating{
  display:block!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:440px!important;
  margin:0!important;
  padding:30px 32px!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid rgba(0,0,0,.06)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.10)!important;
  color:#111!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-reviews-card:before,
body.lorin-bahn-theme .lb-reviews .lb-google-rating:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:6px!important;
  background:#245b22!important;
}
body.lorin-bahn-theme .lb-reviews-rating-top,
body.lorin-bahn-theme .lb-reviews .lb-google-rating__top{
  display:flex!important;
  align-items:center!important;
  gap:20px!important;
  padding:0 0 20px!important;
  margin:0 0 20px!important;
  border-bottom:1px solid rgba(0,0,0,.09)!important;
}
body.lorin-bahn-theme .lb-reviews-g,
body.lorin-bahn-theme .lb-reviews .lb-google-rating__g{
  flex:0 0 58px!important;
  width:58px!important;
  height:58px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:16px!important;
  background:#f4f7fb!important;
  color:#4285f4!important;
  font-size:40px!important;
  line-height:1!important;
  font-family:Arial, sans-serif!important;
  font-weight:900!important;
}
body.lorin-bahn-theme .lb-reviews-score,
body.lorin-bahn-theme .lb-reviews .lb-google-rating strong{
  color:#111!important;
  font-size:32px!important;
  line-height:1!important;
  font-weight:900!important;
  margin:0 10px 0 0!important;
}
body.lorin-bahn-theme .lb-reviews-stars,
body.lorin-bahn-theme .lb-reviews .lb-google-rating span:not(.lb-google-rating__g){
  color:#245b22!important;
  font-size:19px!important;
  letter-spacing:.13em!important;
  white-space:nowrap!important;
}
body.lorin-bahn-theme .lb-reviews-count,
body.lorin-bahn-theme .lb-reviews .lb-google-rating small{
  display:block!important;
  color:#4f594f!important;
  font-size:15px!important;
  line-height:1.4!important;
  margin:7px 0 0!important;
}
body.lorin-bahn-theme .lb-reviews-bottom,
body.lorin-bahn-theme .lb-reviews .lb-google-rating__bottom{
  color:#111!important;
  font-size:17px!important;
  line-height:1.5!important;
  font-weight:500!important;
  text-align:left!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-reviews-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:22px!important;
}
body.lorin-bahn-theme .lb-reviews-actions a,
body.lorin-bahn-theme .lb-reviews-card .elementor-button,
body.lorin-bahn-theme .lb-reviews .lb-google-rating a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:11px 18px!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:800!important;
  text-decoration:none!important;
  border:1px solid rgba(36,91,34,.2)!important;
}
body.lorin-bahn-theme .lb-reviews-actions a:hover,
body.lorin-bahn-theme .lb-reviews-card .elementor-button:hover,
body.lorin-bahn-theme .lb-reviews .lb-google-rating a:hover{
  background:#173d18!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-reviews{padding:52px 24px!important;}
  body.lorin-bahn-theme .lb-reviews-inner{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  body.lorin-bahn-theme .lb-reviews-content{
    align-items:center!important;
    text-align:center!important;
    margin:0 auto!important;
  }
  body.lorin-bahn-theme .lb-reviews .lb-h2,
  body.lorin-bahn-theme .lb-reviews .lb-h2 .elementor-heading-title,
  body.lorin-bahn-theme .lb-reviews-text,
  body.lorin-bahn-theme .lb-reviews-text p{
    text-align:center!important;
  }
  body.lorin-bahn-theme .lb-reviews-card,
  body.lorin-bahn-theme .lb-reviews .lb-google-rating{
    margin:0 auto!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-reviews{padding:46px 18px!important;}
  body.lorin-bahn-theme .lb-reviews-card,
  body.lorin-bahn-theme .lb-reviews .lb-google-rating{
    padding:26px 24px!important;
    border-radius:18px!important;
  }
  body.lorin-bahn-theme .lb-reviews-rating-top,
  body.lorin-bahn-theme .lb-reviews .lb-google-rating__top{
    gap:16px!important;
  }
  body.lorin-bahn-theme .lb-reviews-score,
  body.lorin-bahn-theme .lb-reviews .lb-google-rating strong{
    font-size:28px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.5.4 – Bewertung neben Kontaktformular
   Ziel: Keine neue Hauptsektion. Bewertungskarte sitzt innerhalb von .lb-contact
   neben dem WPForms Formular.
   ========================================================= */
body.lorin-bahn-theme .lb-contact-layout{
  width:min(1100px, 100%)!important;
  max-width:1100px!important;
  margin:34px auto 0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) minmax(320px, 390px)!important;
  gap:34px!important;
  align-items:start!important;
}
body.lorin-bahn-theme .lb-contact-layout > .e-con-inner{
  display:contents!important;
}
body.lorin-bahn-theme .lb-contact-layout .lb-contact-form,
body.lorin-bahn-theme .lb-contact-layout .elementor-widget-wpforms{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-contact-layout .lb-contact-reviews,
body.lorin-bahn-theme .lb-contact-reviews{
  width:100%!important;
  max-width:390px!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
}
body.lorin-bahn-theme .lb-contact-layout .lb-reviews-card,
body.lorin-bahn-theme .lb-contact-reviews .lb-reviews-card{
  width:100%!important;
  max-width:390px!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-contact-layout .lb-reviews-card .lb-reviews-actions,
body.lorin-bahn-theme .lb-contact-reviews .lb-reviews-card .lb-reviews-actions{
  margin-top:20px!important;
}
body.lorin-bahn-theme .lb-contact-layout .lb-reviews-card .lb-reviews-actions a,
body.lorin-bahn-theme .lb-contact-reviews .lb-reviews-card .lb-reviews-actions a{
  width:100%!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-contact-layout{
    max-width:820px!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  body.lorin-bahn-theme .lb-contact-layout .lb-contact-reviews,
  body.lorin-bahn-theme .lb-contact-reviews,
  body.lorin-bahn-theme .lb-contact-layout .lb-reviews-card,
  body.lorin-bahn-theme .lb-contact-reviews .lb-reviews-card{
    max-width:520px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-contact-layout{
    margin-top:28px!important;
    gap:24px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.5.5 – Kontakt-Bewertungen mobil sichtbar
   Ziel: Google Reviews / Bewertungskarte im Kontaktbereich auch mobil anzeigen.
   Gleichzeitig wird eine ggf. wiederverwendete .lb-google-rating Box im
   Kontaktbereich aus der alten Hero-Positionierung gelöst.
   ========================================================= */
body.lorin-bahn-theme .lb-contact-reviews,
body.lorin-bahn-theme .lb-contact-layout .lb-contact-reviews,
body.lorin-bahn-theme .lb-contact-reviews .lb-reviews-card,
body.lorin-bahn-theme .lb-contact-layout .lb-reviews-card,
body.lorin-bahn-theme .lb-contact-reviews .lb-google-rating,
body.lorin-bahn-theme .lb-contact-layout .lb-google-rating{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
body.lorin-bahn-theme .lb-contact-reviews .lb-google-rating,
body.lorin-bahn-theme .lb-contact-layout .lb-google-rating{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:390px!important;
  margin:0!important;
  padding:30px 32px!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid rgba(0,0,0,.06)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.10)!important;
  color:#111!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-contact-reviews .lb-google-rating:before,
body.lorin-bahn-theme .lb-contact-layout .lb-google-rating:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:6px!important;
  background:#245b22!important;
}
body.lorin-bahn-theme .lb-contact-reviews .lb-google-rating__bottom,
body.lorin-bahn-theme .lb-contact-layout .lb-google-rating__bottom{
  text-align:left!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-contact-reviews,
  body.lorin-bahn-theme .lb-contact-reviews.elementor-hidden-mobile,
  body.lorin-bahn-theme .lb-contact-reviews.elementor-hidden-phone,
  body.lorin-bahn-theme .lb-contact-layout .lb-contact-reviews,
  body.lorin-bahn-theme .lb-contact-layout .lb-contact-reviews.elementor-hidden-mobile,
  body.lorin-bahn-theme .lb-contact-layout .lb-contact-reviews.elementor-hidden-phone,
  body.lorin-bahn-theme .lb-contact-reviews .elementor-hidden-mobile,
  body.lorin-bahn-theme .lb-contact-reviews .elementor-hidden-phone,
  body.lorin-bahn-theme .lb-contact-layout .elementor-hidden-mobile,
  body.lorin-bahn-theme .lb-contact-layout .elementor-hidden-phone,
  body.lorin-bahn-theme .lb-contact-reviews .lb-reviews-card,
  body.lorin-bahn-theme .lb-contact-layout .lb-reviews-card,
  body.lorin-bahn-theme .lb-contact-reviews .lb-google-rating,
  body.lorin-bahn-theme .lb-contact-layout .lb-google-rating{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  body.lorin-bahn-theme .lb-contact-reviews .lb-reviews-card,
  body.lorin-bahn-theme .lb-contact-layout .lb-reviews-card,
  body.lorin-bahn-theme .lb-contact-reviews .lb-google-rating,
  body.lorin-bahn-theme .lb-contact-layout .lb-google-rating{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.5.6 – Einfache Inhaltsseiten / Rechtliches
   Ziel: Impressum, Datenschutz, AGB, Widerruf passend zum Theme stylen.
   Aufbau: .lb-content-page > .lb-content-page-inner > .lb-content-header
   mit .lb-content-title und .lb-content-body
   ========================================================= */
body.lorin-bahn-theme .lb-content-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:72px 32px 82px!important;
  background:#fff!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-content-page > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0 auto!important;
}
body.lorin-bahn-theme .lb-content-page-inner{
  width:min(1040px,100%)!important;
  max-width:1040px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
}
body.lorin-bahn-theme .lb-content-page-inner > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-content-header{
  width:100%!important;
  max-width:980px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:0!important;
}
body.lorin-bahn-theme .lb-content-kicker,
body.lorin-bahn-theme .lb-content-kicker .elementor-widget-container,
body.lorin-bahn-theme .lb-content-kicker .elementor-heading-title,
body.lorin-bahn-theme .lb-content-kicker p{
  color:#245b22!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  margin:0 0 10px!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-content-title,
body.lorin-bahn-theme .lb-content-title .elementor-widget-container{
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-content-title .elementor-heading-title,
body.lorin-bahn-theme .lb-content-title h1,
body.lorin-bahn-theme .lb-content-title h2,
body.lorin-bahn-theme h1.lb-content-title,
body.lorin-bahn-theme h2.lb-content-title{
  color:#111!important;
  font-family:Georgia, 'Times New Roman', Times, serif!important;
  font-size:clamp(38px, 4vw, 54px)!important;
  line-height:1.08!important;
  font-weight:700!important;
  letter-spacing:-.025em!important;
  text-align:left!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-content-title:after{
  content:""!important;
  display:block!important;
  width:76px!important;
  height:3px!important;
  background:#245b22!important;
  margin:18px 0 0!important;
  border-radius:999px!important;
}
body.lorin-bahn-theme .lb-content-body,
body.lorin-bahn-theme .lb-content-body .elementor-widget-container{
  width:100%!important;
  max-width:980px!important;
  margin:34px 0 0!important;
  padding:0!important;
  color:#404a40!important;
  font-size:17px!important;
  line-height:1.75!important;
  font-weight:400!important;
}
body.lorin-bahn-theme .lb-content-body p,
body.lorin-bahn-theme .lb-content-body li{
  color:#404a40!important;
  font-size:17px!important;
  line-height:1.75!important;
  font-weight:400!important;
  margin:0 0 18px!important;
}
body.lorin-bahn-theme .lb-content-body p:first-child{
  margin-top:0!important;
}
body.lorin-bahn-theme .lb-content-body p:last-child,
body.lorin-bahn-theme .lb-content-body ul:last-child,
body.lorin-bahn-theme .lb-content-body ol:last-child{
  margin-bottom:0!important;
}
body.lorin-bahn-theme .lb-content-body h2,
body.lorin-bahn-theme .lb-content-body h3,
body.lorin-bahn-theme .lb-content-body h4{
  color:#111!important;
  font-family:Inter, Arial, sans-serif!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  line-height:1.25!important;
  margin:34px 0 14px!important;
}
body.lorin-bahn-theme .lb-content-body h2{font-size:26px!important;}
body.lorin-bahn-theme .lb-content-body h3{font-size:22px!important;}
body.lorin-bahn-theme .lb-content-body h4{font-size:19px!important;}
body.lorin-bahn-theme .lb-content-body a{
  color:#245b22!important;
  text-decoration:none!important;
  border-bottom:1px solid rgba(36,91,34,.35)!important;
  font-weight:700!important;
}
body.lorin-bahn-theme .lb-content-body a:hover{
  color:#173d18!important;
  border-bottom-color:#173d18!important;
}
body.lorin-bahn-theme .lb-content-body ul,
body.lorin-bahn-theme .lb-content-body ol{
  margin:0 0 20px 1.2em!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-content-body strong,
body.lorin-bahn-theme .lb-content-body b{
  color:#111!important;
  font-weight:800!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-content-page{
    padding:62px 24px 72px!important;
  }
  body.lorin-bahn-theme .lb-content-page-inner,
  body.lorin-bahn-theme .lb-content-header,
  body.lorin-bahn-theme .lb-content-body{
    max-width:900px!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-content-page{
    padding:46px 18px 58px!important;
  }
  body.lorin-bahn-theme .lb-content-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-content-title h1,
  body.lorin-bahn-theme .lb-content-title h2{
    font-size:36px!important;
  }
  body.lorin-bahn-theme .lb-content-title:after{
    margin-top:14px!important;
  }
  body.lorin-bahn-theme .lb-content-body,
  body.lorin-bahn-theme .lb-content-body .elementor-widget-container{
    margin-top:28px!important;
  }
  body.lorin-bahn-theme .lb-content-body p,
  body.lorin-bahn-theme .lb-content-body li{
    font-size:16px!important;
    line-height:1.72!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.5.7 – Complianz Cookie Banner Styling
   Ziel: Complianz Banner passend zum dunklen Lorin-Bahn Design stylen.
   Unterstützt Standard-Complianz-Klassen ohne Plugin-Template-Anpassung.
   ========================================================= */
body.lorin-bahn-theme .cmplz-cookiebanner{
  font-family:Inter, Arial, sans-serif!important;
  background:#050805!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:18px!important;
  box-shadow:0 22px 70px rgba(0,0,0,.35)!important;
  padding:24px!important;
  max-width:min(920px, calc(100vw - 32px))!important;
  width:auto!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:6px!important;
  background:#245b22!important;
  pointer-events:none!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-header,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-body,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-buttons,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-links,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-categories{
  position:relative!important;
  z-index:1!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-title,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-header .cmplz-title{
  color:#fff!important;
  font-size:20px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  margin:0!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-message,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-message p,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-description,
body.lorin-bahn-theme .cmplz-cookiebanner p{
  color:rgba(255,255,255,.78)!important;
  font-size:14.5px!important;
  line-height:1.6!important;
  font-weight:400!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-message{
  margin-top:10px!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner a,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-link,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-links a{
  color:#7dbb62!important;
  text-decoration:none!important;
  border-bottom:1px solid rgba(125,187,98,.45)!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner a:hover,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-link:hover,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-links a:hover{
  color:#9ed681!important;
  border-bottom-color:#9ed681!important;
}

/* Buttons */
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-buttons{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:18px!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn,
body.lorin-bahn-theme .cmplz-cookiebanner button.cmplz-btn{
  min-height:44px!important;
  border-radius:999px!important;
  padding:12px 18px!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:none!important;
  transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn:hover,
body.lorin-bahn-theme .cmplz-cookiebanner button.cmplz-btn:hover{
  transform:translateY(-1px)!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-accept,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn.cmplz-accept{
  background:linear-gradient(135deg,#2f7132 0%,#173d18 100%)!important;
  color:#fff!important;
  border-color:rgba(125,187,98,.35)!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-accept:hover,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover{
  background:linear-gradient(135deg,#397f3c 0%,#1f5b24 100%)!important;
  color:#fff!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-deny,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-view-preferences,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-save-preferences,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn.cmplz-deny,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences{
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.18)!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-deny:hover,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-view-preferences:hover,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-save-preferences:hover{
  background:rgba(255,255,255,.11)!important;
  color:#fff!important;
  border-color:rgba(125,187,98,.35)!important;
}

/* Kategorien / Einstellungen */
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-categories{
  margin-top:18px!important;
  border-top:1px solid rgba(255,255,255,.11)!important;
  padding-top:14px!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-category{
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:12px!important;
  padding:12px 14px!important;
  margin:0 0 10px!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-category-header{
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-category .cmplz-description,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-category .cmplz-category-body,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-category p{
  color:rgba(255,255,255,.70)!important;
  font-size:13px!important;
  line-height:1.55!important;
}

/* Toggles */
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-slider{
  background-color:rgba(255,255,255,.20)!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner input:checked + .cmplz-slider,
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-slider.cmplz-active{
  background-color:#2f7132!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-close{
  color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  border-radius:50%!important;
}
body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-close:hover{
  background:rgba(255,255,255,.14)!important;
}

/* Kleiner Reopen-/Manage-Consent-Button */
body.lorin-bahn-theme .cmplz-manage-consent,
body.lorin-bahn-theme button.cmplz-manage-consent{
  background:#050805!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:999px!important;
  box-shadow:0 12px 35px rgba(0,0,0,.25)!important;
  font-family:Inter, Arial, sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.lorin-bahn-theme .cmplz-manage-consent:hover,
body.lorin-bahn-theme button.cmplz-manage-consent:hover{
  background:#245b22!important;
  color:#fff!important;
}

@media(max-width:767px){
  body.lorin-bahn-theme .cmplz-cookiebanner{
    max-width:calc(100vw - 20px)!important;
    width:calc(100vw - 20px)!important;
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    padding:22px 18px!important;
    border-radius:16px!important;
  }
  body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-title{
    font-size:18px!important;
  }
  body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-message,
  body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-message p,
  body.lorin-bahn-theme .cmplz-cookiebanner p{
    font-size:14px!important;
    line-height:1.55!important;
  }
  body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-buttons{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  body.lorin-bahn-theme .cmplz-cookiebanner .cmplz-btn,
  body.lorin-bahn-theme .cmplz-cookiebanner button.cmplz-btn{
    width:100%!important;
    justify-content:center!important;
    text-align:center!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.5.8 – Chaty Kontakt-Icons
   Ziel: Chaty Plugin farblich an Lorin-Bahn anpassen und Pluginfarben
   wie #03E78B / violette Close-Farbe überschreiben.
   ========================================================= */
body.lorin-bahn-theme .chaty,
body.lorin-bahn-theme .chaty-widget{
  font-family:Inter, Arial, sans-serif!important;
  z-index:9999!important;
}

/* Hauptfarbe der Chaty SVG-Kreise */
body.lorin-bahn-theme .chaty .color-element,
body.lorin-bahn-theme .chaty svg .color-element,
body.lorin-bahn-theme .chaty-channel .chaty-svg svg .color-element,
body.lorin-bahn-theme .chaty-channel a .chaty-svg svg .color-element{
  fill:#245b22!important;
}

/* Telefon/WhatsApp/Mail etc. generell im Theme-Grün */
body.lorin-bahn-theme .chaty .chaty-channel a,
body.lorin-bahn-theme .chaty .chaty-link,
body.lorin-bahn-theme .chaty .chaty-channel.single a{
  border-radius:999px!important;
  box-shadow:0 14px 32px rgba(0,0,0,.22)!important;
  transition:transform .18s ease, filter .18s ease, box-shadow .18s ease!important;
}
body.lorin-bahn-theme .chaty .chaty-channel a:hover,
body.lorin-bahn-theme .chaty .chaty-link:hover,
body.lorin-bahn-theme .chaty .chaty-channel.single a:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
}
body.lorin-bahn-theme .chaty .chaty-channel a:hover .color-element,
body.lorin-bahn-theme .chaty .chaty-link:hover .color-element{
  fill:#2f7132!important;
}

/* Falls Chaty Kreisfarben über Inline-/Channel-Klassen setzt */
body.lorin-bahn-theme .chaty .Phone-channel .color-element,
body.lorin-bahn-theme .chaty .Phone-channel-link .color-element,
body.lorin-bahn-theme .chaty .Whatsapp-channel .color-element,
body.lorin-bahn-theme .chaty .Whatsapp-channel-link .color-element,
body.lorin-bahn-theme .chaty .Email-channel .color-element,
body.lorin-bahn-theme .chaty .Email-channel-link .color-element,
body.lorin-bahn-theme .chaty .SMS-channel .color-element,
body.lorin-bahn-theme .chaty .SMS-channel-link .color-element{
  fill:#245b22!important;
}

/* Close Button: violett überschreiben */
body.lorin-bahn-theme .chaty .chaty-cta-close svg ellipse,
body.lorin-bahn-theme .chaty .chaty-cta-close .chaty-svg svg ellipse,
body.lorin-bahn-theme .chaty .chaty-cta-button svg ellipse{
  fill:#173d18!important;
}
body.lorin-bahn-theme .chaty .chaty-cta-close:hover svg ellipse,
body.lorin-bahn-theme .chaty .chaty-cta-button:hover svg ellipse{
  fill:#245b22!important;
}
body.lorin-bahn-theme .chaty .chaty-cta-button button{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}

/* Tooltip / Hovertext passend dunkel */
body.lorin-bahn-theme .chaty .on-hover-text,
body.lorin-bahn-theme .chaty .chaty-tooltip:before,
body.lorin-bahn-theme .chaty .chaty-tooltip .on-hover-text{
  background:#050805!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:10px!important;
  box-shadow:0 12px 34px rgba(0,0,0,.28)!important;
  font-family:Inter, Arial, sans-serif!important;
}
body.lorin-bahn-theme .chaty .on-hover-text p,
body.lorin-bahn-theme .chaty .chaty-tooltip .on-hover-text p{
  color:#fff!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:700!important;
  margin:0!important;
}
body.lorin-bahn-theme .chaty .chaty-tooltip[data-hover]:after,
body.lorin-bahn-theme .chaty .chaty-tooltip:after{
  color:#fff!important;
  background:#050805!important;
  border-color:rgba(255,255,255,.12)!important;
  font-family:Inter, Arial, sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
}

/* Channel Icon Größe stabil halten */
body.lorin-bahn-theme .chaty .chaty-svg svg,
body.lorin-bahn-theme .chaty .channel-icon-Phone svg,
body.lorin-bahn-theme .chaty .channel-icon-Whatsapp svg,
body.lorin-bahn-theme .chaty .channel-icon-Email svg{
  overflow:visible!important;
}

@media(max-width:767px){
  body.lorin-bahn-theme .chaty .chaty-widget.right-position,
  body.lorin-bahn-theme .chaty.right-position{
    right:14px!important;
  }
  body.lorin-bahn-theme .chaty .on-hover-text,
  body.lorin-bahn-theme .chaty .chaty-tooltip .on-hover-text{
    display:none!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.5.9 – Chaty Mobile Trigger Purple Fix
   Ziel: Auch der mobile Öffnen-Trigger von Chaty darf nicht violett bleiben.
   Sehr gezielte Override-Regeln für Chaty-SVG-Kreise/Ellipsen und Trigger.
   ========================================================= */
body.lorin-bahn-theme .chaty .chaty-i-trigger svg ellipse,
body.lorin-bahn-theme .chaty .chaty-widget-trigger svg ellipse,
body.lorin-bahn-theme .chaty .csaas-widget-trigger svg ellipse,
body.lorin-bahn-theme .chaty .chaty-cta-button svg ellipse,
body.lorin-bahn-theme .chaty svg ellipse[fill="#A886CD"],
body.lorin-bahn-theme .chaty svg circle[fill="#A886CD"],
body.lorin-bahn-theme .chaty svg circle[fill="#03E78B"],
body.lorin-bahn-theme .chaty svg .color-element{
  fill:#245b22!important;
}
body.lorin-bahn-theme .chaty .chaty-i-trigger:hover svg ellipse,
body.lorin-bahn-theme .chaty .chaty-widget-trigger:hover svg ellipse,
body.lorin-bahn-theme .chaty .csaas-widget-trigger:hover svg ellipse,
body.lorin-bahn-theme .chaty .chaty-cta-button:hover svg ellipse,
body.lorin-bahn-theme .chaty .chaty-i-trigger:hover svg .color-element,
body.lorin-bahn-theme .chaty .chaty-widget-trigger:hover svg .color-element,
body.lorin-bahn-theme .chaty .csaas-widget-trigger:hover svg .color-element{
  fill:#2f7132!important;
}
body.lorin-bahn-theme .chaty .chaty-i-trigger,
body.lorin-bahn-theme .chaty .chaty-widget-trigger,
body.lorin-bahn-theme .chaty .csaas-widget-trigger,
body.lorin-bahn-theme .chaty .chaty-cta-button{
  background:transparent!important;
}
body.lorin-bahn-theme .chaty .chaty-i-trigger button,
body.lorin-bahn-theme .chaty .chaty-widget-trigger button,
body.lorin-bahn-theme .chaty .csaas-widget-trigger button,
body.lorin-bahn-theme .chaty .chaty-cta-button button{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .chaty .chaty-i-trigger svg ellipse,
  body.lorin-bahn-theme .chaty .chaty-widget-trigger svg ellipse,
  body.lorin-bahn-theme .chaty .csaas-widget-trigger svg ellipse,
  body.lorin-bahn-theme .chaty .chaty-cta-button svg ellipse,
  body.lorin-bahn-theme .chaty svg ellipse[fill="#A886CD"],
  body.lorin-bahn-theme .chaty svg circle[fill="#A886CD"],
  body.lorin-bahn-theme .chaty svg circle[fill="#03E78B"],
  body.lorin-bahn-theme .chaty svg .color-element{
    fill:#245b22!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.6.0 – Mobile hero image visibility boost
   Ziel: Auf Mobilgeräten die Lok im Hero deutlicher sichtbar machen,
   ohne die Lesbarkeit des Textes zu verlieren.
   Elementor darf die Bildposition weiterhin selbst steuern.
   ========================================================= */
@media (max-width: 767px){
  body.lorin-bahn-theme .lb-hero{
    min-height: 620px!important;
  }
  body.lorin-bahn-theme .lb-hero:before{
    width:100%!important;
    background:linear-gradient(180deg,
      rgba(255,255,255,.88) 0%,
      rgba(255,255,255,.78) 24%,
      rgba(255,255,255,.48) 46%,
      rgba(255,255,255,.18) 68%,
      rgba(255,255,255,.04) 84%,
      rgba(255,255,255,0) 100%)!important;
    clip-path:none!important;
  }
  body.lorin-bahn-theme .lb-hero .lb-hero-inner{
    padding-top:56px!important;
    padding-bottom:72px!important;
  }
  body.lorin-bahn-theme .lb-hero .lb-hero-content{
    max-width:100%!important;
  }
  body.lorin-bahn-theme .lb-hero .lb-h1,
  body.lorin-bahn-theme .lb-hero .lb-lead,
  body.lorin-bahn-theme .lb-hero .lb-hero-checks,
  body.lorin-bahn-theme .lb-hero .lb-hero-offer{
    position:relative!important;
    z-index:2!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.1 – Mobile Hero mutiger / mehr Lok rechts
   Ziel: Auf Mobilgeräten bleibt der Text links geschützt, während rechts
   deutlich mehr vom Hintergrundbild sichtbar wird.
   Elementor darf die Bildposition weiterhin selbst steuern.
   ========================================================= */
@media (max-width: 767px){
  body.lorin-bahn-theme .lb-hero:before{
    width:100%!important;
    background:
      linear-gradient(90deg,
        rgba(255,255,255,.90) 0%,
        rgba(255,255,255,.82) 38%,
        rgba(255,255,255,.50) 56%,
        rgba(255,255,255,.18) 72%,
        rgba(255,255,255,0) 100%),
      linear-gradient(180deg,
        rgba(255,255,255,.62) 0%,
        rgba(255,255,255,.30) 42%,
        rgba(255,255,255,.08) 70%,
        rgba(255,255,255,0) 100%)!important;
    clip-path:none!important;
  }
  body.lorin-bahn-theme .lb-hero .lb-hero-inner{
    padding-top:54px!important;
    padding-bottom:70px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.2 – FAQ Inhaltsseite / Accordion Styling
   Aufbau bleibt auf Basis der Content-Page-Klassen.
   Zusätzliche FAQ-Klassen werden innerhalb von .lb-content-body genutzt.
   ========================================================= */
body.lorin-bahn-theme .lb-content-body .lb-faq-intro,
body.lorin-bahn-theme .lb-content-body .lb-faq-intro p{
  color:#37443a!important;
  font-size:clamp(17px,1.45vw,20px)!important;
  line-height:1.72!important;
  margin:0 0 30px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-list,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion{
  width:100%!important;
  max-width:100%!important;
  margin:34px 0 0!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-accordion,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-accordion-item,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-item,
body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-item{
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(36,91,34,.16)!important;
  border-radius:18px!important;
  box-shadow:0 16px 42px rgba(0,0,0,.055)!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-title,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-title,
body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-question{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-height:62px!important;
  padding:20px 24px!important;
  color:#111611!important;
  background:linear-gradient(135deg,rgba(36,91,34,.045),rgba(255,255,255,1))!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(18px,1.7vw,22px)!important;
  font-weight:800!important;
  line-height:1.28!important;
  text-decoration:none!important;
  border:0!important;
  cursor:pointer!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-title:before,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-title:before,
body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-question:before{
  content:""!important;
  flex:0 0 10px!important;
  width:10px!important;
  height:10px!important;
  border-radius:999px!important;
  background:#245b22!important;
  box-shadow:0 0 0 6px rgba(36,91,34,.10)!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-title.elementor-active,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-title.elementor-active,
body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-item[open] .lb-faq-question{
  color:#245b22!important;
  background:#f7fbf4!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-accordion-icon,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-icon{
  color:#245b22!important;
  font-size:18px!important;
  line-height:1!important;
  margin-top:4px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-content,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-content,
body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-answer{
  padding:0 24px 24px 48px!important;
  color:#344138!important;
  background:#fff!important;
  border:0!important;
  font-size:17px!important;
  line-height:1.75!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-content p,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-content p,
body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-answer p{
  margin:0 0 14px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-content p:last-child,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-content p:last-child,
body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-answer p:last-child{
  margin-bottom:0!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-cta{
  margin-top:36px!important;
  padding:26px 28px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,#111611,#245b22)!important;
  color:#fff!important;
  box-shadow:0 22px 56px rgba(0,0,0,.16)!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-cta p,
body.lorin-bahn-theme .lb-content-body .lb-faq-cta strong{
  color:#fff!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-cta a{
  color:#fff!important;
  font-weight:900!important;
  text-decoration:underline!important;
  text-decoration-color:rgba(255,255,255,.42)!important;
  text-underline-offset:4px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-cta a:hover{
  text-decoration-color:#fff!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-content-body .lb-faq-intro,
  body.lorin-bahn-theme .lb-content-body .lb-faq-intro p{
    font-size:16px!important;
    line-height:1.68!important;
    margin-bottom:24px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion,
  body.lorin-bahn-theme .lb-content-body .lb-faq-list{
    margin-top:24px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-accordion,
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle{
    gap:12px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-title,
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-title,
  body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-question{
    padding:18px 18px!important;
    font-size:18px!important;
    min-height:58px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-tab-content,
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .elementor-toggle-content,
  body.lorin-bahn-theme .lb-content-body .lb-faq-list .lb-faq-answer{
    padding:0 18px 20px 38px!important;
    font-size:16px!important;
    line-height:1.68!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-cta{
    padding:22px 20px!important;
    border-radius:18px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.3 – FAQ Nested Accordion Feinschliff
   Ziel: Weniger Abstand zwischen Einleitung und FAQ sowie hochwertigere
   Optik für Elementors neues Nested Accordion (.e-n-accordion).
   ========================================================= */
body.lorin-bahn-theme .lb-content-header .lb-content-body,
body.lorin-bahn-theme .lb-content-header .lb-content-body .elementor-widget-container{
  margin-top:24px!important;
}
body.lorin-bahn-theme .lb-content-header + .lb-content-body,
body.lorin-bahn-theme .lb-content-page-inner > .lb-content-body{
  margin-top:26px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-intro{
  margin:0 0 18px!important;
  padding:0!important;
  background:transparent!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-intro .lb-faq-accordion,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion{
  margin-top:0!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item{
  overflow:hidden!important;
  border:1px solid rgba(36,91,34,.16)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 16px 46px rgba(0,0,0,.07)!important;
  transition:border-color .22s ease, box-shadow .22s ease, transform .22s ease!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(36,91,34,.30)!important;
  box-shadow:0 20px 56px rgba(0,0,0,.10)!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item[open]{
  border-color:rgba(36,91,34,.40)!important;
  box-shadow:0 22px 62px rgba(36,91,34,.13)!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:100%!important;
  min-height:74px!important;
  padding:22px 24px 22px 28px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(135deg,#fff 0%,#f7fbf4 100%)!important;
  color:#111611!important;
  cursor:pointer!important;
  list-style:none!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title::-webkit-details-marker{
  display:none!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:18px!important;
  bottom:18px!important;
  width:5px!important;
  border-radius:0 999px 999px 0!important;
  background:#245b22!important;
  opacity:.92!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title-text{
  color:#111611!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(19px,1.75vw,23px)!important;
  line-height:1.28!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item[open] .e-n-accordion-item-title-text{
  color:#245b22!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title-icon{
  flex:0 0 36px!important;
  width:36px!important;
  height:36px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:rgba(36,91,34,.10)!important;
  color:#245b22!important;
  transition:background .22s ease, color .22s ease!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title-icon svg{
  width:13px!important;
  height:13px!important;
  fill:currentColor!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item[open] .e-n-accordion-item-title-icon{
  background:#245b22!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item > .e-con,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item > [role="region"]{
  padding:0 28px 28px 34px!important;
  background:#fff!important;
  border-top:1px solid rgba(36,91,34,.10)!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item > .e-con > .e-con-inner,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item > [role="region"] > .e-con-inner{
  padding:0!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item .elementor-widget-text-editor,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item .elementor-widget-container{
  margin:0!important;
  padding:0!important;
  max-width:none!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item p,
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item li{
  color:#344138!important;
  font-size:17px!important;
  line-height:1.72!important;
  margin:20px 0 0!important;
  max-width:880px!important;
}
body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item p:last-child{
  margin-bottom:0!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-content-header .lb-content-body,
  body.lorin-bahn-theme .lb-content-header .lb-content-body .elementor-widget-container{
    margin-top:20px!important;
  }
  body.lorin-bahn-theme .lb-content-header + .lb-content-body,
  body.lorin-bahn-theme .lb-content-page-inner > .lb-content-body{
    margin-top:22px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion{
    gap:12px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item{
    border-radius:18px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title{
    min-height:64px!important;
    padding:18px 16px 18px 22px!important;
    gap:12px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title:before{
    top:16px!important;
    bottom:16px!important;
    width:4px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title-text{
    font-size:18px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item-title-icon{
    flex-basis:32px!important;
    width:32px!important;
    height:32px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item > .e-con,
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item > [role="region"]{
    padding:0 18px 22px 22px!important;
  }
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item p,
  body.lorin-bahn-theme .lb-content-body .lb-faq-accordion .e-n-accordion-item li{
    font-size:16px!important;
    line-height:1.68!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.4 – Wiederverwendbarer Seiten-CTA
   Für Royal Addons / Elementor Templates auf Inhalts- und FAQ-Seiten.
   Desktop: Kontaktformular + Telefon. Mobil zusätzlich WhatsApp.
   ========================================================= */
body.lorin-bahn-theme .lb-page-cta{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:26px 32px 86px!important;
  background:#fff!important;
}
body.lorin-bahn-theme .lb-page-cta > .e-con-inner{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-page-cta-inner{
  position:relative!important;
  overflow:hidden!important;
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:38px 42px!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 88% 18%, rgba(111,166,81,.30), transparent 28%),
    linear-gradient(135deg,#070a08 0%,#111611 52%,#245b22 100%)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 26px 72px rgba(0,0,0,.18)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:32px!important;
  align-items:center!important;
}
body.lorin-bahn-theme .lb-page-cta-inner:before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:6px!important;
  background:#6fa651!important;
  opacity:.95!important;
}
body.lorin-bahn-theme .lb-page-cta-content,
body.lorin-bahn-theme .lb-page-cta-actions{
  position:relative!important;
  z-index:1!important;
}
body.lorin-bahn-theme .lb-page-cta-kicker,
body.lorin-bahn-theme .lb-page-cta-kicker .elementor-heading-title,
body.lorin-bahn-theme .lb-page-cta-kicker p{
  color:#7dbb62!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  margin:0 0 10px!important;
}
body.lorin-bahn-theme .lb-page-cta-title,
body.lorin-bahn-theme .lb-page-cta-title .elementor-heading-title,
body.lorin-bahn-theme .lb-page-cta-title h2,
body.lorin-bahn-theme .lb-page-cta-title h3{
  color:#fff!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(30px,3vw,44px)!important;
  line-height:1.12!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-page-cta-text,
body.lorin-bahn-theme .lb-page-cta-text .elementor-widget-container,
body.lorin-bahn-theme .lb-page-cta-text p{
  color:rgba(255,255,255,.86)!important;
  font-size:17px!important;
  line-height:1.68!important;
  font-weight:500!important;
  margin:14px 0 0!important;
  max-width:680px!important;
}
body.lorin-bahn-theme .lb-page-cta-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  justify-content:flex-end!important;
  align-items:center!important;
  min-width:360px!important;
}
body.lorin-bahn-theme .lb-page-cta-button,
body.lorin-bahn-theme .lb-page-cta-button .elementor-widget-container{
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-page-cta-button .elementor-button,
body.lorin-bahn-theme .lb-page-cta-button a.elementor-button,
body.lorin-bahn-theme .lb-page-cta-button a{
  min-height:50px!important;
  padding:15px 22px!important;
  border-radius:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.1!important;
  font-weight:900!important;
  text-decoration:none!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease!important;
}
body.lorin-bahn-theme .lb-page-cta-button .elementor-button:hover,
body.lorin-bahn-theme .lb-page-cta-button a:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22)!important;
}
body.lorin-bahn-theme .lb-page-cta-button--primary .elementor-button,
body.lorin-bahn-theme .lb-page-cta-button--primary a{
  background:#6fa651!important;
  color:#071007!important;
  border-color:#6fa651!important;
}
body.lorin-bahn-theme .lb-page-cta-button--primary .elementor-button:hover,
body.lorin-bahn-theme .lb-page-cta-button--primary a:hover{
  background:#7dbb62!important;
  border-color:#7dbb62!important;
  color:#071007!important;
}
body.lorin-bahn-theme .lb-page-cta-button--phone .elementor-button,
body.lorin-bahn-theme .lb-page-cta-button--phone a{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.34)!important;
}
body.lorin-bahn-theme .lb-page-cta-button--phone .elementor-button:hover,
body.lorin-bahn-theme .lb-page-cta-button--phone a:hover{
  background:rgba(255,255,255,.16)!important;
  border-color:rgba(255,255,255,.56)!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-page-cta-button--whatsapp{
  display:none!important;
}
body.lorin-bahn-theme .lb-page-cta-button--whatsapp .elementor-button,
body.lorin-bahn-theme .lb-page-cta-button--whatsapp a{
  background:#245b22!important;
  color:#fff!important;
  border-color:#245b22!important;
}
body.lorin-bahn-theme .lb-page-cta-button--whatsapp .elementor-button:hover,
body.lorin-bahn-theme .lb-page-cta-button--whatsapp a:hover{
  background:#2f7132!important;
  border-color:#2f7132!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-page-cta-note,
body.lorin-bahn-theme .lb-page-cta-note p{
  color:rgba(255,255,255,.72)!important;
  font-size:13px!important;
  line-height:1.45!important;
  margin:12px 0 0!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-page-cta{
    padding:22px 24px 72px!important;
  }
  body.lorin-bahn-theme .lb-page-cta-inner{
    grid-template-columns:1fr!important;
    gap:24px!important;
    padding:34px 32px!important;
  }
  body.lorin-bahn-theme .lb-page-cta-actions{
    min-width:0!important;
    justify-content:flex-start!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-page-cta{
    padding:18px 18px 58px!important;
  }
  body.lorin-bahn-theme .lb-page-cta-inner{
    padding:28px 22px!important;
    border-radius:22px!important;
  }
  body.lorin-bahn-theme .lb-page-cta-title,
  body.lorin-bahn-theme .lb-page-cta-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-page-cta-title h2,
  body.lorin-bahn-theme .lb-page-cta-title h3{
    font-size:30px!important;
  }
  body.lorin-bahn-theme .lb-page-cta-text,
  body.lorin-bahn-theme .lb-page-cta-text p{
    font-size:16px!important;
    line-height:1.62!important;
  }
  body.lorin-bahn-theme .lb-page-cta-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
  }
  body.lorin-bahn-theme .lb-page-cta-button--whatsapp{
    display:block!important;
  }
  body.lorin-bahn-theme .lb-page-cta-button,
  body.lorin-bahn-theme .lb-page-cta-button .elementor-widget-container,
  body.lorin-bahn-theme .lb-page-cta-button .elementor-button-wrapper,
  body.lorin-bahn-theme .lb-page-cta-button .elementor-button,
  body.lorin-bahn-theme .lb-page-cta-button a{
    width:100%!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.5 – Marken-/Landingpage Struktur
   Für SEO-Landingpages wie Märklin Ankauf, Fleischmann Ankauf usw.
   Elementor-first: Aufbau über Klassen, Inhalt bleibt im Editor.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero{
  position:relative!important;
  overflow:hidden!important;
  width:100%!important;
  min-height:560px!important;
  padding:88px 32px 78px!important;
  background-color:#071007!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(90deg,
      rgba(7,16,7,.96) 0%,
      rgba(7,16,7,.90) 34%,
      rgba(7,16,7,.66) 56%,
      rgba(7,16,7,.28) 78%,
      rgba(7,16,7,.08) 100%),
    linear-gradient(180deg,
      rgba(7,16,7,.18) 0%,
      rgba(7,16,7,.02) 42%,
      rgba(7,16,7,.22) 100%)!important;
  pointer-events:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:radial-gradient(circle at 88% 18%, rgba(111,166,81,.28), transparent 30%)!important;
  pointer-events:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero > .e-con-inner,
body.lorin-bahn-theme .lb-brand-lp-hero-inner{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-inner{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(310px,420px)!important;
  gap:42px!important;
  align-items:center!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-content,
body.lorin-bahn-theme .lb-brand-lp-hero-card{
  position:relative!important;
  z-index:1!important;
}
body.lorin-bahn-theme .lb-brand-lp-kicker,
body.lorin-bahn-theme .lb-brand-lp-kicker .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-kicker p{
  color:#7dbb62!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  margin:0 0 14px!important;
}
body.lorin-bahn-theme .lb-brand-lp-h1,
body.lorin-bahn-theme .lb-brand-lp-h1 .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-h1 h1{
  color:#fff!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(44px,5.3vw,74px)!important;
  line-height:.98!important;
  font-weight:800!important;
  letter-spacing:-.04em!important;
  margin:0!important;
  max-width:820px!important;
}
body.lorin-bahn-theme .lb-brand-lp-lead,
body.lorin-bahn-theme .lb-brand-lp-lead .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-lead p{
  color:rgba(255,255,255,.88)!important;
  font-size:clamp(18px,1.55vw,22px)!important;
  line-height:1.62!important;
  font-weight:500!important;
  margin:22px 0 0!important;
  max-width:720px!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-checks ul{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px 20px!important;
  margin:28px 0 0!important;
  padding:0!important;
  list-style:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks li{
  position:relative!important;
  color:#fff!important;
  font-size:15px!important;
  line-height:1.45!important;
  font-weight:800!important;
  margin:0!important;
  padding:0 0 0 28px!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks li:before{
  content:"✓"!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  color:#7dbb62!important;
  font-weight:900!important;
}
body.lorin-bahn-theme .lb-brand-lp-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:34px!important;
}
body.lorin-bahn-theme .lb-brand-lp-button .elementor-button,
body.lorin-bahn-theme .lb-brand-lp-button a{
  min-height:52px!important;
  padding:16px 24px!important;
  border-radius:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#071007!important;
  background:#7dbb62!important;
  border:1px solid #7dbb62!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.1!important;
  font-weight:900!important;
  text-decoration:none!important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease!important;
}
body.lorin-bahn-theme .lb-brand-lp-button .elementor-button:hover,
body.lorin-bahn-theme .lb-brand-lp-button a:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.26)!important;
  background:#8acb6b!important;
}
body.lorin-bahn-theme .lb-brand-lp-button--secondary .elementor-button,
body.lorin-bahn-theme .lb-brand-lp-button--secondary a{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.34)!important;
}
body.lorin-bahn-theme .lb-brand-lp-button--secondary .elementor-button:hover,
body.lorin-bahn-theme .lb-brand-lp-button--secondary a:hover{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-card{
  padding:30px!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.95)!important;
  color:#111611!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 30px 70px rgba(0,0,0,.26)!important;
}
body.lorin-bahn-theme .lb-brand-lp-card-title,
body.lorin-bahn-theme .lb-brand-lp-card-title .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-card-title h2,
body.lorin-bahn-theme .lb-brand-lp-card-title h3{
  color:#111611!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:28px!important;
  line-height:1.15!important;
  font-weight:800!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-card-text,
body.lorin-bahn-theme .lb-brand-lp-card-text p{
  color:#344138!important;
  font-size:16px!important;
  line-height:1.65!important;
  margin:14px 0 0!important;
}
body.lorin-bahn-theme .lb-brand-lp-mini-list,
body.lorin-bahn-theme .lb-brand-lp-mini-list ul{
  margin:20px 0 0!important;
  padding:0!important;
  list-style:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-mini-list li{
  position:relative!important;
  margin:0 0 10px!important;
  padding-left:24px!important;
  color:#111611!important;
  font-size:15px!important;
  line-height:1.5!important;
  font-weight:800!important;
}
body.lorin-bahn-theme .lb-brand-lp-mini-list li:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:.55em!important;
  width:9px!important;
  height:9px!important;
  border-radius:999px!important;
  background:#245b22!important;
  box-shadow:0 0 0 5px rgba(36,91,34,.10)!important;
}
body.lorin-bahn-theme .lb-brand-lp-section{
  width:100%!important;
  max-width:none!important;
  padding:78px 32px!important;
  background:#fff!important;
}
body.lorin-bahn-theme .lb-brand-lp-section--soft{
  background:#f7faf5!important;
}
body.lorin-bahn-theme .lb-brand-lp-section > .e-con-inner,
body.lorin-bahn-theme .lb-brand-lp-section-inner{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-grid-2{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px)!important;
  gap:44px!important;
  align-items:start!important;
}
body.lorin-bahn-theme .lb-brand-lp-h2,
body.lorin-bahn-theme .lb-brand-lp-h2 .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-h2 h2{
  color:#111611!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(34px,3.4vw,50px)!important;
  line-height:1.08!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-h2:after{
  content:""!important;
  display:block!important;
  width:76px!important;
  height:3px!important;
  border-radius:999px!important;
  background:#245b22!important;
  margin:18px 0 0!important;
}
body.lorin-bahn-theme .lb-brand-lp-text,
body.lorin-bahn-theme .lb-brand-lp-text .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-text p,
body.lorin-bahn-theme .lb-brand-lp-text li{
  color:#3f4a42!important;
  font-size:17px!important;
  line-height:1.78!important;
  margin:0 0 18px!important;
}
body.lorin-bahn-theme .lb-brand-lp-text p:last-child,
body.lorin-bahn-theme .lb-brand-lp-text li:last-child{
  margin-bottom:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-card-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:34px!important;
}
body.lorin-bahn-theme .lb-brand-lp-info-card{
  position:relative!important;
  overflow:hidden!important;
  padding:24px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(36,91,34,.14)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.055)!important;
}
body.lorin-bahn-theme .lb-brand-lp-info-card:before{
  content:""!important;
  display:block!important;
  width:38px!important;
  height:4px!important;
  border-radius:999px!important;
  background:#245b22!important;
  margin-bottom:18px!important;
}
body.lorin-bahn-theme .lb-brand-lp-info-card h3,
body.lorin-bahn-theme .lb-brand-lp-info-card .elementor-heading-title{
  color:#111611!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:23px!important;
  line-height:1.2!important;
  font-weight:800!important;
  margin:0 0 10px!important;
}
body.lorin-bahn-theme .lb-brand-lp-info-card p{
  color:#3f4a42!important;
  font-size:16px!important;
  line-height:1.65!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:34px!important;
}
body.lorin-bahn-theme .lb-brand-lp-step{
  padding:26px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(36,91,34,.14)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.055)!important;
}
body.lorin-bahn-theme .lb-brand-lp-step-number{
  width:44px!important;
  height:44px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#245b22!important;
  color:#fff!important;
  font-weight:900!important;
  margin-bottom:16px!important;
}
body.lorin-bahn-theme .lb-brand-lp-side-note{
  padding:28px!important;
  border-radius:24px!important;
  background:#f7faf5!important;
  border:1px solid rgba(36,91,34,.14)!important;
}
body.lorin-bahn-theme .lb-brand-lp-side-note strong{
  color:#111611!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-hero{
    min-height:auto!important;
    padding:72px 24px 68px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-inner,
  body.lorin-bahn-theme .lb-brand-lp-grid-2{
    grid-template-columns:1fr!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-card-grid,
  body.lorin-bahn-theme .lb-brand-lp-steps{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero{
    padding:54px 18px 56px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-h1,
  body.lorin-bahn-theme .lb-brand-lp-h1 .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-h1 h1{
    font-size:42px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-lead,
  body.lorin-bahn-theme .lb-brand-lp-lead p{
    font-size:17px!important;
    line-height:1.62!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-checks,
  body.lorin-bahn-theme .lb-brand-lp-checks ul,
  body.lorin-bahn-theme .lb-brand-lp-card-grid,
  body.lorin-bahn-theme .lb-brand-lp-steps{
    grid-template-columns:1fr!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-actions,
  body.lorin-bahn-theme .lb-brand-lp-button,
  body.lorin-bahn-theme .lb-brand-lp-button .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-lp-button .elementor-button-wrapper,
  body.lorin-bahn-theme .lb-brand-lp-button .elementor-button,
  body.lorin-bahn-theme .lb-brand-lp-button a{
    width:100%!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-section{
    padding:56px 18px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-card,
  body.lorin-bahn-theme .lb-brand-lp-info-card,
  body.lorin-bahn-theme .lb-brand-lp-step,
  body.lorin-bahn-theme .lb-brand-lp-side-note{
    border-radius:18px!important;
    padding:22px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.6 – Landingpage Hero Robustheit
   Ziel: Marken-Hero bleibt korrekt, auch wenn der linke Content-Wrapper
   versehentlich fehlt. Zusätzlich wird lb-brand-lp boxed entboxen.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp.e-con-boxed > .e-con-inner,
body.lorin-bahn-theme .lb-brand-lp > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero.e-con-full,
body.lorin-bahn-theme .lb-brand-lp-hero.e-con-boxed{
  width:100%!important;
  max-width:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-content{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-card{
  grid-column:2!important;
  grid-row:1 / span 6!important;
  align-self:center!important;
  min-width:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-kicker,
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-h1,
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-lead,
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-checks,
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-actions{
  grid-column:1!important;
  min-width:0!important;
  max-width:760px!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-kicker{grid-row:1!important;}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-h1{grid-row:2!important;}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-lead{grid-row:3!important;}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-checks{grid-row:4!important;}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-actions{grid-row:5!important;}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-h1 .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-h1 h1{
  max-width:760px!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-checks .elementor-icon-list-items{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px 20px!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-card,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-kicker,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-h1,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-lead,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-checks,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-actions{
    grid-column:1!important;
    grid-row:auto!important;
    max-width:100%!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-card{
    margin-top:10px!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-checks .elementor-icon-list-items{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.7 – Marken-Hero mit eigenem Hintergrundbild
   Ziel: Elementor-Hintergrundbilder im Marken-Hero ermöglichen und
   optisch wie auf der Startseite mit dunklem Verlauf lesbar halten.
   Außerdem: Header-CTA nutzt wieder den echten Elementor-Buttontext.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-hero{
  background-color:#071007!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero:before{
  background:
    linear-gradient(90deg,
      rgba(7,16,7,.96) 0%,
      rgba(7,16,7,.90) 34%,
      rgba(7,16,7,.66) 56%,
      rgba(7,16,7,.28) 78%,
      rgba(7,16,7,.08) 100%),
    linear-gradient(180deg,
      rgba(7,16,7,.18) 0%,
      rgba(7,16,7,.02) 42%,
      rgba(7,16,7,.22) 100%)!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:radial-gradient(circle at 88% 18%, rgba(111,166,81,.28), transparent 30%)!important;
  pointer-events:none!important;
  z-index:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero > .e-con-inner,
body.lorin-bahn-theme .lb-brand-lp-hero-inner,
body.lorin-bahn-theme .lb-brand-lp-hero-content,
body.lorin-bahn-theme .lb-brand-lp-hero-card{
  position:relative!important;
  z-index:1!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero:before{
    background:
      linear-gradient(180deg,
        rgba(7,16,7,.92) 0%,
        rgba(7,16,7,.78) 42%,
        rgba(7,16,7,.42) 78%,
        rgba(7,16,7,.20) 100%),
      linear-gradient(90deg,
        rgba(7,16,7,.86) 0%,
        rgba(7,16,7,.66) 58%,
        rgba(7,16,7,.26) 100%)!important;
  }
}
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text{
    display:block!important;
    color:#fff!important;
    font-size:14px!important;
    line-height:1.05!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-weight:900!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button-text:after{
    content:none!important;
    display:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-cta a,
  body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
  body.lorin-bahn-theme .lb-header a.lb-header-button,
  body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
    width:auto!important;
    min-width:154px!important;
    max-width:none!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.8 – Marken-Hero Card Breiten-Fix
   Ziel: „Was kaufen wir an?“ ist im Hero eine kompakte Side-Card,
   keine breite Vollflächen-Box. Boxed-Eigenheiten von Elementor abfangen.
   ========================================================= */
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-brand-lp-hero-inner,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner.e-con,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner.e-con-full,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner.e-con-boxed{
    display:grid!important;
    grid-template-columns:minmax(0, 720px) minmax(320px, 420px)!important;
    gap:48px!important;
    align-items:center!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-content{
    grid-column:1!important;
    max-width:720px!important;
    justify-self:start!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-card{
    grid-column:2!important;
    grid-row:1 / span 6!important;
    width:100%!important;
    max-width:420px!important;
    min-width:0!important;
    justify-self:end!important;
    align-self:center!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-card.e-con-boxed > .e-con-inner,
  body.lorin-bahn-theme .lb-brand-lp-hero-card > .e-con-inner{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-kicker,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-h1,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-lead,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-checks,
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-actions{
    grid-column:1!important;
    max-width:720px!important;
    justify-self:start!important;
  }
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-card,
  body.lorin-bahn-theme .lb-brand-lp-hero-card{
    width:100%!important;
    max-width:680px!important;
    justify-self:start!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-card.e-con-boxed > .e-con-inner,
  body.lorin-bahn-theme .lb-brand-lp-hero-card > .e-con-inner{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-hero-card,
  body.lorin-bahn-theme .lb-brand-lp-hero-card{
    max-width:100%!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.6.9 – Marken-Hero Struktur-Rescue & Lesbarkeit
   Ziel: Wenn Actions/Card versehentlich außerhalb des Content-Wrappers
   liegen, bleibt der Hero nutzbar. Liste heller, Abstand Buttons kleiner.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-hero-inner,
body.lorin-bahn-theme .lb-brand-lp-hero-inner.elementor-element,
body.lorin-bahn-theme .lb-brand-lp-hero-inner.e-con{
  --display:grid!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-checks ul,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-items{
  margin-top:22px!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-items{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px 12px!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks li,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-item{
  position:relative!important;
  display:flex!important;
  align-items:flex-start!important;
  min-height:44px!important;
  margin:0!important;
  padding:10px 12px 10px 34px!important;
  border-radius:14px!important;
  background:rgba(0,0,0,.22)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#fff!important;
  backdrop-filter:blur(2px)!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks li:before,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-item:before{
  content:"✓"!important;
  position:absolute!important;
  left:13px!important;
  top:10px!important;
  color:#7dbb62!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:900!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-text,
body.lorin-bahn-theme .lb-brand-lp-checks li,
body.lorin-bahn-theme .lb-brand-lp-checks span{
  color:#fff!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:800!important;
  text-shadow:0 1px 2px rgba(0,0,0,.42)!important;
}
body.lorin-bahn-theme .lb-brand-lp-actions,
body.lorin-bahn-theme .lb-brand-lp-hero-content .lb-brand-lp-actions,
body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-actions{
  margin-top:22px!important;
}
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-actions{
    grid-column:1!important;
    grid-row:2!important;
    align-self:start!important;
    justify-self:start!important;
    max-width:720px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero > .lb-brand-lp-hero-card{
    position:absolute!important;
    z-index:2!important;
    width:100%!important;
    max-width:420px!important;
    right:max(32px, calc((100vw - 1180px) / 2 + 32px))!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero > .lb-brand-lp-hero-card.e-con-full,
  body.lorin-bahn-theme .lb-brand-lp-hero > .lb-brand-lp-hero-card.e-con-boxed{
    max-width:420px!important;
  }
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-hero > .lb-brand-lp-hero-card{
    position:relative!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
    width:100%!important;
    max-width:680px!important;
    margin:28px auto 0!important;
    z-index:1!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero-inner > .lb-brand-lp-actions{
    margin-top:20px!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-items{
    grid-template-columns:1fr!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-checks li,
  body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-item{
    min-height:auto!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.7.0 – Desktop Header Logo-Höhe angleichen
   Ziel: Der weiße Logo-Bereich hat am Desktop dieselbe Höhe wie
   der schwarze Header-Bereich. Kein Auslaufen nach unten.
   ========================================================= */
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .lb-header.elementor-element.e-con-full,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    height:86px!important;
    min-height:86px!important;
    max-height:86px!important;
    overflow:visible!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 330px!important;
    width:330px!important;
    max-width:330px!important;
    height:86px!important;
    min-height:86px!important;
    max-height:86px!important;
    align-self:flex-start!important;
    margin:0!important;
    padding:0 96px 0 44px!important;
    background:#fff!important;
    overflow:hidden!important;
    clip-path:path('M 0 0 L 210 0 C 242 8 254 36 276 59 C 292 78 312 84 330 86 L 0 86 Z')!important;
    box-shadow:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:before,
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    content:none!important;
    display:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container{
    height:86px!important;
    min-height:86px!important;
    max-height:86px!important;
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:156px!important;
    max-height:74px!important;
    width:auto!important;
    height:auto!important;
    object-fit:contain!important;
    display:block!important;
  }
}
@media(min-width:1025px) and (max-width:1240px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 292px!important;
    width:292px!important;
    max-width:292px!important;
    height:86px!important;
    min-height:86px!important;
    max-height:86px!important;
    padding:0 76px 0 34px!important;
    clip-path:path('M 0 0 L 178 0 C 211 8 222 36 246 60 C 260 77 278 84 292 86 L 0 86 Z')!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:140px!important;
    max-height:72px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.7.1 – Marken-Landingpage Buyout Section
   Ziel: „Was kaufen wir an?“ aus dem Hero herausziehen, damit die
   Lok im Hintergrund frei wirken kann. Neue Sektion direkt unter Hero.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-hero--clean > .lb-brand-lp-hero-card{
  display:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:48px 32px 74px!important;
  background:#fff!important;
  position:relative!important;
  z-index:2!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout > .e-con-inner,
body.lorin-bahn-theme .lb-brand-lp-buyout-inner{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:34px 36px!important;
  border-radius:28px!important;
  background:
    linear-gradient(135deg,rgba(36,91,34,.055),rgba(255,255,255,1) 44%,rgba(247,250,245,1))!important;
  border:1px solid rgba(36,91,34,.16)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.09)!important;
  display:grid!important;
  grid-template-columns:minmax(240px,.72fr) minmax(0,1fr) minmax(280px,.85fr)!important;
  gap:30px!important;
  align-items:center!important;
  position:relative!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:28px!important;
  bottom:28px!important;
  width:6px!important;
  border-radius:0 999px 999px 0!important;
  background:#245b22!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-card-title,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-card-title .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-card-title h2{
  color:#111611!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(30px,2.8vw,42px)!important;
  line-height:1.08!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-card-text,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-card-text p{
  color:#344138!important;
  font-size:17px!important;
  line-height:1.72!important;
  margin:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list ul,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list .elementor-icon-list-items{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list li,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list .elementor-icon-list-item{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  padding:10px 12px 10px 34px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid rgba(36,91,34,.12)!important;
  color:#111611!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list li:before,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list .elementor-icon-list-item:before{
  content:""!important;
  position:absolute!important;
  left:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:9px!important;
  height:9px!important;
  border-radius:999px!important;
  background:#245b22!important;
  box-shadow:0 0 0 5px rgba(36,91,34,.10)!important;
}
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list .elementor-icon-list-text,
body.lorin-bahn-theme .lb-brand-lp-buyout-card .lb-brand-lp-mini-list span{
  color:#111611!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:800!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-buyout{
    padding:40px 24px 66px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-buyout-card{
    grid-template-columns:1fr!important;
    gap:20px!important;
    padding:30px 30px!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-buyout{
    padding:34px 18px 56px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-buyout-card{
    border-radius:22px!important;
    padding:26px 22px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-buyout-card:before{
    top:22px!important;
    bottom:22px!important;
    width:5px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.7.2 – Marken-Card-Grid Equal Heights
   Ziel: Überschriften- und Textanfang in Kartenrastern angleichen,
   auch wenn vorhandene Container keine lb-brand-lp-info-card Klasse haben.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-card-grid{
  align-items:stretch!important;
}
body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element:not(.lb-brand-lp-info-card){
  height:100%!important;
  min-height:100%!important;
  padding:26px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(36,91,34,.12)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.045)!important;
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  align-content:start!important;
  align-items:start!important;
}
@media(min-width:1025px){
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-brand-lp-info-card-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-brand-lp-info-card-title{
    min-height:132px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    margin:0!important;
    padding:0!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-title h3,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-title h3{
    font-size:clamp(34px,3.1vw,48px)!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-title:after,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-title:after{
    margin-top:16px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-body,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-body,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-body .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-body .elementor-widget-container{
    margin-top:22px!important;
    align-self:start!important;
  }
}
body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-body p,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-body p,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-brand-lp-text p,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-brand-lp-text p{
  font-size:16px!important;
  line-height:1.72!important;
  margin:0!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element:not(.lb-brand-lp-info-card){
    padding:24px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-title{
    min-height:0!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-body,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-body,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-body .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-body .elementor-widget-container{
    margin-top:20px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.7.3 – Landingpage Process Template Styling
   Ziel: Startseiten-Ablauf über Royal Addons Template auch auf
   Marken-Landingpages sauber und passend ausspielen.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-steps{
  display:block!important;
  grid-template-columns:none!important;
  width:100%!important;
  margin:34px 0 0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .wpr-elementor-template,
body.lorin-bahn-theme .lb-brand-lp-steps .elementor-widget-wpr-elementor-template,
body.lorin-bahn-theme .lb-brand-lp-steps .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-steps .elementor[data-elementor-type="container"]{
  width:100%!important;
  max-width:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-inner{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:40px 34px 42px!important;
  border-radius:28px!important;
  background:#fff!important;
  border:1px solid rgba(36,91,34,.14)!important;
  box-shadow:0 22px 64px rgba(0,0,0,.075)!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-inner > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-h2,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-h2 .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-h2 h2{
  color:#111611!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:22px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-h2:after{
  content:""!important;
  display:block!important;
  width:72px!important;
  height:2px!important;
  border-radius:999px!important;
  background:#245b22!important;
  margin:14px auto 0!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-grid{
  position:relative!important;
  width:100%!important;
  max-width:1040px!important;
  margin:36px auto 0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:30px!important;
  align-items:start!important;
  overflow:visible!important;
  background:transparent!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-step{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-step:not(:last-child):after{
  content:""!important;
  position:absolute!important;
  top:82px!important;
  left:calc(50% + 48px)!important;
  width:calc(100% - 58px)!important;
  border-top:3px dotted rgba(0,0,0,.32)!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-number{
  position:relative!important;
  z-index:2!important;
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  margin:0 0 8px!important;
  padding:0!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  text-align:center!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-number .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-number p{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:inherit!important;
  border-radius:0!important;
  font-size:inherit!important;
  line-height:1!important;
  font-weight:inherit!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon-wrapper{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon{
  position:relative!important;
  z-index:3!important;
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  min-height:72px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(135deg,#2f7132 0%,#173d18 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(15,43,18,.18)!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon svg,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon i{
  width:34px!important;
  height:34px!important;
  font-size:34px!important;
  color:#fff!important;
  fill:#fff!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-title,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-title .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-title h2,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-title h3{
  color:#111611!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  margin:0 0 13px!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-text,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-text .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-text p{
  color:#5f665f!important;
  font-size:14px!important;
  line-height:1.55!important;
  font-weight:400!important;
  text-align:center!important;
  max-width:180px!important;
  margin:0 auto!important;
  padding:0!important;
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-inner{
    padding:36px 28px 38px!important;
    border-radius:24px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:38px 30px!important;
    max-width:760px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-step:after{
    display:none!important;
    content:none!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-inner{
    padding:28px 18px!important;
    border-radius:20px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-h2,
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-h2 .elementor-heading-title{
    font-size:20px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
    max-width:420px!important;
    margin-top:28px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-step{
    display:grid!important;
    grid-template-columns:52px 1fr!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    column-gap:14px!important;
    text-align:left!important;
    padding:16px 16px 16px 18px!important;
    border-radius:16px!important;
    background:#f7faf5!important;
    border:1px solid rgba(36,91,34,.12)!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-step:before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    top:14px!important;
    bottom:14px!important;
    width:4px!important;
    border-radius:0 999px 999px 0!important;
    background:#245b22!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-number{
    position:absolute!important;
    left:12px!important;
    top:12px!important;
    width:23px!important;
    height:23px!important;
    min-width:23px!important;
    min-height:23px!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon,
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon-wrapper{
    grid-column:1!important;
    grid-row:1 / span 2!important;
    margin:0!important;
    width:52px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon svg,
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon i{
    width:23px!important;
    height:23px!important;
    font-size:23px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-title,
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-title .elementor-heading-title{
    grid-column:2!important;
    margin:0 0 4px!important;
    text-align:left!important;
    font-size:14px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-text,
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-text .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-text p{
    grid-column:2!important;
    max-width:none!important;
    text-align:left!important;
    font-size:14px!important;
    line-height:1.48!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.7.4 – Marken-Landingpage FAQ Styling
   Ziel: Elementor Nested Accordion im FAQ-Bereich der Marken-Landingpages
   passend zum Lorin-Bahn Design ausspielen.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-faq,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion{
  width:100%!important;
  max-width:980px!important;
  margin:32px auto 0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  width:100%!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item{
  overflow:hidden!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid rgba(36,91,34,.16)!important;
  box-shadow:0 14px 42px rgba(0,0,0,.055)!important;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item:hover,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item:hover,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(36,91,34,.30)!important;
  box-shadow:0 20px 54px rgba(0,0,0,.085)!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item[open],
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item[open],
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item[open]{
  border-color:rgba(36,91,34,.42)!important;
  box-shadow:0 22px 62px rgba(36,91,34,.12)!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:68px!important;
  padding:20px 24px 20px 28px!important;
  border:0!important;
  background:linear-gradient(135deg,#fff 0%,#f7faf5 100%)!important;
  color:#111611!important;
  cursor:pointer!important;
  list-style:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title::-webkit-details-marker,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title::-webkit-details-marker,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title::-webkit-details-marker{
  display:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title:before,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title:before,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:18px!important;
  bottom:18px!important;
  width:5px!important;
  border-radius:0 999px 999px 0!important;
  background:#245b22!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title-text,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title-text,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title-text{
  color:#111611!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(18px,1.45vw,22px)!important;
  line-height:1.28!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item[open] .e-n-accordion-item-title-text,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item[open] .e-n-accordion-item-title-text,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item[open] .e-n-accordion-item-title-text{
  color:#245b22!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title-icon,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title-icon,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title-icon{
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:rgba(36,91,34,.10)!important;
  color:#245b22!important;
  transition:background .2s ease, color .2s ease!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title-icon svg,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title-icon svg,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title-icon svg{
  width:13px!important;
  height:13px!important;
  fill:currentColor!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item[open] .e-n-accordion-item-title-icon,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item[open] .e-n-accordion-item-title-icon{
  background:#245b22!important;
  color:#fff!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item > .e-con,
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item > [role="region"],
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item > .e-con,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item > [role="region"],
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item > .e-con,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item > [role="region"]{
  padding:0 28px 26px 34px!important;
  background:#fff!important;
  border-top:1px solid rgba(36,91,34,.10)!important;
}
body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item p,
body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item p,
body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item p{
  color:#344138!important;
  font-size:16px!important;
  line-height:1.72!important;
  margin:20px 0 0!important;
  max-width:880px!important;
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-faq,
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion,
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion{
    margin-top:24px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion,
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion,
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion{
    gap:12px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item,
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item,
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item{
    border-radius:18px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title,
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title,
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title{
    min-height:62px!important;
    padding:18px 16px 18px 22px!important;
    gap:12px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item-title-text,
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item-title-text,
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item-title-text{
    font-size:18px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item > .e-con,
  body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item > [role="region"],
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item > .e-con,
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item > [role="region"],
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item > .e-con,
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item > [role="region"]{
    padding:0 18px 22px 22px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-faq .e-n-accordion-item p,
  body.lorin-bahn-theme .lb-brand-lp-faq-accordion .e-n-accordion-item p,
  body.lorin-bahn-theme .lb-brand-lp-section .elementor-widget-n-accordion .e-n-accordion-item p{
    font-size:16px!important;
    line-height:1.68!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.7.5 – Startseite Markenlinks behalten Markenfarben
   Ziel: Verlinkte Textmarken in .lb-brand-row nutzen dieselbe Farbe wie
   unverlinkte Marken und werden nicht von globalen Linkfarben überschrieben.
   ========================================================= */
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo p a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo p a:visited,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo .elementor-heading-title a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo .elementor-heading-title a:visited{
  color:inherit!important;
  text-decoration:none!important;
  border:0!important;
  box-shadow:none!important;
}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(1) a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(1) a:visited{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(2) a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(2) a:visited{color:#178c38!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(3) a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(3) a:visited{color:#e26b22!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(4) a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(4) a:visited{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(5) a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(5) a:visited{color:#e30613!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(6) a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(6) a:visited{color:#111!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(n+7) a,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:nth-child(n+7) a:visited{color:#333!important;}
body.lorin-bahn-theme .lb-brand-logo--marklin a,
body.lorin-bahn-theme .lb-brand-logo--marklin a:visited{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-logo--trix a,
body.lorin-bahn-theme .lb-brand-logo--trix a:visited{color:#178c38!important;}
body.lorin-bahn-theme .lb-brand-logo--roco a,
body.lorin-bahn-theme .lb-brand-logo--roco a:visited{color:#e26b22!important;}
body.lorin-bahn-theme .lb-brand-logo--fleischmann a,
body.lorin-bahn-theme .lb-brand-logo--fleischmann a:visited{color:#d71920!important;}
body.lorin-bahn-theme .lb-brand-logo--piko a,
body.lorin-bahn-theme .lb-brand-logo--piko a:visited{color:#e30613!important;}
body.lorin-bahn-theme .lb-brand-logo--brawa a,
body.lorin-bahn-theme .lb-brand-logo--brawa a:visited{color:#111!important;}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo a:hover,
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo a:focus{
  color:inherit!important;
  opacity:.86!important;
  text-decoration:none!important;
  border:0!important;
  outline:0!important;
}
body.lorin-bahn-theme .lb-brand-row .lb-brand-logo:focus-within{
  transform:translateY(-1px)!important;
}

/* =========================================================
   Lorin-Bahn 1.7.7 – Header Dark/Gold, Hero zurück auf helle Vorlage
   Basis bewusst wieder auf 1.7.5, damit der weiße Hero-Verlauf der Startseite
   unverändert erhalten bleibt. Nur Header/Logo-Fläche und dezente Grünakzente.
   ========================================================= */
body.lorin-bahn-theme{
  --lb-green:#1f5a27;
  --lb-green-dark:#143b18;
  --lb-gold:#b89a5d;
  --lb-gold-hover:#d2b277;
  --lb-header-dark:#050705;
  --lb-header-panel:#0c1710;
  --lb-header-line:rgba(184,154,93,.86);
}

/* Header bleibt dunkel; Logo-Fläche ist nicht mehr weiß. */
body.lorin-bahn-theme .lb-header,
body.lorin-bahn-theme .elementor-location-header .lb-header{
  background:linear-gradient(90deg,#040605 0%, #071009 52%, #040605 100%)!important;
  box-shadow:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo{
  background:linear-gradient(135deg,rgba(7,12,8,.98) 0%,rgba(13,25,16,.96) 100%)!important;
  box-shadow:inset 0 1px 0 var(--lb-header-line), inset 0 -1px 0 rgba(184,154,93,.55)!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:before{
  content:none!important;
  display:none!important;
}
/* Keine große Kreis-/Blob-Kontur mehr; nur eine dezente goldene Abschlusslinie. */
body.lorin-bahn-theme .lb-header .lb-header-logo:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:-10px!important;
  right:34px!important;
  width:1px!important;
  height:calc(100% + 20px)!important;
  background:linear-gradient(180deg,rgba(184,154,93,0),var(--lb-header-line),rgba(184,154,93,.35))!important;
  transform:skewX(-32deg)!important;
  transform-origin:center!important;
  border:0!important;
  clip-path:none!important;
  box-shadow:none!important;
  pointer-events:none!important;
  z-index:4!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img{
  filter:brightness(0) invert(1) sepia(.08) saturate(.85) contrast(1.02) drop-shadow(0 1px 1px rgba(0,0,0,.24))!important;
}
body.lorin-bahn-theme .lb-header .lb-header-menu,
body.lorin-bahn-theme .lb-header .lb-header-cta{
  background:transparent!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button,
body.lorin-bahn-theme .lb-header a.lb-header-button,
body.lorin-bahn-theme .lb-header a.lb-whatsapp-button{
  background:linear-gradient(180deg,#265f2d 0%,#173d1d 100%)!important;
  border:1px solid rgba(184,154,93,.42)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body.lorin-bahn-theme .lb-header .lb-header-cta a:hover,
body.lorin-bahn-theme .lb-header .lb-header-cta .elementor-button:hover{
  background:linear-gradient(180deg,#2e6d35 0%,#1b4822 100%)!important;
}
body.lorin-bahn-theme .lb-header .wpr-mobile-toggle{
  background:rgba(8,12,9,.72)!important;
  border:1px solid rgba(184,154,93,.66)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.20)!important;
}
body.lorin-bahn-theme .lb-header .wpr-mobile-toggle-line,
body.lorin-bahn-theme .lb-header .wpr-mobile-toggle:before{
  background:#fff!important;
}
body.lorin-bahn-theme .lb-header .wpr-mobile-nav-menu{
  border-top:2px solid var(--lb-gold)!important;
}

/* Dezente dunklere Grünakzente, ohne den Startseiten-Hero-Verlauf zu verändern. */
body.lorin-bahn-theme .lb-hero-offer,
body.lorin-bahn-theme a.lb-hero-offer,
body.lorin-bahn-theme .lb-brand-lp-button .elementor-button,
body.lorin-bahn-theme .lb-brand-lp-button a{
  background:linear-gradient(135deg,#1f5a27 0%,#143b18 100%)!important;
  border-color:rgba(184,154,93,.32)!important;
}
body.lorin-bahn-theme .lb-process .lb-process-number,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-number,
body.lorin-bahn-theme .lb-process .lb-process-icon .elementor-icon,
body.lorin-bahn-theme .lb-brand-lp-steps .lb-process-icon .elementor-icon{
  background:linear-gradient(180deg,#1f5a27 0%,#143b18 100%)!important;
}
body.lorin-bahn-theme .lb-content-title:after,
body.lorin-bahn-theme .lb-h2:after,
body.lorin-bahn-theme .lb-process .lb-h2:after,
body.lorin-bahn-theme .lb-process h2:after,
body.lorin-bahn-theme .lb-brands h2:after{
  background:var(--lb-gold)!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    right:25px!important;
    transform:skewX(-30deg)!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    right:20px!important;
  }
}

/* =========================================================
   Lorin-Bahn 1.7.8 – Header Logo-Farben + geschwungene Goldlinie
   Ziel: Logo nicht per CSS weiß färben. Logo bleibt wie hinterlegt.
   Die Linie wird als saubere SVG-Kurve statt als diagonaler Balken gezeichnet.
   ========================================================= */
body.lorin-bahn-theme .lb-header .lb-header-logo img,
body.lorin-bahn-theme .lb-header .lb-header-logo svg,
body.lorin-bahn-theme .lb-header .lb-header-logo picture,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image img{
  filter:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo{
  background:linear-gradient(135deg,rgba(7,12,8,.98) 0%,rgba(13,25,16,.96) 100%)!important;
  box-shadow:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:before{
  content:none!important;
  display:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  transform:none!important;
  border:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  pointer-events:none!important;
  z-index:5!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
  background-position:center!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 330 86' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H208 C240 8 253 36 276 59 C292 78 312 84 330 85' fill='none' stroke='%23b89a5d' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
}
@media(max-width:1240px){
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 292 86' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H178 C211 8 222 36 246 60 C260 77 278 84 292 85' fill='none' stroke='%23b89a5d' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
  }
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 244 76' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H152 C177 8 190 31 206 51 C217 66 230 73 244 75' fill='none' stroke='%23b89a5d' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 194 70' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H118 C137 8 148 27 160 45 C170 61 182 68 194 69' fill='none' stroke='%23b89a5d' stroke-width='1.45' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.7.9 – Header-Kurve + größeres Logo
   Ziel:
   - goldene Kurve sauberer wie in der Vorlage
   - Logo deutlich größer darstellen
   - keine Weißfärbung des Logos
   ========================================================= */
body.lorin-bahn-theme .lb-header,
body.lorin-bahn-theme .elementor-location-header .lb-header{
  background:linear-gradient(90deg,#040605 0%, #081009 58%, #040605 100%)!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
  background:linear-gradient(135deg,rgba(6,11,8,.98) 0%,rgba(10,21,14,.96) 72%,rgba(7,13,9,.96) 100%)!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img,
body.lorin-bahn-theme .lb-header .lb-header-logo svg,
body.lorin-bahn-theme .lb-header .lb-header-logo picture,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image img{
  filter:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}

/* Desktop */
@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 338px!important;
    width:338px!important;
    max-width:338px!important;
    min-height:86px!important;
    padding-left:22px!important;
    padding-right:92px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container{
    height:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:172px!important;
    max-height:82px!important;
    width:auto!important;
    height:auto!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 338 86' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H118 C150 1 171 4 188 16 C202 26 211 41 219 55 C231 73 249 84 338 85' fill='none' stroke='%23b89a5d' stroke-width='1.55' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
  }
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:82px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 254px!important;
    width:254px!important;
    max-width:254px!important;
    min-height:82px!important;
    padding-left:14px!important;
    padding-right:56px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:146px!important;
    max-height:70px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 254 82' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H95 C122 1 140 4 154 15 C167 25 175 39 183 51 C194 67 209 79 254 81' fill='none' stroke='%23b89a5d' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
  }
}

/* Mobile */
@media (max-width:767px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:84px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 222px!important;
    width:222px!important;
    max-width:222px!important;
    min-height:84px!important;
    padding-left:10px!important;
    padding-right:46px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container{
    height:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:136px!important;
    max-height:66px!important;
    width:auto!important;
    height:auto!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 222 84' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H88 C111 1 128 4 141 14 C153 23 160 36 167 48 C177 65 191 80 222 83' fill='none' stroke='%23b89a5d' stroke-width='1.45' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
  }
}
@media (max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 210px!important;
    width:210px!important;
    max-width:210px!important;
    padding-right:42px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:128px!important;
    max-height:62px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 210 84' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H82 C102 1 117 4 129 14 C140 23 147 35 154 47 C164 64 177 79 210 83' fill='none' stroke='%23b89a5d' stroke-width='1.4' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.0 – Desktop Header Logo Abstand zum Goldbogen
   ========================================================= */
@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    padding-left:28px!important;
    padding-right:112px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:160px!important;
    max-height:78px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.1 – Header Logo deutlich größer + mehr Abstand zur Goldkurve
   ========================================================= */
@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 376px!important;
    width:376px!important;
    max-width:376px!important;
    min-height:86px!important;
    padding-left:26px!important;
    padding-right:140px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container{
    justify-content:flex-start!important;
    align-items:center!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:196px!important;
    max-height:92px!important;
    width:auto!important;
    height:auto!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 376 86' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H156 C190 1 214 5 232 18 C247 29 257 44 266 58 C279 74 297 84 376 85' fill='none' stroke='%23b89a5d' stroke-width='1.55' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 282px!important;
    width:282px!important;
    max-width:282px!important;
    min-height:82px!important;
    padding-left:18px!important;
    padding-right:74px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:164px!important;
    max-height:74px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 282 82' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H120 C149 1 168 5 182 15 C195 25 203 39 211 51 C222 68 237 79 282 81' fill='none' stroke='%23b89a5d' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
  }
}

@media (max-width:767px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 236px!important;
    width:236px!important;
    max-width:236px!important;
    min-height:84px!important;
    padding-left:14px!important;
    padding-right:52px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:150px!important;
    max-height:68px!important;
    width:auto!important;
    height:auto!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 236 84' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H106 C130 1 147 4 160 14 C172 23 179 36 186 48 C196 65 210 80 236 83' fill='none' stroke='%23b89a5d' stroke-width='1.45' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
  }
}

@media (max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo{
    flex:0 0 224px!important;
    width:224px!important;
    max-width:224px!important;
    padding-left:12px!important;
    padding-right:46px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img{
    max-width:140px!important;
    max-height:64px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 224 84' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H100 C122 1 138 4 150 14 C161 23 168 35 175 47 C185 64 198 79 224 83' fill='none' stroke='%23b89a5d' stroke-width='1.4' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.2 – Mobile/Tablet Header: goldene Kurve sauberer, Logo deutlich größer
   ========================================================= */
@media (max-width:767px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:90px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 258px!important;
    width:258px!important;
    max-width:258px!important;
    min-height:90px!important;
    padding-left:16px!important;
    padding-right:54px!important;
    background:linear-gradient(135deg,rgba(6,11,8,.98) 0%,rgba(9,19,13,.97) 62%,rgba(6,11,8,.98) 100%)!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container{
    height:100%!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:166px!important;
    max-height:78px!important;
    width:auto!important;
    height:auto!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 258 90' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H118 C147 1 166 4 180 14 C193 24 201 39 209 52 C220 68 234 83 258 89' fill='none' stroke='%23b89a5d' stroke-width='1.45' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
    background-repeat:no-repeat!important;
  }
}

@media (max-width:420px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:88px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 244px!important;
    width:244px!important;
    max-width:244px!important;
    min-height:88px!important;
    padding-left:14px!important;
    padding-right:48px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:156px!important;
    max-height:72px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 244 88' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H108 C134 1 152 4 165 14 C177 23 185 38 193 50 C203 66 217 81 244 87' fill='none' stroke='%23b89a5d' stroke-width='1.4' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:86px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 304px!important;
    width:304px!important;
    max-width:304px!important;
    min-height:86px!important;
    padding-left:20px!important;
    padding-right:82px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:184px!important;
    max-height:80px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 304 86' preserveAspectRatio='none'%3E%3Cpath d='M0 1 H132 C161 1 181 5 196 16 C209 26 218 40 226 53 C237 69 252 80 304 85' fill='none' stroke='%23b89a5d' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")!important;
    background-size:100% 100%!important;
    background-repeat:no-repeat!important;
  }
}

@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:208px!important;
    max-height:96px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.3 – Headerbogen wirklich sichtbar + Logo deutlich größer
   Der Goldbogen wird nun als Hintergrundebene auf der Logo-Fläche gerendert,
   nicht mehr nur als Pseudo-Element. Dadurch wird er zuverlässig sichtbar.
   ========================================================= */
body.lorin-bahn-theme .lb-header .lb-header-logo,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
  overflow:visible!important;
  background-color:#071009!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:100% 100%, 100% 100%!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:before,
body.lorin-bahn-theme .lb-header .lb-header-logo:after{
  content:none!important;
  display:none!important;
  background:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
  filter:none!important;
  opacity:1!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}

@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 410px!important;
    width:410px!important;
    max-width:410px!important;
    min-height:86px!important;
    padding-left:30px!important;
    padding-right:142px!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 410 86' preserveAspectRatio='none'%3E%3Cpath d='M0 3 H158 C197 3 222 8 244 25 C263 40 277 62 300 76 C326 88 363 85 410 85' fill='none' stroke='%23c4a15e' stroke-width='2.35' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(135deg,rgba(6,11,8,.99) 0%,rgba(9,22,14,.97) 64%,rgba(5,9,6,.99) 100%)!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:238px!important;
    max-height:104px!important;
    transform:none!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 326px!important;
    width:326px!important;
    max-width:326px!important;
    min-height:88px!important;
    padding-left:20px!important;
    padding-right:84px!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 326 88' preserveAspectRatio='none'%3E%3Cpath d='M0 3 H128 C160 3 181 7 198 21 C214 34 225 54 244 70 C265 86 292 86 326 86' fill='none' stroke='%23c4a15e' stroke-width='2.15' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(135deg,rgba(6,11,8,.99) 0%,rgba(9,22,14,.97) 64%,rgba(5,9,6,.99) 100%)!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:208px!important;
    max-height:88px!important;
  }
}

@media (max-width:767px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:92px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 286px!important;
    width:286px!important;
    max-width:286px!important;
    min-height:92px!important;
    padding-left:16px!important;
    padding-right:58px!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 286 92' preserveAspectRatio='none'%3E%3Cpath d='M0 3 H112 C142 3 163 7 180 22 C195 35 204 55 222 72 C241 88 263 90 286 90' fill='none' stroke='%23c4a15e' stroke-width='2.05' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(135deg,rgba(6,11,8,.99) 0%,rgba(9,22,14,.97) 64%,rgba(5,9,6,.99) 100%)!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:200px!important;
    max-height:84px!important;
    transform:none!important;
  }
}

@media (max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 272px!important;
    width:272px!important;
    max-width:272px!important;
    min-height:90px!important;
    padding-left:14px!important;
    padding-right:54px!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 272 90' preserveAspectRatio='none'%3E%3Cpath d='M0 3 H106 C134 3 153 7 168 21 C183 34 192 54 210 70 C229 86 251 88 272 88' fill='none' stroke='%23c4a15e' stroke-width='2' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(135deg,rgba(6,11,8,.99) 0%,rgba(9,22,14,.97) 64%,rgba(5,9,6,.99) 100%)!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    max-width:188px!important;
    max-height:80px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.4 – sichtbarer geschwungener Goldbogen + größeres Logo
   - Goldbogen im Header läuft wieder deutlich nach unten
   - Logo in allen Breakpoints spürbar größer
   - keine Filter/Weißfärbung des Logos
   ========================================================= */
body.lorin-bahn-theme .lb-header .lb-header-logo,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
  position:relative!important;
  overflow:visible!important;
  clip-path:none!important;
  border-radius:0 96px 72px 0!important;
  background:linear-gradient(125deg,#123421 0%,#0c2016 58%,#080b09 100%)!important;
  box-shadow:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:before,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:before{
  content:none!important;
  display:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:after,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0 -2px 0 0!important;
  background-repeat:no-repeat!important;
  background-position:left top!important;
  background-size:100% 100%!important;
  pointer-events:none!important;
  z-index:5!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
  filter:none!important;
  opacity:1!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  transform-origin:left center!important;
}

@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:88px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 392px!important;
    width:392px!important;
    max-width:392px!important;
    min-height:88px!important;
    padding:0 126px 0 42px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 392 88' preserveAspectRatio='none'%3E%3Cpath d='M0 5 H122 C164 5 189 9 212 24 C231 37 243 57 257 71 C274 84 300 88 344 88' fill='none' stroke='%23c9a35c' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:196px!important;
    max-width:none!important;
    max-height:82px!important;
    transform:scale(1.18)!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:82px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 318px!important;
    width:318px!important;
    max-width:318px!important;
    min-height:82px!important;
    padding:0 98px 0 28px!important;
    border-radius:0 84px 64px 0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318 82' preserveAspectRatio='none'%3E%3Cpath d='M0 5 H102 C138 5 158 8 178 22 C193 34 204 51 217 65 C232 77 253 82 290 82' fill='none' stroke='%23c9a35c' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:174px!important;
    max-width:none!important;
    max-height:74px!important;
    transform:scale(1.15)!important;
  }
}

@media (max-width:767px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:88px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 250px!important;
    width:250px!important;
    max-width:250px!important;
    min-height:88px!important;
    padding:0 72px 0 18px!important;
    border-radius:0 72px 54px 0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 250 88' preserveAspectRatio='none'%3E%3Cpath d='M0 5 H88 C116 5 132 8 148 20 C161 30 171 45 181 59 C192 75 208 86 236 88' fill='none' stroke='%23c9a35c' stroke-width='2.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:150px!important;
    max-width:none!important;
    max-height:68px!important;
    transform:scale(1.18)!important;
  }
}

@media (max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 236px!important;
    width:236px!important;
    max-width:236px!important;
    min-height:84px!important;
    padding:0 64px 0 16px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo:after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 236 84' preserveAspectRatio='none'%3E%3Cpath d='M0 5 H82 C109 5 123 8 138 19 C150 29 159 43 169 56 C180 71 196 82 222 84' fill='none' stroke='%23c9a35c' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:140px!important;
    max-width:none!important;
    max-height:64px!important;
    transform:scale(1.16)!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.5 – stabiler Header-Bogen wie Vorlage
   - feinerer Goldbogen
   - sichtbarer geschwungener Abfall nach unten
   - größeres Logo in allen Breakpoints
   - saubere mobile / tablet / desktop Darstellung
   ========================================================= */
body.lorin-bahn-theme .lb-header,
body.lorin-bahn-theme .elementor-location-header .lb-header{
  background:#040807!important;
}

body.lorin-bahn-theme .lb-header .lb-header-logo,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
  position:relative!important;
  overflow:hidden!important;
  clip-path:none!important;
  box-shadow:none!important;
  border:none!important;
  background-repeat:no-repeat!important;
  background-position:left top!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo:before,
body.lorin-bahn-theme .lb-header .lb-header-logo:after,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:before,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo:after{
  content:none!important;
  display:none!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo > .e-con-inner,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo .elementor-widget-image,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image .elementor-widget-container,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo .elementor-widget-image .elementor-widget-container,
body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image a,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo .elementor-widget-image a{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  height:100%!important;
}
body.lorin-bahn-theme .lb-header .lb-header-logo img,
body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
  display:block!important;
  filter:none!important;
  opacity:1!important;
  object-fit:contain!important;
  height:auto!important;
  transform:none!important;
}

@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:88px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 330px!important;
    width:330px!important;
    max-width:330px!important;
    min-height:88px!important;
    padding:0 78px 0 28px!important;
    border-radius:0 116px 94px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 330 88' preserveAspectRatio='none'%3E%3Cpath d='M0 1.6 H112 C143 1.6 162 4.4 176 12.5 C189 20 198 30 204 41 C212 55 221 67 236 77 C250 85 270 87 286 87' fill='none' stroke='%23c6a15a' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.96) 0%,rgba(10,33,22,.98) 56%,rgba(6,11,8,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:120px!important;
    max-width:120px!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:84px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 286px!important;
    width:286px!important;
    max-width:286px!important;
    min-height:84px!important;
    padding:0 70px 0 20px!important;
    border-radius:0 102px 82px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 286 84' preserveAspectRatio='none'%3E%3Cpath d='M0 1.5 H98 C126 1.5 143 4.2 156 11.7 C168 18.9 176 28.8 182 39.2 C189 52.5 198 64.2 211 73.5 C224 81.1 241 83 256 83' fill='none' stroke='%23c6a15a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.96) 0%,rgba(10,33,22,.98) 56%,rgba(6,11,8,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:112px!important;
    max-width:112px!important;
  }
}

@media (max-width:767px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:88px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 252px!important;
    width:252px!important;
    max-width:252px!important;
    min-height:88px!important;
    padding:0 62px 0 14px!important;
    border-radius:0 92px 74px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 252 88' preserveAspectRatio='none'%3E%3Cpath d='M0 1.5 H88 C112 1.5 127 4 138 10.8 C149 17.4 156 26.4 161 35.8 C168 48.3 176 60.7 188 70.7 C199 80.1 214 86 228 87' fill='none' stroke='%23c6a15a' stroke-width='1.55' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.96) 0%,rgba(10,33,22,.98) 56%,rgba(6,11,8,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:108px!important;
    max-width:108px!important;
  }
}

@media (max-width:420px){
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 238px!important;
    width:238px!important;
    max-width:238px!important;
    min-height:86px!important;
    padding:0 56px 0 12px!important;
    border-radius:0 86px 68px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 238 86' preserveAspectRatio='none'%3E%3Cpath d='M0 1.5 H82 C104 1.5 118 3.8 129 10.2 C139 16.7 145 25.1 150 34.2 C157 46.4 164 58.4 175 68.1 C186 77.4 200 84 214 85' fill='none' stroke='%23c6a15a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.96) 0%,rgba(10,33,22,.98) 56%,rgba(6,11,8,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:100px!important;
    max-width:100px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.6 – Desktop/Tablet Header Feinschliff
   - Desktop-Bogen sauberer bis zur Unterkante
   - Desktop-Logo größer
   - Tablet-Logo weiter nach links
   - Mobile bleibt bewusst unverändert
   ========================================================= */
@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:88px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 362px!important;
    width:362px!important;
    max-width:362px!important;
    min-height:88px!important;
    padding:0 84px 0 22px!important;
    border-radius:0 120px 94px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 362 88' preserveAspectRatio='none'%3E%3Cpath d='M0 1.55 H126 C161 1.55 185 4.2 203 12.1 C221 19.9 233 32.2 242 46.1 C252 61 266 74 284 82 C298 88 313 88 327 88' fill='none' stroke='%23c6a15a' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 60%,rgba(4,8,7,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:132px!important;
    max-width:132px!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:84px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 300px!important;
    width:300px!important;
    max-width:300px!important;
    min-height:84px!important;
    padding:0 70px 0 12px!important;
    border-radius:0 106px 82px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 84' preserveAspectRatio='none'%3E%3Cpath d='M0 1.5 H104 C132 1.5 151 4 166 11 C180 18 190 28.2 197 39 C206 52.4 217 64.8 232 74 C245 81.8 260 83.3 274 83.3' fill='none' stroke='%23c6a15a' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 60%,rgba(4,8,7,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    width:116px!important;
    max-width:116px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.7 – Header Desktop/Tablet final spacing fix
   - Desktop: Logo deutlich größer und weiter links
   - Desktop: Bogen-Ende bündig zum schwarzen Headerabschluss
   - Tablet: Logo weiter nach links
   - Mobil bleibt unverändert
   ========================================================= */
@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:88px!important;
    border-bottom:2px solid #050807!important;
    overflow:hidden!important;
  }
  body.lorin-bahn-theme .lb-header > .e-con-inner,
  body.lorin-bahn-theme .elementor-location-header .lb-header > .e-con-inner{
    overflow:hidden!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 420px!important;
    width:420px!important;
    max-width:420px!important;
    min-height:88px!important;
    padding:5px 118px 5px 6px!important;
    border-radius:0 138px 92px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 88' preserveAspectRatio='none'%3E%3Cpath d='M0 1.45 H145 C189 1.45 221 3.9 248 12 C275 20 294 35.8 307 52 C320 67.8 337 80.2 358 86.2 C368 88.8 378 89.2 389 89.2' fill='none' stroke='%23c6a15a' stroke-width='1.35' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 61%,rgba(4,8,7,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    height:78px!important;
    max-height:78px!important;
    width:auto!important;
    max-width:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-menu{
    padding-left:32px!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:84px!important;
    overflow:hidden!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 322px!important;
    width:322px!important;
    max-width:322px!important;
    min-height:84px!important;
    padding:4px 76px 4px 4px!important;
    border-radius:0 112px 82px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 322 84' preserveAspectRatio='none'%3E%3Cpath d='M0 1.45 H114 C146 1.45 169 3.8 188 10.2 C207 16.6 220 28 230 41.2 C240 54.6 253 66.3 270 75.2 C281 80.5 293 83.5 304 84.6' fill='none' stroke='%23c6a15a' stroke-width='1.32' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 61%,rgba(4,8,7,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    height:72px!important;
    max-height:72px!important;
    width:auto!important;
    max-width:none!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.8 – Header desktop final alignment + larger logo
   - Desktop: Bogen-Ende bündig zum schwarzen Menübereich
   - Desktop: Logo 105px hoch
   - Tablet: Logo sichtbar größer und weiter links
   ========================================================= */
@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:115px!important;
    height:115px!important;
    background:#050807!important;
    overflow:hidden!important;
    border-bottom:none!important;
  }
  body.lorin-bahn-theme .lb-header > .e-con-inner,
  body.lorin-bahn-theme .elementor-location-header .lb-header > .e-con-inner{
    min-height:115px!important;
    height:115px!important;
    align-items:stretch!important;
    overflow:hidden!important;
    background:#050807!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    position:relative!important;
    overflow:hidden!important;
    flex:0 0 470px!important;
    width:470px!important;
    max-width:470px!important;
    min-height:115px!important;
    height:115px!important;
    padding:5px 130px 5px 10px!important;
    justify-content:flex-start!important;
    align-items:center!important;
    border-radius:0 162px 118px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 470 115' preserveAspectRatio='none'%3E%3Cpath d='M0 1.55 H160 C207 1.55 241 4.6 270 14.3 C298 23.9 318 39.4 332 58.4 C345 76.2 362 91.1 385 102.2 C403 110.5 422 114 442 114' fill='none' stroke='%23c6a15a' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 60%,rgba(4,8,7,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
    background-repeat:no-repeat!important;
    box-shadow:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo::after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo::after{
    content:''!important;
    position:absolute!important;
    right:0!important;
    bottom:0!important;
    width:170px!important;
    height:7px!important;
    background:#050807!important;
    z-index:0!important;
    pointer-events:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > *,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo > *{
    position:relative!important;
    z-index:1!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    height:105px!important;
    max-height:105px!important;
    width:auto!important;
    max-width:none!important;
    object-fit:contain!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-menu{
    min-height:115px!important;
    height:115px!important;
    display:flex!important;
    align-items:center!important;
    padding-left:28px!important;
    background:#050807!important;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    min-height:96px!important;
    height:96px!important;
    overflow:hidden!important;
    background:#050807!important;
  }
  body.lorin-bahn-theme .lb-header > .e-con-inner,
  body.lorin-bahn-theme .elementor-location-header .lb-header > .e-con-inner{
    min-height:96px!important;
    height:96px!important;
    background:#050807!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    flex:0 0 330px!important;
    width:330px!important;
    max-width:330px!important;
    min-height:96px!important;
    height:96px!important;
    padding:4px 78px 4px 2px!important;
    border-radius:0 116px 90px 0!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 330 96' preserveAspectRatio='none'%3E%3Cpath d='M0 1.45 H116 C148 1.45 170 4 188 11 C205 17.8 217 29.4 226 42.4 C236 56.8 249 70.3 266 80.2 C280 88.1 295 93.3 311 95' fill='none' stroke='%23c6a15a' stroke-width='1.32' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 61%,rgba(4,8,7,1) 100%)!important;
    background-size:100% 100%,100% 100%!important;
    background-repeat:no-repeat!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    height:84px!important;
    max-height:84px!important;
    width:auto!important;
    max-width:none!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.8.9 – Desktop Header Schwarzfläche + Logo 125px
   - Schwarz wird über Header, Menü und CTA vollständig nach unten gezogen
   - Logo wird sichtbar größer und weiter nach links geschoben
   - Bogen endet bündig in der schwarzen Fläche
   ========================================================= */
@media (min-width:1025px){
  body.lorin-bahn-theme .lb-header,
  body.lorin-bahn-theme .lb-header.e-con,
  body.lorin-bahn-theme .lb-header.elementor-element,
  body.lorin-bahn-theme .elementor-location-header .lb-header{
    --min-height:125px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    background:#050807!important;
    overflow:hidden!important;
    border-bottom:0!important;
    box-shadow:none!important;
  }
  body.lorin-bahn-theme .lb-header > .e-con-inner,
  body.lorin-bahn-theme .elementor-location-header .lb-header > .e-con-inner{
    --min-height:125px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    align-items:stretch!important;
    overflow:hidden!important;
    background:#050807!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo{
    --min-height:125px!important;
    flex:0 0 500px!important;
    width:500px!important;
    max-width:500px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    padding:0 142px 0 0!important;
    align-self:stretch!important;
    border-radius:0 170px 128px 0!important;
    overflow:hidden!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 125' preserveAspectRatio='none'%3E%3Cpath d='M0 1.5 H175 C222 1.5 258 5.5 290 18 C321 30 344 51 360 76 C376 100 401 118 435 124 C452 127 471 126 500 124' fill='none' stroke='%23c6a15a' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 61%,#050807 100%)!important;
    background-size:100% 100%,100% 100%!important;
    background-repeat:no-repeat!important;
    background-position:left top!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-container,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo .elementor-widget-container,
  body.lorin-bahn-theme .lb-header .lb-header-logo a,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo a{
    height:125px!important;
    min-height:125px!important;
    max-height:125px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:0!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo .elementor-widget-image,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo .elementor-widget-image{
    margin-left:-28px!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo img,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo img{
    height:125px!important;
    max-height:125px!important;
    width:auto!important;
    max-width:none!important;
    object-fit:contain!important;
    filter:none!important;
    transform:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-logo::before,
  body.lorin-bahn-theme .lb-header .lb-header-logo::after,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo::before,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-logo::after{
    content:none!important;
    display:none!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu,
  body.lorin-bahn-theme .lb-header .lb-header-cta,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-menu,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-cta{
    --min-height:125px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    align-self:stretch!important;
    display:flex!important;
    align-items:center!important;
    background:#050807!important;
  }
  body.lorin-bahn-theme .lb-header .lb-header-menu > .e-con-inner,
  body.lorin-bahn-theme .lb-header .lb-header-cta > .e-con-inner,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-menu > .e-con-inner,
  body.lorin-bahn-theme .elementor-location-header .lb-header .lb-header-cta > .e-con-inner,
  body.lorin-bahn-theme .lb-header .wpr-nav-menu-container,
  body.lorin-bahn-theme .lb-header .wpr-nav-menu-horizontal{
    min-height:125px!important;
    height:125px!important;
    display:flex!important;
    align-items:center!important;
    background:#050807!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a,
  body.lorin-bahn-theme .lb-header .wpr-menu-item,
  body.lorin-bahn-theme .lb-header nav.wpr-nav-menu-container a{
    min-height:125px!important;
    height:125px!important;
    display:flex!important;
    align-items:center!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
  body.lorin-bahn-theme .lb-header .wpr-nav-menu > li > a:after,
  body.lorin-bahn-theme .lb-header .wpr-menu-item:after{
    bottom:34px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.9.0 – Header hart stabilisiert über Elementor-IDs
   Problem: schwarze Flächen wurden durch Elementor-Containerhöhen nicht sauber
   bis unten gezogen. Diese Regeln zwingen Header, Menü, CTA und direkte
   Header-Kinder auf dieselbe Höhe.
   ========================================================= */
@media (min-width:1025px){
  body.lorin-bahn-theme .elementor-location-header,
  body.lorin-bahn-theme .elementor.elementor-20{
    background:#050807!important;
  }
  body.lorin-bahn-theme .elementor-20 .elementor-element.elementor-element-3b97008.lb-header,
  body.lorin-bahn-theme .elementor-element.elementor-element-3b97008.lb-header{
    --min-height:125px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    align-items:stretch!important;
    background:#050807!important;
    overflow:hidden!important;
    padding-top:0!important;
    padding-bottom:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-3b97008.lb-header > .elementor-element{
    --min-height:125px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    align-self:stretch!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-f6b8b67.lb-header-logo{
    --min-height:125px!important;
    flex:0 0 500px!important;
    width:500px!important;
    max-width:500px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    padding:0 142px 0 0!important;
    background-color:#0d2d1c!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 125' preserveAspectRatio='none'%3E%3Cpath d='M0 1.5 H175 C222 1.5 258 5.5 290 18 C321 30 344 51 360 76 C376 100 401 118 435 124 C452 127 471 126 500 124' fill='none' stroke='%23c6a15a' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E"),
      linear-gradient(90deg,rgba(17,55,36,.98) 0%,rgba(9,30,20,.98) 61%,#050807 100%)!important;
    background-size:100% 100%,100% 100%!important;
    background-repeat:no-repeat!important;
    background-position:left top!important;
    border-radius:0 170px 128px 0!important;
    overflow:hidden!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-f6b8b67.lb-header-logo > .e-con-inner,
  body.lorin-bahn-theme .elementor-element.elementor-element-b114583.elementor-widget-image,
  body.lorin-bahn-theme .elementor-element.elementor-element-b114583 .elementor-widget-container,
  body.lorin-bahn-theme .elementor-element.elementor-element-b114583 a{
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:0!important;
    margin:0!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-b114583.elementor-widget-image{
    margin-left:-32px!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-b114583 img{
    height:125px!important;
    max-height:125px!important;
    width:auto!important;
    max-width:none!important;
    object-fit:contain!important;
    filter:none!important;
    transform:none!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-60267cf.lb-header-menu,
  body.lorin-bahn-theme .elementor-element.elementor-element-0570345.lb-header-cta{
    --min-height:125px!important;
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    align-self:stretch!important;
    display:flex!important;
    align-items:center!important;
    background:#050807!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-60267cf.lb-header-menu > .e-con-inner,
  body.lorin-bahn-theme .elementor-element.elementor-element-0570345.lb-header-cta > .e-con-inner,
  body.lorin-bahn-theme .elementor-element.elementor-element-365901a,
  body.lorin-bahn-theme .elementor-element.elementor-element-365901a .elementor-widget-container,
  body.lorin-bahn-theme .elementor-element.elementor-element-365901a .wpr-nav-menu-container,
  body.lorin-bahn-theme .elementor-element.elementor-element-365901a .wpr-nav-menu-horizontal{
    min-height:125px!important;
    height:125px!important;
    max-height:125px!important;
    display:flex!important;
    align-items:center!important;
    background:#050807!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-365901a .wpr-nav-menu > li > a,
  body.lorin-bahn-theme .elementor-element.elementor-element-365901a .wpr-menu-item{
    min-height:125px!important;
    height:125px!important;
    display:flex!important;
    align-items:center!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
  body.lorin-bahn-theme .elementor-element.elementor-element-74ec232,
  body.lorin-bahn-theme .elementor-element.elementor-element-74ec232 .elementor-widget-container,
  body.lorin-bahn-theme .elementor-element.elementor-element-74ec232 .elementor-button-wrapper{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:125px!important;
    height:125px!important;
    background:#050807!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.9.1 – Marken-Landingpage Hero wie Startseite
   - Keine grüne/dunkle Überlagerung mehr
   - Weißer Verlauf wie Startseiten-Hero
   - Texte auf hellem Hero dunkel und kontrastreich
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  min-height:600px!important;
  padding:96px 32px 86px!important;
  background-color:#f3f1ea!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-position:center right!important;
  color:#111611!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  z-index:0!important;
  pointer-events:none!important;
  clip-path:none!important;
  background:
    linear-gradient(90deg,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,1) 27%,
      rgba(255,255,255,.96) 39%,
      rgba(255,255,255,.78) 52%,
      rgba(255,255,255,.42) 66%,
      rgba(255,255,255,.12) 82%,
      rgba(255,255,255,0) 100%),
    radial-gradient(ellipse at 25% 48%,
      rgba(255,255,255,.98) 0%,
      rgba(255,255,255,.86) 36%,
      rgba(255,255,255,.38) 62%,
      rgba(255,255,255,0) 78%)!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero:after{
  content:none!important;
  display:none!important;
  background:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero > .e-con-inner,
body.lorin-bahn-theme .lb-brand-lp-hero-inner,
body.lorin-bahn-theme .lb-brand-lp-hero-content,
body.lorin-bahn-theme .lb-brand-lp-hero-card,
body.lorin-bahn-theme .lb-brand-lp-kicker,
body.lorin-bahn-theme .lb-brand-lp-h1,
body.lorin-bahn-theme .lb-brand-lp-lead,
body.lorin-bahn-theme .lb-brand-lp-checks,
body.lorin-bahn-theme .lb-brand-lp-actions{
  position:relative!important;
  z-index:1!important;
}

body.lorin-bahn-theme .lb-brand-lp-kicker,
body.lorin-bahn-theme .lb-brand-lp-kicker .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-kicker p{
  color:#245b22!important;
  text-shadow:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-h1,
body.lorin-bahn-theme .lb-brand-lp-h1 .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-h1 h1{
  color:#080b09!important;
  text-shadow:none!important;
  max-width:780px!important;
}
body.lorin-bahn-theme .lb-brand-lp-lead,
body.lorin-bahn-theme .lb-brand-lp-lead .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-lead p{
  color:#626a63!important;
  text-shadow:none!important;
  max-width:690px!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-checks ul,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-items{
  gap:14px 22px!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks li,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-item,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-text{
  color:#111611!important;
  font-weight:850!important;
  text-shadow:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks li:before{
  display:grid!important;
  place-items:center!important;
  top:-2px!important;
  width:23px!important;
  height:23px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:#245b22!important;
  font-size:14px!important;
  line-height:1!important;
  box-shadow:0 8px 18px rgba(36,91,34,.20)!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-icon{
  display:grid!important;
  place-items:center!important;
  width:23px!important;
  height:23px!important;
  min-width:23px!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(36,91,34,.20)!important;
}
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-icon i,
body.lorin-bahn-theme .lb-brand-lp-checks .elementor-icon-list-icon svg{
  color:#fff!important;
  fill:#fff!important;
  width:13px!important;
  height:13px!important;
}
body.lorin-bahn-theme .lb-brand-lp-button .elementor-button,
body.lorin-bahn-theme .lb-brand-lp-button a{
  color:#fff!important;
  background:linear-gradient(180deg,#245b22 0%,#173d18 100%)!important;
  border-color:#245b22!important;
  box-shadow:0 14px 28px rgba(36,91,34,.22)!important;
}
body.lorin-bahn-theme .lb-brand-lp-button .elementor-button:hover,
body.lorin-bahn-theme .lb-brand-lp-button a:hover{
  color:#fff!important;
  background:linear-gradient(180deg,#2f7132 0%,#1d4f22 100%)!important;
  box-shadow:0 18px 34px rgba(36,91,34,.28)!important;
}
body.lorin-bahn-theme .lb-brand-lp-button--secondary .elementor-button,
body.lorin-bahn-theme .lb-brand-lp-button--secondary a{
  color:#111611!important;
  background:rgba(255,255,255,.48)!important;
  border-color:rgba(17,22,17,.26)!important;
  box-shadow:none!important;
  backdrop-filter:blur(3px)!important;
}
body.lorin-bahn-theme .lb-brand-lp-button--secondary .elementor-button:hover,
body.lorin-bahn-theme .lb-brand-lp-button--secondary a:hover{
  color:#111611!important;
  background:rgba(255,255,255,.78)!important;
  border-color:rgba(36,91,34,.38)!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-hero{
    min-height:auto!important;
    padding:78px 24px 72px!important;
    background-position:center right!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero:before{
    background:
      linear-gradient(90deg,
        rgba(255,255,255,.98) 0%,
        rgba(255,255,255,.94) 42%,
        rgba(255,255,255,.66) 64%,
        rgba(255,255,255,.22) 84%,
        rgba(255,255,255,0) 100%)!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero{
    padding:58px 18px 58px!important;
    background-position:center center!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero:before{
    background:
      linear-gradient(180deg,
        rgba(255,255,255,.97) 0%,
        rgba(255,255,255,.92) 42%,
        rgba(255,255,255,.70) 72%,
        rgba(255,255,255,.38) 100%)!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-h1,
  body.lorin-bahn-theme .lb-brand-lp-h1 .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-h1 h1{
    color:#080b09!important;
    font-size:42px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-lead,
  body.lorin-bahn-theme .lb-brand-lp-lead p{
    color:#545d55!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.9.2 – Landingpage Hero Check-Boxen sauber ausrichten
   - Icon/Tick kollidiert nicht mehr mit Text
   - helle, hochwertige Boxen passend zum weißen Hero
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks ul,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-items{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px 18px!important;
  margin:28px 0 0!important;
  padding:0!important;
  list-style:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-item{
  position:relative!important;
  display:flex!important;
  align-items:flex-start!important;
  min-height:72px!important;
  margin:0!important;
  padding:16px 18px 16px 56px!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.76)!important;
  border:1px solid rgba(17,22,17,.08)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.07)!important;
  backdrop-filter:blur(2px)!important;
  color:#111611!important;
  overflow:hidden!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li:before,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-item:before{
  content:"✓"!important;
  position:absolute!important;
  left:18px!important;
  top:16px!important;
  display:grid!important;
  place-items:center!important;
  width:26px!important;
  height:26px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:#245b22!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:900!important;
  box-shadow:0 7px 16px rgba(36,91,34,.25)!important;
  z-index:1!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-icon{
  position:absolute!important;
  left:18px!important;
  top:16px!important;
  display:grid!important;
  place-items:center!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  margin:0!important;
  border-radius:999px!important;
  background:#245b22!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(36,91,34,.25)!important;
  z-index:2!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-icon + .elementor-icon-list-text{
  padding-left:0!important;
  margin-left:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-text,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li span{
  display:block!important;
  color:#111611!important;
  font-size:15px!important;
  line-height:1.38!important;
  font-weight:850!important;
  padding:0!important;
  margin:0!important;
  max-width:100%!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks ul,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-items{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-item{
    min-height:auto!important;
    padding:14px 16px 14px 52px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li:before,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-item:before,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-icon{
    left:16px!important;
    top:14px!important;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.9.3 – Landingpage Hero Check-Boxen breiter
   - Boxen nutzen die verfügbare Breite im Hero
   - Text wird nicht abgeschnitten und darf sauber umbrechen
   - Tablet bleibt 2-spaltig, Mobil 1-spaltig
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-hero-content{
  width:100%!important;
  max-width:760px!important;
  align-self:stretch!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks{
  display:block!important;
  width:min(100%, 720px)!important;
  max-width:720px!important;
  margin-top:30px!important;
  align-self:stretch!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-widget-container{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks ul,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-items{
  display:grid!important;
  width:100%!important;
  max-width:none!important;
  grid-template-columns:repeat(2,minmax(250px,1fr))!important;
  gap:14px 18px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-item{
  width:100%!important;
  min-width:0!important;
  min-height:74px!important;
  padding:16px 20px 16px 58px!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-text,
body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li span{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:auto!important;
  line-height:1.38!important;
}

@media(min-width:768px) and (max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-hero-content,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks{
    max-width:720px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks ul,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-items{
    grid-template-columns:repeat(2,minmax(240px,1fr))!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-hero-content,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks{
    max-width:none!important;
    width:100%!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks ul,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-items{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks li,
  body.lorin-bahn-theme .lb-brand-lp-hero .lb-brand-lp-checks .elementor-icon-list-item{
    min-height:auto!important;
    padding:14px 16px 14px 54px!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.9.4 – Brand-Landingpage Hero näher an Startseite
   - Weißer Overlay deutlich transparenter
   - Mehr sichtbare Lok / mehr Bildtiefe
   - Mobile und Tablet mit ähnlicher Bildwirkung wie Startseite
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-hero{
  background-position:78% center!important;
  background-size:cover!important;
}
body.lorin-bahn-theme .lb-brand-lp-hero:before{
  background:
    linear-gradient(90deg,
      rgba(255,255,255,.98) 0%,
      rgba(255,255,255,.97) 22%,
      rgba(255,255,255,.90) 36%,
      rgba(255,255,255,.72) 50%,
      rgba(255,255,255,.44) 62%,
      rgba(255,255,255,.18) 74%,
      rgba(255,255,255,.04) 84%,
      rgba(255,255,255,0) 100%),
    radial-gradient(circle at 18% 46%,
      rgba(255,255,255,.62) 0%,
      rgba(255,255,255,.28) 34%,
      rgba(255,255,255,0) 58%)!important;
}
body.lorin-bahn-theme .lb-brand-lp-lead,
body.lorin-bahn-theme .lb-brand-lp-lead .elementor-widget-container,
body.lorin-bahn-theme .lb-brand-lp-lead p{
  color:#5f6661!important;
}

@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-hero{
    background-position:74% center!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero:before{
    background:
      linear-gradient(90deg,
        rgba(255,255,255,.98) 0%,
        rgba(255,255,255,.96) 26%,
        rgba(255,255,255,.86) 42%,
        rgba(255,255,255,.62) 58%,
        rgba(255,255,255,.30) 72%,
        rgba(255,255,255,.08) 84%,
        rgba(255,255,255,0) 100%)!important;
  }
}

@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-hero{
    background-position:76% center!important;
    background-size:cover!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-hero:before{
    background:
      linear-gradient(90deg,
        rgba(255,255,255,.97) 0%,
        rgba(255,255,255,.95) 16%,
        rgba(255,255,255,.84) 32%,
        rgba(255,255,255,.60) 46%,
        rgba(255,255,255,.34) 58%,
        rgba(255,255,255,.14) 70%,
        rgba(255,255,255,.03) 80%,
        rgba(255,255,255,0) 92%)!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-h1,
  body.lorin-bahn-theme .lb-brand-lp-h1 .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-h1 h1{
    max-width:92%!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-lead,
  body.lorin-bahn-theme .lb-brand-lp-lead .elementor-widget-container,
  body.lorin-bahn-theme .lb-brand-lp-lead p{
    max-width:88%!important;
    color:#5e655f!important;
  }
}


/* =========================================================
   Lorin-Bahn 1.9.5 – Card-Überschriften mit langen Wörtern stabil
   - Lange deutsche Wörter brechen sauber um
   - Überschriften bleiben optisch hochwertig und laufen nicht aus Cards
   - Desktop/Tablet/Mobil berücksichtigt
   ========================================================= */
body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-title,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-title,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-brand-lp-info-card-title,
body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-brand-lp-info-card-title{
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
  overflow:visible!important;
}
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h1,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h2,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h3,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h4,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title .elementor-heading-title,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h1,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h2,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h3,
body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h4{
  display:block!important;
  max-width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
  text-wrap:balance!important;
  line-height:1.06!important;
}

@media(min-width:1025px){
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h1,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h2,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h3,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h4,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h1,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h2,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h3,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h4{
    font-size:clamp(30px,2.7vw,43px)!important;
    letter-spacing:-.032em!important;
  }
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-content-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-content-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .e-con .lb-brand-lp-info-card-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid > .elementor-element .lb-brand-lp-info-card-title{
    min-height:126px!important;
  }
}
@media(max-width:1024px){
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h1,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h2,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h3,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h4,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h1,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h2,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h3,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h4{
    font-size:clamp(28px,5.2vw,38px)!important;
    line-height:1.08!important;
  }
}
@media(max-width:767px){
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h1,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h2,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h3,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-content-title h4,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title .elementor-heading-title,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h1,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h2,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h3,
  body.lorin-bahn-theme .lb-brand-lp-card-grid .lb-brand-lp-info-card-title h4{
    font-size:clamp(28px,8.5vw,36px)!important;
    line-height:1.08!important;
    letter-spacing:-.028em!important;
  }
}
