/****** FILE: themes/luithleluithle/css/montserrat.css *****/
/* montserrat-300 - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/montserrat-v12-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Montserrat Light'), local('Montserrat-Light'),
       url('../fonts/montserrat-v12-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v12-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v12-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v12-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v12-latin-300.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-regular - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/montserrat-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Montserrat Regular'), local('Montserrat-Regular'),
       url('../fonts/montserrat-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v12-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-500 - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/montserrat-v12-latin-500.eot'); /* IE9 Compat Modes */
  src: local('Montserrat Medium'), local('Montserrat-Medium'),
       url('../fonts/montserrat-v12-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/montserrat-v12-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/montserrat-v12-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/montserrat-v12-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/montserrat-v12-latin-500.svg#Montserrat') format('svg'); /* Legacy iOS */
}
/* montserrat-900 (Black) - latin - ergaenzt, da h1/h2/.ll-home-h1/.ll-home-h2 u.a.
   font-weight:900 anfordern, ohne diesen Schnitt aber nur kuenstlich vom Browser
   fettgerechnet werden (auf dev UND production identisch, da dort ebenfalls nur
   300/400/500 vorlagen). Quelle: Google Fonts, SIL Open Font License. */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: local('Montserrat Black'), local('Montserrat-Black'),
       url('../fonts/montserrat-v12-latin-900.woff2') format('woff2'),
       url('../fonts/montserrat-v12-latin-900.ttf') format('truetype');
}
/****** FILE: themes/luithleluithle/css/normalize.css *****/
/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in IE and iOS.
 */

html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */

article,
aside,
details, /* 1 */
figcaption,
figure,
footer,
header,
main, /* 2 */
menu,
nav,
section,
summary { /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */

audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */

template, /* 1 */
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}


/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/* Forms
   ========================================================================== */

/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */

optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */

::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/****** FILE: themes/luithleluithle/css/swiper-bundle.min.css *****/
/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size,4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;background:var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));border-radius:var(--swiper-scrollbar-border-radius,10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}
/****** FILE: themes/luithleluithle/css/glightbox.min.css *****/
.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:1}.greset{-webkit-transition:all .3s ease;transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:lightboxLoader .8s infinite linear;animation:lightboxLoader .8s infinite linear;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:gfadeIn .5s ease;animation:gfadeIn .5s ease}.gfadeOut{-webkit-animation:gfadeOut .5s ease;animation:gfadeOut .5s ease}.gslideOutLeft{-webkit-animation:gslideOutLeft .3s ease;animation:gslideOutLeft .3s ease}.gslideInLeft{-webkit-animation:gslideInLeft .3s ease;animation:gslideInLeft .3s ease}.gslideOutRight{-webkit-animation:gslideOutRight .3s ease;animation:gslideOutRight .3s ease}.gslideInRight{-webkit-animation:gslideInRight .3s ease;animation:gslideInRight .3s ease}.gzoomIn{-webkit-animation:gzoomIn .5s ease;animation:gzoomIn .5s ease}.gzoomOut{-webkit-animation:gzoomOut .5s ease;animation:gzoomOut .5s ease}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}}
/****** FILE: themes/luithleluithle/css/style.css *****/
﻿@charset "utf-8";

#grid-overlay{position: absolute;top:0;left:0;width:100%;opacity: .6;z-index: 999;}

:root {
    --brand: #0064ad;
    --brand-rgb: 0, 100, 173;
    --ink: #0f172a;
    --ink-rgb: 15, 23, 42;
    --muted: #475569;
    --heading-dark: #071633;
    --surface: #ffffff;
    --surface-rgb: 255, 255, 255;
    --soft: #f6faff;
    --soft-blue: #eef6ff;
    --hero-blue: #eaf5ff;
    --off-white: #f9fbfd;
    --panel-blue: #f6fbff;
    --values-blue-light: #9fd3ff;
    --card-bg: #ffffff;
    --box-shadow: 0 14px 34px rgba(2, 37, 84, .07);
    --line: rgba(var(--ink-rgb), .12);
    --border: var(--line);
    --box-shodow: var(--shadow-card);
    --text-72: rgba(var(--ink-rgb), .72);
    --text-76: rgba(var(--ink-rgb), .76);
    --text-78: rgba(var(--ink-rgb), .78);
    --text-80: rgba(var(--ink-rgb), .80);
    --text-82: rgba(var(--ink-rgb), .82);
    --text-86: rgba(var(--ink-rgb), .86);
    --text-88: rgba(var(--ink-rgb), .88);
    --text-92: rgba(var(--ink-rgb), .92);
    --brand-04: rgba(var(--brand-rgb), .04);
    --brand-06: rgba(var(--brand-rgb), .06);
    --brand-08: rgba(var(--brand-rgb), .08);
    --brand-10: rgba(var(--brand-rgb), .10);
    --brand-12: rgba(var(--brand-rgb), .12);
    --brand-14: rgba(var(--brand-rgb), .14);
    --brand-16: rgba(var(--brand-rgb), .16);
    --brand-18: rgba(var(--brand-rgb), .18);
    --brand-20: rgba(var(--brand-rgb), .20);
    --brand-22: rgba(var(--brand-rgb), .22);
    --brand-24: rgba(var(--brand-rgb), .24);
    --brand-25: rgba(var(--brand-rgb), .25);
    --brand-28: rgba(var(--brand-rgb), .28);
    --brand-34: rgba(var(--brand-rgb), .34);
    --brand-35: rgba(var(--brand-rgb), .35);
    --brand-45: rgba(var(--brand-rgb), .45);
    --black-06: rgba(0, 0, 0, .06);
    --black-08: rgba(0, 0, 0, .08);
    --black-10: rgba(0, 0, 0, .10);
    --gradient-card: linear-gradient(180deg, var(--surface), var(--off-white));
    --gradient-statement: linear-gradient(90deg, rgba(238, 247, 255, .96), rgba(var(--surface-rgb), .92));
    --gradient-blue-panel: linear-gradient(180deg, var(--brand-04), rgba(var(--surface-rgb), .85));
    --gradient-feature-overlay: linear-gradient(90deg, rgba(7, 22, 51, .78), rgba(7, 22, 51, .28), rgba(7, 22, 51, .06));
    --shadow: 0 14px 34px rgba(2, 37, 84, .07);
    --shadow-soft: 0 12px 28px var(--black-06);
    --shadow-card: 0 18px 45px rgba(2, 37, 84, .08);
    --shadow-card-hover: 0 26px 60px rgba(2, 37, 84, .12);
    --shadow-strong: 0 24px 60px rgba(2, 37, 84, .12);
    --shadow-brand: 0 16px 34px rgba(var(--brand-rgb), .22);
    --shadow-hero: 0 14px 44px rgba(var(--brand-rgb), .16);
    --shadow-complex: 0 28px 70px rgba(2, 37, 84, .10);
    --radius-sm: 14px;
    --radius: 18px;
    --radius-md: 20px;
    --radius-card: 22px;
    --radius-lg: 24px;
    --radius-xl: 30px;
    --radius-pill: 999px;
}

/* =========================================================
   Globale Helfer
   ========================================================= */

.container {    
    margin-left: auto;
    margin-right: auto;
}

img.leftAlone,
.leftAlone {
    float: none !important;
    margin: 0 !important;
}


#videos .video-card__play {
    left: 0;
    top: 0;
    transform: unset;
}

.sp-feature-split .subtext,
.hero .subtext {
    text-align: left;
}

.ll-home-h1 {
    margin: 18px 0 30px;
    color: var(--ink);
    font-size: clamp(44px, 4vw, 84px);
    line-height: .98;
    letter-spacing: -.06em;
    font-weight: 900;
}

.ll-home-h2 {
    margin: 0 0 14px;
    color: var(--ink);
    font-size: clamp(34px, 3vw, 64px);
    line-height: 1.05;
    letter-spacing: -.045em;
    font-weight: 900;
}

.subtext {    
    margin-left: auto;
    margin-right: auto;
    color: var(--text-78);
    font-size: 1.04rem;
    line-height: 1.65;
    text-align: center;
}

.ll-copy-stack {
    max-width: 85ch;
    color: var(--text-86);
    line-height: 1.65;
}

.ll-subtitle-left,
.ll-subtitle-center {
    color: var(--brand);
    font-weight: 900;
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 12px;
}

.ll-subtitle-left {
    justify-content: flex-start;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.ll-subtitle-center {
    justify-content: center;
    text-align: center;
}

    .ll-subtitle-left::before,
    .ll-subtitle-center::before,
    .ll-subtitle-center::after {
        content: "";
        width: 44px;
        height: 3px;
        border-radius: var(--radius-pill);
        background: var(--brand);
    }

.prod-badge,
.ll-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: var(--radius-pill);
    background: var(--brand);
    color: var(--surface);
    border: 1px solid var(--brand-35);
    box-shadow: 0 10px 22px var(--brand-16);
    font-weight: 900;
    font-size: 12px;
    letter-spacing: .04em;
    white-space: nowrap;
}

    .prod-badge.is-centered {
        margin-left: auto;
        margin-right: auto;
    }

.btn.btn--primary {
    background: var(--brand);
    color: var(--surface);
    border-color: var(--brand);
}

.btn.btn--ghost {
    background: var(--surface);
    color: var(--brand);
    border: 1px solid var(--brand-25);
}

a.btn.btn--ghost:hover {
    color: var(--surface) !important;
    background: var(--brand) !important;    
}


.ll-modern-bild {
    min-height: 160px;
    border-radius: var(--radius);
    border: 1px dashed var(--brand-28);
    background: var(--gradient-blue-panel);
    display: grid;
    place-items: center;
    color: var(--text-72);
    font-weight: 900;
    overflow: hidden;
}

    .ll-modern-bild img,
    .ll-hosting-icn img,
    .ll-kpi__dot img,
    .ll-hero-modern__icon img {
        max-width: 100%;
        max-height: 100%;
        width: auto;
        height: auto;
        display: block;
        object-fit: contain;
    }

/* =========================================================
   Sektion 1 Hero
   ========================================================= */

.ll-hero-modern__inner {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: clamp(18px, 3vw, 38px);
    align-items: center;
    padding: clamp(18px, 2.6vw, 34px);
}

.ll-hero-modern__lead {
    color: var(--ink);
    max-width: 70ch;
    margin: 10px 0 12px;
    font-size: 1.06rem;
    line-height: 1.55;
}

.ll-hero-modern__ctas {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.ll-hero-modern__partner {
    margin-top: 14px;
    border-left: 4px solid var(--brand);
    background: rgba(var(--surface-rgb), .92);
    border-radius: var(--radius);
    border-top: 1px solid var(--brand-14);
    border-right: 1px solid var(--brand-14);
    border-bottom: 1px solid var(--brand-14);
    box-shadow: var(--shadow-soft);
    padding: 12px;
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 12px;
    align-items: center;
}

    .ll-hero-modern__partner .ll-modern-bild {
        min-height: 96px;
        border-radius: var(--radius-sm);
    }

    .ll-hero-modern__partner img {
        width: 100%;
        height: 96px;
        object-fit: cover;
        display: block;
    }

.ll-hero-modern__visual {
    position: relative;
    min-height: clamp(300px, 44vw, 520px);
    border-radius: var(--radius-lg);
    border: 1px solid var(--brand-14);
    background: var(--hero-blue);
    box-shadow: var(--shadow-hero);
    overflow: hidden;
    isolation: isolate;
}

    .ll-hero-modern__visual .ll-modern-bild {
        min-height: 100%;
        border: none;
        border-radius: 0;
        background: radial-gradient(60% 70% at 50% 35%, var(--brand-14), rgba(var(--brand-rgb), 0) 60%);
    }

.ll-hero-modern__float {
    position: absolute;
    right: 14px;
    bottom: 14px;
    width: min(320px, 42%);
    display: grid;
    gap: 10px;
}

.ll-hero-modern__mini {
    background: rgba(var(--surface-rgb), .92);
    border: 1px solid var(--brand-16);
    border-radius: 16px;
    box-shadow: 0 12px 28px var(--black-08);
    padding: 12px;
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 10px;
    align-items: center;
}

.ll-hero-modern__icon {
    width: 44px;
    height: 44px;
    border-radius: var(--radius-sm);
    background: var(--brand-08);
    border: 1px solid var(--brand-18);
    display: grid;
    place-items: center;
}

.ll-hero-modern__mini strong {
    font-weight: 900;
    color: var(--ink);
}

.ll-hero-modern__mini span {
    display: block;
    color: var(--muted);
    margin-top: 2px;
}

/* =========================================================
   Sektion 1 KPI Leiste
   ========================================================= */

.ll-kpi-strip {
    border-top: 1px solid var(--brand-14);
    background: rgba(var(--surface-rgb), .72);
}

.ll-kpi-strip__inner {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
    padding: 14px 0;
}

.ll-kpi {
    background: var(--surface);
    border: 1px solid var(--brand-14);
    border-radius: 16px;
    padding: 10px;
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 10px;
    align-items: center;
}

.ll-kpi__dot {
    width: 38px;
    height: 38px;
    border-radius: var(--radius-sm);
    background: var(--brand-08);
    border: 1px solid var(--brand-18);
    display: grid;
    place-items: center;
}

.ll-kpi__title {
    font-weight: 900;
    color: var(--ink);
    line-height: 1.05;
}

.ll-kpi__sub {
    color: var(--muted);
    font-size: .92rem;
    margin-top: 2px;
}

/* =========================================================
   Sektion 2 Komplexität und Herausforderungen
   ========================================================= */

#it-komplexitaet {
    position: relative;
    padding: 70px 0 36px;
    overflow: hidden;
}

#it-komplexitaet > * {
    position: relative;
    z-index: 2;
}

.ll-complex-intro {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.02fr .98fr;
    gap: 64px;
    align-items: center;
}

.ll-complex-copy {
    max-width: 720px;
}

    .ll-complex-copy .ll-home-h2 {
        margin-bottom: 28px;
    }

.ll-trust-modern__inner p,
.ll-complex-copy p {
    color: var(--text-78);
    font-size: 1.04rem;
    line-height: 1.72;
    margin: 0 0 18px;
}

.ll-complex-visual {
    position: relative;
    min-height: 430px;
    border-radius: var(--radius-xl);
    overflow: hidden;
    background: linear-gradient(135deg, rgba(238, 247, 255, .94), rgba(var(--surface-rgb), .98));
    border: 1px solid var(--brand-14);
    box-shadow: var(--shadow-complex);
}

    .ll-complex-visual::before {
        content: "";
        position: absolute;
        inset: 26px;
        border-radius: var(--radius-lg);
        border: 1px dashed var(--brand-22);
        pointer-events: none;
        z-index: 2;
    }

    .ll-complex-visual img {
        width: 100%;
        height: 100%;
        min-height: 430px;
        display: block;
        object-fit: cover;
    }

.ll-complex-label {
    max-width: 1320px;
    margin: 56px auto 26px;
    display: flex;
    align-items: center;
    gap: 18px;
}

    .ll-complex-label strong {
        color: var(--brand);
        font-size: 1.08rem;
        font-weight: 850;
    }

.ll-complex-grid {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 18px;
    align-items: stretch;
}

.ll-complex-card {
    overflow: hidden;
    min-height: 100%;
    border-radius: var(--radius-card);
    background: rgba(var(--surface-rgb), .94);
    border: 1px solid var(--brand-16);
    box-shadow: var(--shadow-card);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

    .ll-complex-card:hover {
        transform: translateY(-4px);
        border-color: var(--brand-34);
        box-shadow: var(--shadow-card-hover);
    }

.ll-complex-card__image {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--soft-blue);
}

    .ll-complex-card__image img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
    }

.ll-complex-card__body {
    padding: 24px 22px 28px;
}

.ll-complex-card__eyebrow {
    color: var(--brand);
    font-size: .78rem;
    line-height: 1.2;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.ll-complex-card__title {
    color: var(--heading-dark);
    font-size: 1.14rem;
    line-height: 1.22;
    font-weight: 850;
    letter-spacing: -.02em;
    margin-bottom: 16px;
}

    .ll-complex-card__title::after {
        content: "";
        display: block;
        width: 48px;
        height: 3px;
        margin-top: 16px;
        border-radius: var(--radius-pill);
        background: var(--brand);
    }

.ll-complex-card__text {
    color: var(--text-76);
    font-size: .93rem;
    line-height: 1.58;
    word-wrap: break-word;
}

.ll-complex-statement {
    max-width: 1320px;
    margin: 28px auto 0;
    min-height: 108px;
    padding: 7px 16px;
    display: flex;
    align-items: center;
    gap: 28px;
    border-radius: var(--radius-md);
    border: 1px solid var(--brand-22);
    background: radial-gradient(circle at 88% 30%, var(--brand-10), transparent 28%), var(--gradient-statement);
    box-shadow: var(--shadow-card);
}

.ll-complex-statement__icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--surface);
    border: 1px solid var(--brand-18);
    color: var(--brand);
    font-size: 2rem;
    font-weight: 850;
}

.ll-complex-statement__text {
    color: var(--brand);
    font-size: 1.25rem;
    line-height: 1.25;
    font-weight: 850;
    letter-spacing: -.025em;
}

/* =========================================================
   Sektion 3 Kundenstimmen
   ========================================================= */

.ll-trust-modern__inner {
    padding: clamp(18px, 2.6vw, 32px);
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 34px;
    align-items: start;
}

.ll-complex-intro .ll-home-h2,
.ll-trust-modern__inner .ll-home-h2 {
    text-align: left;
}

.ll-quote-grid {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: clamp(12px, 2vw, 16px);
    margin-top: 14px;
}

.ll-quote {
    background: var(--gradient-card);
    border: 1px solid var(--brand-18);
    border-radius: var(--radius);
    box-shadow: 0 12px 30px var(--black-08);
    padding: 14px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

    .ll-quote.is-big {
        grid-row: span 2;
    }

.ll-quote__mark {
    position: absolute;
    top: 8px;
    left: 12px;
    font-size: 46px;
    line-height: 1;
    font-weight: 900;
    color: var(--brand);
}

.ll-quote__text {
    margin-top: 26px;
    font-weight: 900;
    color: var(--ink);
    line-height: 1.18;
    max-width: 38ch;
    font-size: 1.06rem;
    letter-spacing: -.01em;
}

.ll-quote.is-big .ll-quote__text {
    font-size: clamp(1.12rem, 1.5vw, 2.38rem);
    max-width: 34ch;
}

.ll-quote__meta {
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid var(--black-10);
    display: grid;
    gap: 12px;
}

.ll-quote__brand {
    display: flex;
    align-items: center;
}

    .ll-quote__brand img {
        height: 100px;
        width: auto;
        max-width: 150px;
        object-fit: contain;
        display: block;
        opacity: .92;
    }

.ll-quote.is-big .ll-quote__brand img {
    height: 200px;
    max-width: 280px;
}

.ll-quote__org {
    color: var(--muted);
    font-weight: 800;
    font-size: .95rem;
    text-align: right;
    max-width: 26ch;
}

/* =========================================================
   Sektion 3 Trustbar
   ========================================================= */

.ll-trustbar {
    margin-top: 16px;
    background: linear-gradient(180deg, var(--surface) 0%, var(--panel-blue) 100%);
    border: 1px solid var(--brand-18);
    border-radius: var(--radius-md);
    padding: 14px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    align-items: center;
    margin: clamp(18px, 2.6vw, 32px);
}

.ll-trustbar__top {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 14px;
    align-items: center;
}

.ll-trustbar__badge {
    width: 62px;
    height: 62px;
    border-radius: var(--radius);
    background: var(--brand);
    color: var(--surface);
    font-weight: 900;
    font-size: 22px;
    display: grid;
    place-items: center;
    box-shadow: var(--shadow-brand);
    border: 1px solid var(--brand-25);
}

.ll-trustbar__title {
    font-weight: 900;
    color: var(--ink);
}

.ll-trustbar__sub {
    color: var(--muted);
    margin-top: 6px;
    max-width: 90ch;
}

.ll-trustbar__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

/* =========================================================
   Sektion 4 Videos
   ========================================================= */

.video-hub {
    max-width: 1320px;
    margin: 0 auto;
}

.video-hub__head {
    text-align: center;
    margin-bottom: 28px;
}

.video-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.video-card {
    overflow: hidden;
    border-radius: var(--radius-card);
    background: var(--surface);
    border: 1px solid var(--brand-16);
    box-shadow: var(--shadow);
    cursor: pointer;
    transition: transform .22s ease, box-shadow .22s ease;
}

    .video-card:hover {
        transform: translateY(-4px);
        box-shadow: var(--shadow-strong);
    }

.video-card__thumb {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--soft-blue);
}

    .video-card__thumb img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
    }

.video-card__play {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(var(--surface-rgb), .9);
    color: var(--brand);
    font-size: 28px;
    box-shadow: 0 14px 26px var(--black-08);
}

.video-card__meta {
    padding: 22px;
}

.video-card__title {
    color: var(--ink);
    font-weight: 900;
    font-size: 1.12rem;
    line-height: 1.25;
}

.video-card__desc {
    color: var(--muted);
    line-height: 1.55;
    margin-top: 10px;
}

/* =========================================================
   Sektion 5 Leistungen
   ========================================================= */

.ll-services-modern {
    padding: clamp(18px, 2.6vw, 32px);
}

    .ll-services-modern .ll-home-h2 {
        margin: 0 0 10px;
        font-size: clamp(2rem, 4.2vw, 3.4rem);
        line-height: 1.04;
        letter-spacing: -.05em;
        text-align: left;
    }

.ll-stepbar {
    margin-top: 25px;
    background: var(--gradient-card);
    border: 1px solid var(--brand-18);
    border-radius: 16px;
    padding: 10px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.ll-stepbar__item {
    background: var(--surface);
    border: 1px solid var(--brand-14);
    border-radius: var(--radius-sm);
    padding: 10px;
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 10px;
    align-items: center;
}

.ll-stepbar__num {
    width: 42px;
    height: 42px;
    border-radius: var(--radius-sm);
    display: grid;
    place-items: center;
    background: var(--brand-10);
    border: 1px solid var(--brand-22);
    color: var(--brand);
    font-weight: 900;
}

.ll-stepbar__title {
    font-weight: 900;
    color: var(--ink);
    line-height: 1.15;
}

.ll-stepbar__text {
    color: var(--muted);
    font-size: .92rem;
    margin-top: 2px;
}

.ll-portfolio-grid {
    margin-top: 16px;
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, 1fr);
}

.ll-portfolio-tile {
    background: var(--surface);
    border: 1px solid var(--brand-14);
    border-radius: var(--radius);
    box-shadow: 0 14px 34px rgba(2, 37, 84, .06);
    padding: 18px;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

    .ll-portfolio-tile:hover {
        transform: translateY(-2px);
        box-shadow: 0 22px 54px rgba(2, 37, 84, .10);
        border-color: var(--brand-22);
    }

.ll-portfolio-title {
    font-weight: 900;
    color: var(--brand);
    font-size: 1.15rem;
}

.ll-portfolio-desc {
    margin: 8px auto 0;
    color: var(--text-80);
    line-height: 1.55;
    font-size: .96rem;
    max-width: 46ch;
}

.ll-portfolio-arrow {
    margin-top: 12px;
    color: var(--ink);
    font-weight: 900;
    font-size: 18px;
    opacity: .85;
}

/* =========================================================
   Sektion 6 bis 8 Produktmodule
   Hosting, Tesseron, ProService Desk, Trust Center
   ========================================================= */

.ll-hosting-panel {
    padding: clamp(18px, 2.6vw, 34px) 0;
}

.ll-hosting-topbar {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    border-radius: var(--radius);
    border: 1px solid var(--brand-20);
    background: rgba(var(--surface-rgb), .72);
    box-shadow: 0 14px 34px rgba(2, 37, 84, .06);
    margin-bottom: 14px;
}

.ll-hosting-topbar__icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    border-radius: var(--radius-pill);
    display: grid;
    place-items: center;
    background: var(--surface);
    border: 2px solid var(--brand);
    color: var(--brand);
    font-weight: 900;
    font-size: 20px;
}

.ll-hosting-topbar__text {
    font-weight: 900;
    color: var(--brand);
    font-size: clamp(1.05rem, 1.2vw, 1.25rem);
}

.ll-hosting-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: 1fr 1fr 1fr 1.65fr;
    align-items: stretch;
}

.ll-hosting-card,
.ll-hosting-product {
    background: var(--surface);
    border: 1px solid var(--brand-16);
    box-shadow: var(--shadow);
    display: grid;
    align-content: start;
}

.ll-hosting-card {
    border-radius: var(--radius);
    padding: 16px;
    gap: 10px;
}


.ll-final-product-link__image, .ll-final-product-link__content, .ll-final-benefit-card, .ll-final-exchange-card, .ll-values-feature-card, .ll-stepbar__item, .ll-trustbar, .ll-quote, .ll-complex-statement, .ll-complex-visual, .ll-hero-modern__partner, .ll-kpi, .ll-hero-modern__mini, .ll-hosting-topbar, .ll-hosting-product, .ll-hosting-card {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

    .ll-final-product-link__content:hover,
    .ll-final-product-link__image:hover,
    .ll-final-benefit-card:hover,
    .ll-final-exchange-card:hover,
    .ll-values-feature-card:hover,
    .ll-stepbar__item:hover,
    .ll-trustbar:hover,
    .ll-quote:hover,
    .ll-complex-statement:hover,
    .ll-complex-visual:hover,
    .ll-hero-modern__partner:hover,
    .ll-kpi:hover,
    .ll-hero-modern__mini:hover,
    .ll-hosting-topbar:hover,
    .ll-hosting-product:hover,
    .ll-hosting-card:hover {
        cursor: default;
        transform: translateY(-5px);
        border-color: var(--brand-34);
        box-shadow: var(--shadow-card-hover);
        background: radial-gradient(circle at 88% 12%, var(--brand-08), transparent 30%), var(--surface);
    }

    .ll-hosting-product .ll-hosting-icn,
    .ll-hosting-card .ll-hosting-icn {
        transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease;
    }

    .ll-hosting-product:hover .ll-hosting-icn,
    .ll-hosting-card:hover .ll-hosting-icn {
        transform: scale(1.06);
        background: var(--brand-10);
        border-color: var(--brand-34);
        box-shadow: 0 10px 24px var(--brand-14);
    }

.ll-hosting-product__title:hover,
.ll-hosting-card__title {
    transition: color .22s ease;
}

.ll-hosting-product:hover .ll-hosting-product__title,
.ll-hosting-card:hover .ll-hosting-card__title {
    color: var(--brand);
}

.ll-hosting-card--wide {
    padding: 18px;
    grid-column: 1 / span 2;
}

    .ll-hosting-card--wide + .ll-hosting-card--wide {
        grid-column: 3;
    }

    .ll-hosting-product {
        grid-column: 4;
        grid-row: 1 / span 2;
        border-radius: var(--radius-card);
        padding: 20px;
        gap: 10px;
        overflow: hidden;
        position: relative;
    }

    .ll-hosting-icn {
        width: 54px;
        height: 54px;
        border-radius: var(--radius-pill);
        display: grid;
        place-items: center;
        background: var(--brand-06);
        border: 1px solid var(--brand-22);
        color: var(--brand);
        font-weight: 900;
    }

    .ll-hosting-icn-center {
        margin: 0 auto 22px;
    }

    .ll-hosting-icn--big {
        width: 58px;
        height: 58px;
    }

    .ll-hosting-card__title {
        font-weight: 900;
        color: var(--ink);
        line-height: 1.15;
        font-size: 1.05rem;
    }

    .ll-hosting-card__desc {
        color: var(--text-82);
        line-height: 1.55;
        font-size: .92rem;
        max-width: 52ch;
    }

    .ll-hosting-product__title {
        font-weight: 900;
        color: var(--ink);
        font-size: clamp(1.6rem, 2.1vw, 2.2rem);
        line-height: 1.05;
        letter-spacing: -.03em;
        margin-top: 4px;
    }

    .ll-hosting-product__desc {
        color: var(--text-82);
        line-height: 1.55;
        font-size: .95rem;
        max-width: 60ch;
    }

    .ll-hosting-badges {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin-top: 8px;
    }

    .ll-hosting-product__art {
        margin-top: 10px;
        border-radius: 16px;
        border: 1px solid var(--brand-14);
        background: var(--brand-04);
        min-height: 180px;
        display: grid;
        place-items: center;
        overflow: hidden;
    }

        .ll-hosting-product__art img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: contain;
        }

    .ll-hosting-ctas {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        justify-content: center;
        margin-top: 18px;
    }
    /* =========================================================
   Sektion 9 Branchen
   ========================================================= */

    .ll-industry-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
    }

    .ll-industry-card {
        overflow: hidden;
        border: 1px solid var(--brand-16);
        border-radius: var(--radius);
        background: rgba(var(--surface-rgb), .88);
        box-shadow: var(--shadow-card);
        transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

        .ll-industry-card:hover {
            transform: translateY(-4px);
            border-color: var(--brand-35);
            box-shadow: var(--shadow-card-hover);
        }

    .ll-industry-card--highlight {
        border-color: var(--brand-45);
        box-shadow: 0 24px 58px rgba(var(--brand-rgb), .13);
    }

    .ll-industry-card__image {
        height: 230px;
        overflow: hidden;
        background: var(--soft-blue);
    }

        .ll-industry-card__image img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
        }

    .ll-industry-card__body {
        padding: 28px 28px 30px;
    }

    .ll-industry-card__title {
        color: var(--heading-dark);
        font-size: 1.45rem;
        line-height: 1.2;
        font-weight: 800;
        margin-bottom: 14px;
    }

        .ll-industry-card__title::after {
            content: "";
            display: block;
            width: 54px;
            height: 3px;
            margin-top: 16px;
            border-radius: var(--radius-pill);
            background: var(--brand);
        }

    .ll-industry-card__desc {
        color: var(--text-78);
        font-size: .98rem;
        line-height: 1.62;
    }

    .ll-industry-statement {
        margin-top: 28px;
    }
    /* =========================================================
   Sektion 10 Werte
   ========================================================= */

    .ll-values-feature-grid {
        display: grid;
        grid-template-columns: 1.25fr .85fr;
        gap: 24px;
        margin-bottom: 28px;
    }

    .ll-values-feature-card {
        position: relative;
        overflow: hidden;
        min-height: 360px;
        border-radius: var(--radius-lg);
        background: var(--surface);
        border: 1px solid var(--brand-16);
        box-shadow: 0 22px 55px rgba(2, 37, 84, .10);
    }

    .ll-values-feature-card--large {
        min-height: 420px;
    }

    .ll-values-feature-card__image {
        position: absolute;
        inset: 0;
    }

        .ll-values-feature-card__image img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
        }

        .ll-values-feature-card__image::after {
            content: "";
            position: absolute;
            inset: 0;
            background: var(--gradient-feature-overlay);
        }

    .ll-values-feature-card__content {
        position: relative;
        z-index: 2;
        max-width: 520px;
        padding: 42px;
        color: var(--surface);
    }

    .ll-values-feature-card__kicker {
        color: var(--values-blue-light);
        font-size: .88rem;
        font-weight: 800;
        letter-spacing: .12em;
        text-transform: uppercase;
        margin-bottom: 18px;
    }

    .ll-values-feature-card__title {
        color: var(--surface);
        font-size: 2.15rem;
        line-height: 1.08;
        font-weight: 850;
        letter-spacing: -.03em;
        margin-bottom: 16px;
    }

    .ll-values-feature-card__desc {
        max-width: 36ch;
        font-size: 1.05rem;
        line-height: 1.55;
        color: rgba(var(--surface-rgb), .88);
    }

    .ll-values-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
    }

        .ll-values-grid .ll-value-card:nth-last-child(2) {
            grid-column: 1 / 2;
        }

        .ll-values-grid .ll-value-card:last-child {
            grid-column: 2 / 3;
        }

    @media (min-width: 701px) {

        .ll-values-grid {
            grid-template-columns: repeat(6, 1fr);
        }

            .ll-values-grid .ll-value-card {
                grid-column: span 2;
            }

                .ll-values-grid .ll-value-card:nth-last-child(2) {
                    grid-column: 2 / span 2;
                }

                .ll-values-grid .ll-value-card:last-child {
                    grid-column: 4 / span 2;
                }
    }

    @media (max-width: 700px) {

        .ll-values-grid {
            grid-template-columns: 1fr;
        }

            .ll-values-grid .ll-value-card,
            .ll-values-grid .ll-value-card:nth-last-child(2),
            .ll-values-grid .ll-value-card:last-child {
                grid-column: auto;
            }
    }

    .ll-value-card {
        overflow: hidden;
        border-radius: var(--radius-card);
        background: rgba(var(--surface-rgb), .92);
        border: 1px solid var(--brand-16);
        box-shadow: var(--shadow-card);
        transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

.ll-value-card:hover {
    transform: translateY(-4px);
    border-color: var(--brand-34);
    box-shadow: var(--shadow-card-hover);
}

    .ll-value-card:hover .ll-value-card__icon {
        color: #fff;
        background: var(--brand);                
    }


    .ll-value-card__image {
        height: 190px;
        overflow: hidden;
        background: var(--soft-blue);
    }

        .ll-value-card__image img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
        }

    .ll-value-card__body {
        position: relative;
        padding: 30px 28px 32px;
    }

    .ll-value-card__icon {
        width: 54px;
        height: 54px;
        margin-top: -58px;
        margin-bottom: 20px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--surface);
        border: 1px solid var(--brand-18);
        color: var(--brand);
        font-size: 1.35rem;
        font-weight: 800;
        box-shadow: 0 12px 28px rgba(2, 37, 84, .12);
    }

    .ll-value-card__title {
        color: var(--heading-dark);
        font-size: 1.55rem;
        line-height: 1.15;
        font-weight: 850;
        margin-bottom: 8px;
    }

    .ll-value-card__subtitle {
        color: var(--brand);
        font-size: .95rem;
        line-height: 1.35;
        font-weight: 750;
        margin-bottom: 18px;
    }

        .ll-value-card__subtitle::after {
            content: "";
            display: block;
            width: 54px;
            height: 3px;
            margin-top: 16px;
            border-radius: var(--radius-pill);
            background: var(--brand);
        }

    .ll-value-card__desc {
        color: var(--text-78);
        font-size: .98rem;
        line-height: 1.62;
    }

    .ll-values-statement {
        margin-top: 30px;
        min-height: 118px;
        padding: 28px 38px;
        display: flex;
        align-items: center;
        gap: 28px;
        border-radius: var(--radius-md);
        border: 1px solid var(--brand-22);
        background: radial-gradient(circle at 88% 30%, var(--brand-10), transparent 28%), var(--gradient-statement);
        box-shadow: var(--shadow-card);
    }

    .ll-values-statement__icon {
        width: 72px;
        height: 72px;
        flex: 0 0 72px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--surface);
        border: 1px solid var(--brand-18);
        color: var(--brand);
        font-size: 2rem;
        font-weight: 800;
    }

    .ll-values-statement__text {
        color: var(--heading-dark);
        font-size: 1.7rem;
        line-height: 1.25;
        font-weight: 850;
        letter-spacing: -.025em;
    }
    /* =========================================================
   Sektion 11 Abschluss und Kontakt
   ========================================================= */

    .ll-final-hero-ctas {
        display: flex;
        justify-content: center;
        gap: 22px;
        flex-wrap: wrap;
        margin-top: 34px;
    }

    .ll-final-panel {
        position: relative;
        padding: 46px 0 24px;
    }

    .ll-final-exchange-card {
        display: grid;
        grid-template-columns: 1.08fr .92fr;
        overflow: hidden;
        min-height: 390px;
        border-radius: 26px;
        border: 1px solid var(--brand-18);
        background: rgba(var(--surface-rgb), .94);
        box-shadow: 0 24px 60px rgba(2, 37, 84, .10);
    }

    .ll-final-exchange-card__image {
        min-height: 390px;
        overflow: hidden;
        background: var(--soft-blue);
    }

        .ll-final-exchange-card__image img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
        }

    .ll-final-exchange-card__content {
        position: relative;
        padding: 48px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        background: radial-gradient(circle at 92% 18%, var(--brand-10), transparent 28%), linear-gradient(135deg, rgba(244, 249, 255, .98), rgba(var(--surface-rgb), .96));
    }

        .ll-final-exchange-card__content::before {
            content: "";
            width: 64px;
            height: 4px;
            border-radius: var(--radius-pill);
            background: var(--brand);
            margin-bottom: 24px;
        }

    .ll-final-exchange-card__kicker {
        color: var(--brand);
        font-size: .88rem;
        font-weight: 850;
        letter-spacing: .12em;
        text-transform: uppercase;
        margin-bottom: 18px;
    }

    .ll-final-exchange-card__title {
        color: var(--heading-dark);
        font-size: 2.35rem;
        line-height: 1.06;
        font-weight: 850;
        letter-spacing: -.035em;
        margin-bottom: 18px;
    }

    .ll-final-exchange-card__desc {
        max-width: 42ch;
        color: var(--text-78);
        font-size: 1.05rem;
        line-height: 1.65;
    }

    .ll-final-benefit-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
        margin-top: 28px;
    }

    .ll-final-benefit-card {
        overflow: hidden;
        border-radius: var(--radius-card);
        border: 1px solid var(--brand-16);
        background: rgba(var(--surface-rgb), .92);
        box-shadow: var(--shadow-card);
    }

    .ll-final-benefit-card__image {
        height: 210px;
        overflow: hidden;
        background: var(--soft-blue);
    }

        .ll-final-benefit-card__image img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
        }

    .ll-final-benefit-card__body {
        padding: 28px 28px 30px;
    }

    .ll-final-benefit-card__title {
        color: var(--heading-dark);
        font-size: 1.45rem;
        line-height: 1.18;
        font-weight: 850;
        margin-bottom: 14px;
    }

        .ll-final-benefit-card__title::after {
            content: "";
            display: block;
            width: 54px;
            height: 3px;
            margin-top: 16px;
            border-radius: var(--radius-pill);
            background: var(--brand);
        }

    .ll-final-benefit-card__desc {
        color: var(--text-78);
        font-size: .98rem;
        line-height: 1.62;
    }

    .ll-final-product-row {
        margin-top: 32px;
        padding: 26px;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 18px;
        border-radius: var(--radius-lg);
        border: 1px solid var(--brand-18);
        background: radial-gradient(circle at 86% 12%, var(--brand-10), transparent 30%), var(--gradient-statement);
        box-shadow: var(--shadow-card);
    }

    .ll-final-product-link__image {
        overflow: hidden;
        background: var(--soft-blue);
        border-radius: var(--radius);
        border: 1px solid var(--brand-14);
        min-height: 150px;
    }

        .ll-final-product-link__image img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: contain;
        }

    .ll-final-product-link__content {
        padding: 16px 0 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
    }

    .ll-final-product-link__label {
        color: var(--brand);
        font-size: 1.08rem;
        line-height: 1.25;
        font-weight: 850;
    }

    .ll-final-product-link__arrow {
        width: 38px;
        height: 38px;
        flex: 0 0 38px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--brand-08);
        color: var(--brand);
        font-size: 1.35rem;
        font-weight: 700;
    }
    /* =========================================================
   Mobile und Tablet
   ========================================================= */

    @media (max-width: 1240px) {
        .ll-complex-intro {
            grid-template-columns: 1fr;
        }

        .ll-complex-copy {
            max-width: 920px;
        }

        .ll-complex-grid {
            grid-template-columns: repeat(2, 1fr);
        }

        .ll-complex-card--wide {
            grid-column: span 2;
        }
    }

    @media (max-width: 1100px) {
        .ll-trust-modern__inner,
        .ll-final-exchange-card,
        .ll-values-feature-grid {
            grid-template-columns: 1fr;
        }

        .ll-quote-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
            grid-template-rows: auto;
        }

        .ll-quote.is-big {
            grid-row: auto;
            grid-column: span 2;
        }

        .ll-industry-grid,
        .ll-final-benefit-grid,
        .video-grid {
            grid-template-columns: repeat(2, 1fr);
        }

        .ll-final-product-row {
            grid-template-columns: 1fr;
        }
    }

    @media (max-width: 979px) {
        .ll-hosting-grid {
            grid-template-columns: repeat(2, 1fr);
        }

        .ll-hosting-product {
            grid-column: 1 / -1;
            grid-row: auto;
        }

        .ll-hosting-card--wide,
        .ll-hosting-card--wide + .ll-hosting-card--wide {
            grid-column: 1 / -1;
        }

        .ll-stepbar {
            grid-template-columns: repeat(2, 1fr);
        }

        .ll-kpi-strip__inner {
            grid-template-columns: repeat(2, 1fr);
        }

        .ll-hero-modern__inner {
            grid-template-columns: 1fr;
        }

        .ll-hero-modern__float {
            left: 14px;
            right: 14px;
            width: auto;
        }
    }

    @media (max-width: 700px) {
        .ll-home-h1 {
            font-size: clamp(40px, 12vw, 58px);
        }

        .ll-home-h2 {
            font-size: clamp(32px, 10vw, 44px);
        }

        .subtext {
            font-size: 1rem;
        }

        .ll-hero-modern__partner {
            grid-template-columns: 1fr;
        }

            .ll-hero-modern__partner img {
                height: auto;
                aspect-ratio: 16 / 9;
            }

        .ll-kpi-strip__inner,
        .ll-complex-grid,
        .ll-quote-grid,
        .ll-industry-grid,
        .ll-values-grid,
        .ll-final-benefit-grid,
        .video-grid,
        .ll-stepbar,
        .ll-portfolio-grid,
        .ll-hosting-grid {
            grid-template-columns: 1fr;
        }

        .ll-complex-card--wide,
        .ll-quote.is-big {
            grid-column: auto;
        }

        .ll-complex-intro,
        .ll-complex-label,
        .ll-complex-grid,
        .ll-complex-statement {
            max-width: calc(100% - 32px);
        }

        .ll-complex-visual,
        .ll-complex-visual img {
            min-height: 300px;
        }

        .ll-complex-statement,
        .ll-values-statement {
            flex-direction: column;
            align-items: flex-start;
            padding: 28px;
        }

        .ll-complex-statement__text,
        .ll-values-statement__text {
            font-size: 1.35rem;
        }

        .ll-trust-modern__inner {
            gap: 28px;
        }

        .ll-quote {
            height: auto !important;
            min-height: 0 !important;
            padding: 24px 22px !important;
        }

        .ll-quote__mark {
            font-size: 48px;
            line-height: .75;
            margin-bottom: 8px;
        }

        .ll-quote__text,
        .ll-quote.is-big .ll-quote__text {
            font-size: 1.05rem;
            line-height: 1.45;
        }

        .ll-quote__meta {
            margin-top: 22px;
        }

        .ll-quote__brand img,
        .ll-quote.is-big .ll-quote__brand img {
            max-width: 130px !important;
            width: auto !important;
            height: auto !important;
        }

        .ll-quote__org {
            text-align: left;
        }

        .ll-trustbar {
            grid-template-columns: 1fr;
        }

        .ll-trustbar__tags {
            justify-content: flex-start;
        }

        .ll-hosting-topbar {
            align-items: flex-start;
        }

        .ll-hosting-topbar__icon {
            width: 46px;
            height: 46px;
            flex-basis: 46px;
        }

        .ll-values-feature-card,
        .ll-values-feature-card--large {
            min-height: 340px;
        }

        .ll-values-feature-card__content {
            padding: 30px;
        }

        .ll-values-feature-card__title {
            font-size: 1.8rem;
        }

        .ll-final-hero-ctas {
            flex-direction: column;
            align-items: stretch;
        }

        .ll-final-exchange-card__content {
            padding: 32px;
        }

        .ll-final-exchange-card__title {
            font-size: 1.85rem;
        }

        .ll-final-benefit-card__image {
            height: 200px;
        }

        .ll-final-product-row {
            padding: 18px;
        }
    }
    /* ========= PARTNER / LOGO-WALL ========= */

    #partners.logo-wall {
        padding: clamp(16px, 3vw, 36px);
        border: 1px solid var(--border);
        border-radius: 20px;
        background: var(--card-bg);
        box-shadow: 0 10px 30px var(--box-shadow), 0 1px 0 rgba(255,255,255,.6) inset;
    }

    .logo-wall-head {
        text-align: center;
        margin-bottom: clamp(14px, 2vw, 22px);
    }

        .logo-wall-head .headline {
            margin: 0 0 6px;
            line-height: 1.15;
        }

        .logo-wall-head .subtext {
            color: var(--muted);
            margin: 0;
        }
    /* Grid */
    .logo-wall-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
        gap: clamp(12px, 2vw, 20px);
        align-items: stretch;
    }
    /* Logo Card */
    .logo-item {
        display: flex;
        align-items: center;
        justify-content: center;
        height: clamp(80px, 10vw, 120px);
        padding: clamp(10px, 1.8vw, 16px);
        background: var(--card);
        border: 1px solid var(--border);
        border-radius: 16px;
        box-shadow: 0 4px 18px var(--box-shadow);
        transition: transform .18s ease, box-shadow .22s ease, background .22s ease;
        will-change: transform;
    }

        .logo-item:hover {
            transform: translateY(-2px);
            box-shadow: 0 10px 30px rgba(0,100,173,.16);
        }
        /* Logo Image */
        .logo-item img {
            display: block;
            max-width: 100%;
            max-height: clamp(26px, 3.2vw, 46px);
            object-fit: cover;
            opacity: .85;
            transition: filter .22s ease, opacity .22s ease, transform .22s ease;
            /* Optional: entfernt weiße Kastenränder bei PNGs
     mix-blend-mode: multiply; */
        }

        .logo-item:hover img {
            filter: grayscale(0) contrast(1) brightness(1);
            opacity: 1;
            transform: scale(1.02);
        }
        /* Size Modifiers (optional, falls einzelne Logos abweichen) */
        .logo-item.is-wide img {
            max-height: clamp(22px, 2.6vw, 40px);
        }

        .logo-item.is-tall img {
            max-height: clamp(34px, 3.8vw, 56px);
        }
    /* Enter Animations (dezent gestaffelt) */
    @keyframes logoFade {
        from {
            opacity: 0;
            transform: translateY(6px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .logo-item {
        opacity: 0;
        animation: logoFade .48s .02s both ease-out;
    }

        .logo-item:nth-child(2) {
            animation-delay: .08s;
        }

        .logo-item:nth-child(3) {
            animation-delay: .12s;
        }

        .logo-item:nth-child(4) {
            animation-delay: .16s;
        }

        .logo-item:nth-child(5) {
            animation-delay: .20s;
        }

        .logo-item:nth-child(6) {
            animation-delay: .24s;
        }
    /* Responsive Tweaks */
    @media (max-width: 980px) {
        .logo-wall-grid {
            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
        }
    }

    @media (max-width: 600px) {
        #partners.logo-wall {
            border-radius: 16px;
        }

        .logo-wall-grid {
            grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        }

        .logo-item {
            height: clamp(70px, 18vw, 100px);
            padding: 10px;
        }
    }
    /* Reduced Motion */
    @media (prefers-reduced-motion: reduce) {
        .logo-item,
        .logo-item img {
            transition: none !important;
        }

        .logo-item {
            animation: none !important;
            opacity: 1;
            transform: none;
        }
    }
    /*NAVBAR
---------------------------------------------------------*/
    /* ---------- Scope-Reset nur für die Navigation ---------- */
    nav[aria-label="Hauptnavigation"],
    nav[aria-label="Hauptnavigation"] * {
        all: revert;
        box-sizing: border-box !important;
    }
    /* ---------- Container ---------- */
    nav[aria-label="Hauptnavigation"] {
        position: sticky !important;
        top: 0 !important;
        z-index: 999 !important;
        color: var(--text) !important;
    }

        nav[aria-label="Hauptnavigation"] > ul {
            list-style: none !important;
            margin: 0 auto !important;
            padding: 12px 16px !important;
            gap: 10px !important;
            flex-wrap: wrap !important;
            justify-content: flex-start !important;
            direction: ltr !important;
        }
            /* ---------- Top-Level ---------- */
            nav[aria-label="Hauptnavigation"] > ul > li {
                position: relative !important;
            }

                nav[aria-label="Hauptnavigation"] > ul > li > a {
                    display: block !important;
                    text-decoration: none !important;
                    color: var(--text) !important;
                    padding: 12px 14px !important;
                    border-radius: 12px !important;
                    outline: none !important;
                }

        nav[aria-label="Hauptnavigation"] a,
        nav[aria-label="Hauptnavigation"] a:focus,
        nav[aria-label="Hauptnavigation"] a:focus-visible {
            outline: none !important; /* Outlines global in der Nav aus */
        }

        nav[aria-label="Hauptnavigation"] > ul > li > a:hover,
        nav[aria-label="Hauptnavigation"] > ul > li > a:focus-visible {
            color: #fff !important;
            background: var(--brand) !important;
        }
        /* ---------- Submenu: linksbündig & ohne Hover-Gap ---------- */
        nav[aria-label="Hauptnavigation"] > ul > li > ul {
            list-style: none !important;
            margin: 0 !important;
            padding: 14px 8px 8px !important;
            position: absolute !important;
            top: calc(100%) !important;
            left: 0 !important;
            right: auto !important;
            inline-size: fit-content; /* passt sich dem Inhalt an */
            min-inline-size: 240px; /* lesbare Mindestbreite */
            max-inline-size: min(640px, 92vw); /* nie über Bildschirmbreite */
            max-block-size: min(70vh, 720px);
            overflow: auto;
            display: none !important;
            background: var(--surface) !important;
            border-radius: 12px !important;
            box-shadow: 0 10px 28px rgba(0,0,0,.10) !important;
            z-index: 60 !important;
            white-space: nowrap; /* eine Zeile, wirkt kompakt */
            overflow: hidden; /* nichts läuft raus */
            text-overflow: ellipsis;
            text-align: left !important;
            direction: ltr !important;
            grid-auto-flow: row !important;
            justify-items: start !important;
            align-items: start !important;
        }

            nav[aria-label="Hauptnavigation"] > ul > li:hover > ul,
            nav[aria-label="Hauptnavigation"] > ul > li:focus-within > ul,
            nav[aria-label="Hauptnavigation"] > ul > li > ul:hover {
                display: grid !important;
                gap: 6px !important;
                grid-template-columns: 1fr !important;
            }

            nav[aria-label="Hauptnavigation"] > ul > li > ul > li {
                text-align: left !important;
                width: 100%;
            }

                nav[aria-label="Hauptnavigation"] > ul > li > ul > li > a {
                    display: block !important;
                    text-decoration: none !important;
                    color: var(--text) !important;
                    background: #fff !important;
                    padding: 10px 12px !important;
                    border-radius: 10px !important;
                    text-align: left !important;
                    outline: none !important;
                }

                    nav[aria-label="Hauptnavigation"] > ul > li > ul > li > a:hover,
                    nav[aria-label="Hauptnavigation"] > ul > li > ul > li > a:focus-visible {
                        color: #fff !important;
                        background: var(--brand) !important;
                    }
    /* ---------- Responsive ---------- */
    @media (max-width: 900px) {
        nav[aria-label="Hauptnavigation"] > ul {
            flex-direction: column !important;
            align-items: stretch !important;
            gap: 8px !important;
        }

            nav[aria-label="Hauptnavigation"] > ul > li > a {
                width: 100% !important;
            }

            nav[aria-label="Hauptnavigation"] > ul > li > ul {
                position: static !important;
                top: auto !important;
                left: auto !important;
                min-width: unset !important;
                padding: 6px !important;
                display: none !important;
                box-shadow: none !important;
                background: #f9fbfe !important;
            }

            nav[aria-label="Hauptnavigation"] > ul > li:focus-within > ul {
                display: grid !important;
                gap: 6px !important;
            }
    }
    /* ---------- Breite Submenüs auf großen Screens ---------- */
    @media (min-width: 1100px) {
        nav[aria-label="Hauptnavigation"] > ul > li > ul {
            grid-template-columns: 1fr 1fr !important;
        }
    }
    /* Service Card ---------------------------------------------------------*/

    .service-comparison {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 2rem;
        margin: 3rem auto;
        max-width: 1100px;
    }

    .service-card {
        flex: 1 1 400px;
        padding: 2rem;
        border-radius: 20px;
        background: #ffffff;
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
        transition: transform 0.3s ease, box-shadow 0.3s ease;
    }

        .service-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
        }

        .service-card h3 {
            font-size: 1.6rem;
            font-weight: 500;
            margin-bottom: 0.3rem;
        }

        .service-card .subtitle {
            font-size: 1rem;
            color: #64748b;
            font-weight: 500;
            margin-bottom: 1rem;
        }

        .service-card .description {
            font-size: 1rem;
            line-height: 1.6;
            color: #334155;
            margin-bottom: 1.5rem;
        }

        .service-card ul {
            list-style: none;
            padding: 0 !important;
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
        }

            .service-card ul li {
                background: #f1f5f9;
                border-radius: 9999px;
                padding: 0.4rem 1rem;
                font-size: 0.9rem;
                font-weight: 500;
                color: #0f172a;
                cursor: default;
            }

                .service-card ul li:hover {
                    background: #0064ad !important;
                    color: #fff !important;
                }

                .service-card ul li:after {
                    content: none !important;
                }

        .service-card.pro {
            background: linear-gradient(145deg, #ffffff, #f6faff);
            border-top: 5px solid #0ea5e9;
        }

        .service-card.expert {
            background: linear-gradient(145deg, #ffffff, #f3f8ff);
            border-top: 5px solid #0284c7;
        }
    /* Customer Success */



    .customer-stories {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 2rem;
        max-width: 1100px;
        margin: 0rem auto;
    }

    .story-card {
        flex: 1 1 480px;
        background: #f9fafb;
        border-radius: 18px;
        padding: 2rem;
        box-shadow: 0 6px 14px rgba(15, 23, 42, 0.05);
        transition: all 0.3s ease;
        position: relative;
        overflow: hidden;
    }

        .story-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 10px 26px rgba(15, 23, 42, 0.08);
        }

    .story-header {
        margin-bottom: 1rem;
    }

    .story-card h4 {
        font-size: 1.25rem;
        font-weight: 500;
        color: #0f172a;
        margin: 0;
    }

    .story-card .product {
        font-size: 0.9rem;
        color: #475569;
        font-weight: 500;
        margin-top: 0.3rem;
    }

    .story-text {
        font-size: 1rem;
        line-height: 1.6;
        color: #334155;
        margin: 0;
    }

    .story-card::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 6px;
        height: 100%;
        background: linear-gradient(to bottom, #38bdf8, #0ea5e9);
        opacity: 0;
        transition: opacity 0.3s ease;
    }

    .story-card:hover::before {
        opacity: 1;
    }
    /* ========== SECTION WRAPPER ========== */
    .leaders {
        background: var(--card-bg);
        border: 1px solid var(--border);
        border-radius: clamp(18px, 2vw, 24px);
        padding: clamp(18px, 3vw, 36px);
        box-shadow: var(--shadow);
    }

    .leaders-title {
        font-size: clamp(20px, 3.2vw, 28px);
        line-height: 1.15;
        color: var(--ink);
        font-weight: 800;
    }

    .leaders-sub {
        color: var(--muted);
        font-size: clamp(14px, 1.6vw, 16px);
    }
    /* ========== GRID (3-UP DESKTOP) ========== */
    .leaders-grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: clamp(14px, 2vw, 24px);
        align-items: stretch;
    }
    /* ========== CARD ========== */
    .leader-card {
        grid-column: span 4; /* 3 Karten pro Reihe */
        display: flex;
        flex-direction: column;
        height: 100%;
        background: #fff;
        border: 1px solid var(--border);
        border-radius: var(--radius);
        overflow: hidden;
        box-shadow: 0 6px 16px rgba(15,23,42,.06);
        transition: transform .18s ease, box-shadow .22s ease, border-color .22s ease;
    }

        .leader-card:hover {
            transform: translateY(-3px);
            box-shadow: 0 16px 36px rgba(0,100,173,.18);
            border-color: rgba(0,100,173,.28);
        }
    /* ========== MEDIA (Bild oben) ========== */
    .leader-media {
        position: relative;
        background: #e9f5ff;
        aspect-ratio: 4 / 3; /* bei Portraits ggf. 1/1 setzen */
        overflow: hidden;
        border-bottom: 1px solid var(--border);
    }

        .leader-media img {
            width: 100%;
            height: 100%;
            object-fit: scale-down;
            transform: scale(1.02);
            transition: transform .35s ease;
        }

    .leader-card:hover .leader-media img {
        transform: scale(1.06)
    }
    /* Optionaler sanfter Glow */
    .leader-media::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: radial-gradient(60% 50% at 40% 20%, rgba(0,100,173,.18), transparent 65%);
        mix-blend-mode: soft-light;
        opacity: .6;
    }


    .video-frame {
        position: relative;
        width: 100%;
        aspect-ratio: 16/9;
        background: #000;
        border-radius: 20px;
        overflow: hidden;
        box-shadow: var(--shadow);
    }

        .video-frame iframe {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            border: 0;
        }
    /* ---------- HERO ---------- */
    .video-hero {
        position: relative;
        background: linear-gradient(180deg,#f6fbff 0%, #ffffff 55%, #f9fbfd 100%);
        border: 1px solid var(--border);
        border-radius: 28px;
        overflow: hidden;
        box-shadow: var(--shadow);
        cursor: pointer;
    }

    .video-hero__thumb {
        position: relative;
        width: 100%;
        aspect-ratio: 16/9;
        overflow: hidden;
        background: #e9f5ff;
    }

        .video-hero__thumb img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transform: scale(1.015);
            transition: transform .35s ease;
        }

    .video-hero__overlay {
        position: absolute;
        inset: 0;
        display: grid;
        align-content: end;
        gap: 10px;
        padding: clamp(16px, 4vw, 28px);
        background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.45) 100%);
        color: #fff;
    }

    .video-hero__title {
        font-size: clamp(18px, 2.2vw, 28px);
        font-weight: 800;
        line-height: 1.2;
        text-shadow: 0 2px 14px rgba(0,0,0,.25);
    }

    .video-hero__play {
        place-self: start;
        display: inline-grid;
        place-items: center;
        width: 64px;
        height: 64px;
        border-radius: 999px;
        background: #fff;
        color: var(--brand);
        font-weight: 900;
        box-shadow: 0 10px 24px rgba(0,0,0,.25), 0 0 0 6px rgba(255,255,255,.2) inset;
        transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
        user-select: none;
    }

    .video-hero:hover .video-hero__thumb img {
        transform: scale(1.03)
    }

    .video-hero:hover .video-hero__play {
        transform: translateY(-1px);
        box-shadow: 0 14px 28px rgba(0,0,0,.3)
    }
    /* Keyboard focus */
    .video-hero:focus-within,
    .video-hero:focus {
        outline: 2px solid var(--brand);
        outline-offset: 3px;
    }
    /* ---------- HUB / GRID ---------- */
    .video-hub {
        background: linear-gradient(180deg,#ffffff 0%, #f7fbff 100%);
        border: 1px solid var(--border);
        border-radius: 24px;
        padding: clamp(16px, 2.2vw, 28px);
        box-shadow: var(--shadow);
    }

    .video-hub__head {
        display: grid;
        gap: 8px;
        margin-bottom: clamp(12px, 2vw, 18px);
    }

    .video-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: clamp(14px, 2vw, 20px);
    }

    .video-hero .prod-badge {
        max-width: 75px;
    }

    @media (min-width:640px) {
        .video-grid {
            grid-template-columns: repeat(2,1fr)
        }
    }

    @media (min-width:1024px) {
        .video-grid {
            grid-template-columns: repeat(3,1fr)
        }
    }

    .video-card {
        background: var(--card);
        border: 1px solid var(--border);
        border-radius: 18px;
        overflow: hidden;
        cursor: pointer;
        transition: transform .18s ease, box-shadow .22s ease, border-color .22s ease;
        box-shadow: 0 1px 0 rgba(255,255,255,.6) inset;
    }

        .video-card:hover {
            transform: translateY(-2px);
            box-shadow: 0 18px 40px rgba(0,100,173,.15);
            border-color: rgba(0,100,173,.28);
        }

    .video-card__thumb {
        position: relative;
        width: 100%;
        aspect-ratio: 16/9;
        overflow: hidden;
        background: #e9f5ff;
    }

        .video-card__thumb img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transform: scale(1.01);
            transition: transform .35s ease, filter .35s ease;
        }

    .video-card:hover .video-card__thumb img {
        transform: scale(1.04)
    }

    .video-card__play {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%);
        display: grid;
        place-items: center;
        width: 56px;
        height: 56px;
        border-radius: 999px;
        background: #fff;
        color: var(--brand);
        font-weight: 900;
        box-shadow: 0 12px 30px rgba(0,0,0,.28), 0 0 0 5px rgba(255,255,255,.18) inset;
        transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
    }

    .video-card:hover .video-card__play {
        transform: translate(-50%,-52%);
        box-shadow: 0 16px 36px rgba(0,0,0,.32)
    }

    .video-card__meta {
        padding: 14px 14px 16px;
        display: grid;
        gap: 4px;
    }

    .video-card__title {
        font-weight: 800;
        color: var(--ink);
        font-size: clamp(15px, 1.1vw, 18px);
        line-height: 1.25;
    }

    .video-card__desc {
        color: var(--muted);
        font-size: 14px;
        line-height: 1.45;
    }
    /* ---------- Accessibility & Motion ---------- */
    @media (prefers-reduced-motion: reduce) {
        .video-hero__thumb img,
        .video-card__thumb img,
        .video-card,
        .video-hero__play,
        .video-card__play {
            transition: none !important;
        }
    }
    /* ---------- Dark mode (optional) ---------- 
@media (prefers-color-scheme: dark){
  :root{
    --ink:#e6edf6; --muted:#94a3b8; --card:#0b1220;
    --border:rgba(0,100,173,.35);
    --shadow:0 10px 30px rgba(0,0,0,.35);
  }
  .video-hub, .video-hero, .video-card{ background: #0d1626 }
  .video-hero__overlay{ background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.6) 100%) }
  .video-card__play, .video-hero__play{ background:#0b1220; color:#fff; box-shadow: 0 12px 30px rgba(0,0,0,.6), 0 0 0 5px rgba(255,255,255,.06) inset }
}*/
    /* ========== leader BEREICH ========== */

    .leadership-spotlight {
        background: var(--bg);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        padding: clamp(20px,3vw,36px);
        box-shadow: 0 12px 40px rgba(0,100,173,.08);
    }

    .leaders-head {
        text-align: center;
        max-width: 980px;
        margin: 0 auto clamp(18px,2.4vw,28px);
    }

    .leaders-kicker {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 999px;
        background: var(--brand);
        color: #fff;
        font-weight: 500;
        font-size: 12px;
        box-shadow: 0 8px 22px rgba(0,100,173,.25);
    }

        .leaders-kicker::before {
            content: "●";
            font-size: 10px;
            opacity: .9
        }

    .leaders-title {
        margin: 10px 0 6px;
        line-height: 1.12;
        color: var(--ink);
        font-weight: 600;
        font-size: clamp(22px,3.4vw,36px);
    }

        .leaders-title span {
            color: var(--brand)
        }

    .leaders-sub {
        color: var(--muted);
        max-width: 64ch;
        margin: 0 auto
    }


    .leaders-grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: clamp(14px, 2.2vw, 22px);
        margin-top: clamp(16px,2.2vw,22px);
    }
    /* Mobile */
    @media (max-width: 640px) {
        .leaders-head {
            flex-direction: column;
            align-items: flex-start;
        }
    }

    .leader-info {
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: clamp(14px, 2.2vw, 22px);
    }

    .leader-name {
        font-weight: 600;
        color: var(--ink);
        font-size: clamp(16px, 2vw, 18px);
    }

    .leader-role {
        font-weight: 500;
        color: var(--brand);
        font-size: clamp(13px, 1.6vw, 14px);
        letter-spacing: .2px;
    }

    .leader-dept {
        color: var(--muted);
        font-size: 13px;
    }

    .leader-quote {
        margin-top: 6px;
        color: #1f2a44;
        font-size: clamp(13px, 1.6vw, 14px);
        line-height: 1.45;
    }
    /* Badge (falls gewünscht über der Rolle) */
    .leader-badge {
        align-self: flex-start;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 8px 10px;
        border-radius: 999px;
        background: var(--brand);
        color: #fff;
        font-weight: 700;
        font-size: 12px;
        box-shadow: 0 6px 20px rgba(0,100,173,.25);
    }

        .leader-badge::before {
            content: "●";
            font-size: 10px;
            opacity: .9
        }
    /* ========== RESPONSIVE ========== */
    /* 2 Spalten auf ~Tablet */
    @media (max-width: 1100px) {
        .leader-card {
            grid-column: span 6;
        }
    }
    /* 1 Spalte auf Mobil */
    @media (max-width: 640px) {
        .leader-card {
            grid-column: span 12;
        }

        .leader-media {
            aspect-ratio: 16 / 10;
        }
        /* etwas breiterer Look auf mobil */
        .leaders-head {
            flex-direction: column;
            align-items: flex-start;
        }
    }
    /*Product part */

    .expert-section {
        background: radial-gradient(circle at top right, #f8fbff 0%, #ffffff 80%);
        padding: 5rem 1.5rem;
        border-radius: 24px;
        box-shadow: 0 8px 32px rgba(15, 23, 42, 0.06);
        overflow: hidden;
        position: relative;
    }

        .expert-section::before {
            content: "";
            position: absolute;
            top: -40%;
            right: -40%;
            width: 80%;
            height: 80%;
            z-index: 0;
        }

    .expert-content {
        position: relative;
        z-index: 1;
        margin: 0 auto;
        text-align: center;
    }

    .headline {
        color: #0f172a;
    }

        .headline span {
            color: #0064ad;
        }

    .subtext {
        font-size: 1.15rem;
        color: #334155;
        margin: 0 auto 2rem;
        line-height: 1.6;
    }

    .feature-list {
        list-style: none;
        padding: 0 !important;
        margin: 1rem auto;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 0.5rem;
    }

        .feature-list li {
            background: #f1f5f9;
            border-radius: 12px;
            padding: 1rem 1.2rem;
            font-weight: 400;
            color: #0f172a;
            text-align: left;
            position: relative;
            transition: all 0.3s ease;
            cursor: default;
        }

            .feature-list li:after {
                content: none !important;
            }

            .feature-list li::before {
                content: "✓";
                color: #0284c7;
                font-weight: 700;
                margin-right: 8px;
            }

            .feature-list li:hover {
                background: #e0f2fe;
                transform: translateY(-3px);
            }
    /* Immutable-Flow Stepper */
    .immutable-flow {
        --ink: #0f172a;
        --muted: #475569;
        --brand: #0064ad;
        --line: #e5edf4;
        --tint: #f6faff;
        background: linear-gradient(180deg,#fff 0%, #f8fbff 100%);
        border: 1px solid var(--line);
        border-radius: 16px;
        box-shadow: 0 8px 28px rgba(2,6,23,.06);
        padding: clamp(1.25rem, 3vw, 2rem);
    }

    .immutable-headline {
        font-weight: 500;
        font-size: clamp(1.2rem, 2.2vw, 1.6rem);
        margin-bottom: .25rem;
        color: var(--brand);
    }

    .immutable-subtext {
        color: var(--muted);
        line-height: 1.6;
        margin-bottom: 1.25rem;
    }
    /* Rail + Steps */
    .immutable-rail {
        position: relative;
        display: grid;
        gap: 1rem;
    }
    /* Desktop: horizontale Timeline */
    @media (min-width: 860px) {
        .immutable-rail {
            grid-template-columns: repeat(4, 1fr);
            align-items: start;
        }

            .immutable-rail::before {
                content: "";
                position: absolute;
                left: 6.5%;
                right: 6.5%;
                top: 28px;
                height: 3px;
                background: linear-gradient(90deg, rgba(0,100,173,.18), rgba(0,100,173,.28));
                border-radius: 2px;
            }
    }

    .immutable-step {
        position: relative;
        display: grid;
        gap: .75rem;
    }

    .step-node {
        position: relative;
        width: 56px;
        height: 56px;
        border-radius: 14px;
        background: #fff;
        border: 1px solid var(--line);
        box-shadow: 0 10px 24px rgba(2,6,23,.06);
        display: grid;
        place-items: center;
    }

    .step-dot {
        position: absolute;
        inset: 8px;
        border-radius: 10px;
        background: radial-gradient(60% 60% at 40% 30%, rgba(0,100,173,.25), transparent 70%), linear-gradient(145deg,#ffffff, #f1f7ff);
    }

    .step-node::before, .step-node::after {
        content: "";
        position: absolute;
        inset: -6px;
        border-radius: 16px;
        border: 2px solid rgba(0,100,173,.18);
        animation: imm-pulse 4.6s ease-in-out infinite;
    }

    .step-node::after {
        inset: -12px;
        animation-delay: 1.4s;
        opacity: .7;
    }

    .step-num {
        position: relative;
        z-index: 1;
        font-weight: 500;
        color: var(--brand);
        font-size: 1.1rem;
    }
    /* Card */
    .step-card {
        background: #fff;
        border: 1px solid var(--line);
        border-radius: 14px;
        padding: .9rem 1rem;
        box-shadow: 0 8px 20px rgba(2,6,23,.06);
    }

    .step-title {
        font-weight: 500;
        margin-bottom: .25rem;
    }

    .step-body {
        color: var(--muted);
        line-height: 1.6;
    }
    /* Mobile: vertikale Timeline mit linker Rail */
    @media (max-width: 859px) {
        .immutable-rail {
            gap: 1.2rem;
        }

            .immutable-rail::before {
                content: "";
                position: absolute;
                left: 28px;
                top: 8px;
                bottom: 8px;
                width: 3px;
                background: linear-gradient(180deg, rgba(0,100,173,.18), rgba(0,100,173,.28));
                border-radius: 2px;
            }

        .immutable-step {
            grid-template-columns: 56px 1fr;
            align-items: start;
            column-gap: .9rem;
        }
    }

    @keyframes imm-pulse {
        0%,100% {
            transform: scale(1);
            box-shadow: 0 0 0 rgba(0,100,173,0);
        }

        50% {
            transform: scale(1.03);
            box-shadow: 0 0 24px rgba(0,100,173,.22);
        }
    }
    /* Trust Center */
    .trust-center {
        --tc-ink: #0f172a;
        --tc-muted: #475569;
        --tc-brand: #0064ad;
        --tc-bg: #ffffff;
        --tc-tint: #f5f8fc;
        --tc-line: #e5edf4;
        color: var(--tc-ink);
    }

    .trust-inner {
        max-width: 1100px;
        margin: 0 auto;
        display: grid;
        gap: clamp(1.5rem,2.5vw,2rem);
    }
    /* Hero Row */
    .trust-hero {
        display: grid;
        grid-template-columns: 0.8fr 1.2fr;
        gap: clamp(1rem,3vw,2rem);
        align-items: center;
        background: var(--tc-bg);
        border: 1px solid var(--tc-line);
        border-radius: 16px;
        box-shadow: 0 8px 28px rgba(2,6,23,.06);
        padding: clamp(1rem,3vw,1.75rem);
        position: relative;
        overflow: hidden;
    }

    .trust-shield {
        aspect-ratio: 1 / 1;
        width: min(220px, 32vw);
        border-radius: 24px;
        border: 1px solid var(--tc-line);
        background: radial-gradient(80% 80% at 30% 0%, rgba(0,100,173,.14), transparent 60%), linear-gradient(145deg,#ffffff 0%, #f4f9ff 100%);
        position: relative;
        box-shadow: inset 0 0 0 1px rgba(255,255,255,.6), 0 18px 40px rgba(0,0,0,.08);
        color: transparent;
    }

        .trust-shield::before, .trust-shield::after {
            content: "";
            position: absolute;
            inset: 10%;
            border-radius: 16px;
            border: 2px solid rgba(0,100,173,.22);
            animation: tc-pulse 4.2s ease-in-out infinite;
        }

        .trust-shield::after {
            inset: 20%;
            animation-delay: 1.6s;
            opacity: .7;
        }

    @keyframes tc-pulse {
        0%,100% {
            transform: scale(1);
            box-shadow: 0 0 0 rgba(0,100,173,0);
        }

        50% {
            transform: scale(1.03);
            box-shadow: 0 0 24px rgba(0,100,173,.25);
        }
    }

    .trust-text {
        display: grid;
        gap: .6rem;
    }

    .trust-title {
        font-weight: 500;
        line-height: 1.2;
        font-size: clamp(1.3rem,2.6vw,1.8rem);
    }

    .trust-sub {
        color: var(--tc-muted);
        line-height: 1.6;
    }
    /* KPI Badges */
    .trust-kpis {
        display: flex;
        gap: .75rem;
        flex-wrap: wrap;
        margin-top: .25rem;
    }

    .kpi {
        background: var(--tc-tint);
        border: 1px solid var(--tc-line);
        border-radius: 12px;
        padding: .6rem .8rem;
        display: flex;
        align-items: center;
        gap: .5rem;
    }

    .kpi-num {
        font-weight: 800;
        color: var(--tc-brand);
    }

    .kpi-label {
        color: var(--tc-muted);
        font-size: .9rem;
    }
    /* Cards */
    .trust-grid {
        display: grid;
        gap: 1rem;
        grid-template-columns: repeat(3, 1fr);
    }

        .trust-grid.trust-grid-2 {
            grid-template-columns: repeat(2, 1fr);
        }

    .trust-card {
        background: #fff;
        border: 1px solid var(--tc-line);
        border-radius: 14px;
        padding: 1rem;
        box-shadow: 0 6px 18px rgba(2,6,23,.06);
    }

    .trust-item {
        position: relative;
        padding-left: 1.3rem;
        color: var(--tc-ink);
        line-height: 1.6;
        margin: .4rem 0;
    }

        .trust-item::before {
            content: "";
            position: absolute;
            left: 0;
            top: .55rem;
            width: .55rem;
            height: .55rem;
            border-radius: 50%;
            background: var(--tc-brand);
            box-shadow: 0 0 0 4px rgba(0,100,173,.12);
        }
    /* Responsive */
    @media (max-width: 900px) {
        .trust-hero {
            grid-template-columns: 1fr;
        }

        .trust-shield {
            width: 160px;
            justify-self: center;
        }

        .trust-grid, .trust-grid.trust-grid-2 {
            grid-template-columns: 1fr;
        }
    }
    /*  FAQ */
    .faq-box {
        margin: 2rem auto;
        border-radius: 16px;
        background: linear-gradient(145deg, #ffffff, #f5f7fa);
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05);
        overflow: hidden;
        transition: all 0.3s ease;
    }

        .faq-box .faq-details {
            padding: 1.5rem 2rem;
            cursor: pointer;
            border-bottom: 1px solid rgba(0, 0, 0, 0.05);
        }

        .faq-box .faq-summary {
            font-weight: 500;
            font-size: 1.1rem;
            color: #1e293b;
            list-style: none;
            position: relative;
            transition: color 0.3s ease;
        }

            .faq-box .faq-summary::after {
                content: "＋";
                position: absolute;
                right: 0;
                font-size: 1.5rem;
                color: #0ea5e9;
                transition: transform 0.3s ease, color 0.3s ease;
            }

        .faq-box .faq-details[open] .faq-summary::after {
            transform: rotate(45deg);
            color: #0284c7;
        }

        .faq-box .faq-summary:hover {
            color: #0284c7;
        }

        .faq-box .faq-answer {
            margin-top: 1rem;
            line-height: 1.6;
            color: #475569;
            font-size: 1rem;
            animation: fadeIn 0.3s ease;
        }
        /* FAQ: Antworten standardmäßig verbergen */
        .faq-box .faq-answer {
            display: none;
        }
        /* FAQ: Antwort nur zeigen, wenn "open" am Item gesetzt ist */
        .faq-box .faq-details[open] .faq-answer {
            display: block;
        }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(-5px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
    /* jouney */
    /* =============== CLOUD JOURNEY / HOW-IT-WORKS =============== */


    .cloud-journey {
        position: relative;
        padding: clamp(2.5rem, 6vw, 5rem) 1.25rem;
        overflow: hidden;
        color: var(--ink);
        background: radial-gradient(900px 260px at 15% -10%, rgba(14,165,233,.10), transparent 60%), radial-gradient(700px 220px at 100% 0%, rgba(2,132,199,.08), transparent 60%), linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
        border-radius: 24px;
        box-shadow: 0 10px 34px rgba(2,6,23,.06);
    }

    .cj-inner {
        max-width: 1200px;
        margin: 0 auto;
    }
    /* Header */
    .cj-header {
        text-align: left;
        margin-bottom: clamp(1.8rem, 4vw, 2.6rem);
    }

    .prod-badge {
        display: inline-flex;
        align-items: center;
        gap: .4rem;
        padding: .14rem .3rem;
        border-radius: 999px;
        font-size: .72rem;
        font-weight: 500;
        letter-spacing: .02em;
        text-transform: uppercase;
        margin-bottom: 5px;
        color: #fff;
        background: #0064ad;
        border: 1px solid rgba(255,255,255,.18);
        box-shadow: 0 2px 6px rgba(0, 46, 83, .25);
    }
        /* kleiner Akzentpunkt links – subtil */
        .prod-badge::before {
            content: "";
            width: .42rem;
            height: .42rem;
            border-radius: 50%;
            background: rgba(255,255,255,.65);
        }
        /* Hover/Focus (ohne Farbwechsel) */
        .prod-badge:hover {
            transform: translateY(-1px);
            box-shadow: 0 4px 10px rgba(0, 46, 83, .28);
        }

        .prod-badge:focus-visible {
            outline: 2px solid rgba(255,255,255,.7);
            outline-offset: 2px;
        }

        .prod-badge.is-centered {
            display: block;
            width: max-content;
            margin: 0 auto;
        }

    .cj-title {
        margin: .6rem 0 .3rem 0;
        font-size: clamp(1.6rem, 3.2vw, 2.1rem);
        line-height: 1.15;
        font-weight: 500;
    }

    .cj-title-left {
        text-align: left;
    }

    .cj-sub {
        color: var(--muted);
        font-size: clamp(1rem, 1.5vw, 1.05rem);
        text-align: center;
    }
    /* Layout: Steps + Benefits */
    .cj-layout {
        display: grid;
        grid-template-columns: 1.3fr .9fr;
        gap: clamp(1.5rem, 3vw, 2.25rem);
        align-items: start;
    }

    .cj-layout-one-col {
        display: grid;
        grid-template-columns: 1.3fr;
        gap: clamp(1.5rem, 3vw, 2.25rem);
        align-items: start;
    }
    /* Steps Timeline */
    .cj-steps {
        position: relative;
        padding-left: 2.8rem; /* Platz für Nummern */
        counter-reset: stepnum;
    }

        .cj-steps::before {
            content: "";
            position: absolute;
            left: 1.45rem;
            top: .35rem;
            bottom: .35rem;
            width: 2px;
            background: #0064ad;
            border-radius: 2px;
        }

    .cj-step {
        position: relative;
        background: #fff;
        border: 1px solid var(--ring);
        border-radius: 16px;
        padding: 1rem 1rem 1rem 1.1rem;
        margin-bottom: .9rem;
        box-shadow: 0 8px 20px rgba(2,6,23,.05);
        transition: transform .25s ease, box-shadow .25s ease;
    }

        .cj-step:hover {
            transform: translateY(-3px);
            box-shadow: 0 14px 30px rgba(2,6,23,.08);
        }

        .cj-step::before {
            counter-increment: stepnum;
            content: counter(stepnum);
            position: absolute;
            left: -2.15rem;
            top: 50%;
            transform: translateY(-50%);
            width: 34px;
            height: 34px;
            line-height: 34px;
            text-align: center;
            border-radius: 50%;
            font-weight: 500;
            color: #fff;
            background: #0064ad;
            box-shadow: 0 6px 14px rgba(2,132,199,.35);
        }

    .cj-step-title {
        font-size: 1.05rem;
        font-weight: 500;
        margin-bottom: .25rem;
    }

    .cj-step-text {
        color: var(--muted);
        line-height: 1.65;
    }
    /* Benefits Grid (cards on the right) */
    .cj-benefits {
        display: grid;
        grid-template-columns: 1fr;
        gap: .9rem;
    }

    .cj-benefit {
        background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
        border: 1px solid var(--ring);
        border-radius: 16px;
        padding: 1rem 1.1rem 1.1rem 1.1rem;
        box-shadow: 0 8px 20px rgba(2,6,23,.05);
        position: relative;
        overflow: hidden;
        transition: transform .25s ease, box-shadow .25s ease;
    }

        .cj-benefit::after {
            content: "";
            position: absolute;
            inset: 0;
            pointer-events: none;
        }

        .cj-benefit:hover {
            transform: translateY(-3px);
            box-shadow: 0 14px 30px rgba(2,6,23,.08);
        }

    .cj-badge {
        display: inline-block;
        font-size: .75rem;
        font-weight: 500;
        color: #05507f;
        background: #e7f4ff;
        border: 1px solid rgba(2,132,199,.18);
        border-radius: 999px;
        padding: .28rem .6rem;
        margin-bottom: .5rem;
    }

    .cj-benefit-title {
        font-weight: 500;
        margin-bottom: .2rem;
    }

    .cj-benefit-text {
        color: var(--muted);
        line-height: 1.6;
    }
    /* Responsive */
    @media (max-width: 980px) {
        .cj-layout {
            grid-template-columns: 1fr;
        }

        .cj-benefits {
            grid-template-columns: 1fr 1fr;
        }
    }

    @media (max-width: 620px) {
        .cj-benefits {
            grid-template-columns: 1fr;
        }

        .cj-steps {
            padding-left: 2.3rem;
        }

            .cj-steps::before {
                left: 1.2rem;
            }

        .cj-step::before {
            left: -1.85rem;
        }
    }
    /* audience */
    /* Zielgruppen-Sektion (Persona Grid) – Headline/Subtext nutzen */
    .audiences {
        padding: 2.5rem 1rem;
    }

    .audiences__inner {
        max-width: 1100px;
        margin: 0 auto;
    }
    /* Grid */
    .audiences__grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 1rem;
        margin-top: 1rem;
    }

    .audiences__card {
        grid-column: span 12;
        position: relative;
        overflow: hidden;
        padding-top: 1.25rem; /* Platz fürs Icon */
    }

    @media (min-width: 640px) {
        .audiences__card {
            grid-column: span 6;
        }
    }

    @media (min-width: 1024px) {
        .audiences__card {
            grid-column: span 4;
        }
    }
    /* Mini-Icon (CSS-Only), farbtreu */
    .audiences__icon {
        --c: #0064ad;
        width: 36px;
        height: 36px;
        border-radius: 10px;
        background: radial-gradient(120% 120% at 20% 10%, rgba(14,165,233,.22), transparent 60%), var(--c);
        box-shadow: 0 6px 16px rgba(0,0,0,.06), inset 0 0 0 1px rgba(255,255,255,.25);
        position: absolute;
        top: 16px;
        right: 16px;
        transform: translateZ(0);
    }
    /* Titel + Text in Karten */
    .audiences__title {
        font-weight: 500;
        color: #0f172a;
        font-size: 1.05rem;
        margin-bottom: .2rem;
    }

    .audiences__text {
        color: #475569;
        margin-bottom: .6rem;
    }
    /* Bullets als Chips */
    .audiences__bullets {
        display: flex;
        flex-wrap: wrap;
        gap: .4rem;
    }

        .audiences__bullets > div {
            background: #f1f5f9;
            border-radius: 9999px;
            padding: .35rem .8rem;
            font-size: .9rem;
            color: #0f172a;
        }
    /* Hover-Effekt */
    .audiences__card::before {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(120% 50% at -10% -20%, rgba(14,165,233,.15), transparent 60%);
        opacity: 0;
        transition: opacity .35s ease;
        pointer-events: none;
    }

    .audiences__card::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 3px;
        background: linear-gradient(90deg, #0ea5e9 0%, #0284c7 60%, rgba(2,132,199,0) 100%);
        transform: translateX(-100%);
        transition: transform .45s ease;
    }

    .audiences__card:hover::before {
        opacity: 1;
    }

    .audiences__card:hover::after {
        transform: translateX(0);
    }

    @media (prefers-reduced-motion: reduce) {
        .audiences__card::before, .audiences__card::after {
            transition: none !important;
        }
    }
    /* Managed Content */
    .managed-section {
        background: #f8fafc;
        padding: 4rem 1.5rem;
    }

    .managed-content {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        max-width: 1100px;
        margin: 0 auto;
        gap: 3rem;
    }
    /* Textbereich */
    .text-col {
        flex: 1 1 500px;
    }

        .text-col h2 {
            font-size: 2rem;
            font-weight: 500;
            color: #0f172a;
            margin-bottom: 1rem;
        }

        .text-col .lead {
            font-size: 1.1rem;
            line-height: 1.7;
            color: #334155;
            margin-bottom: 2rem;
        }

    .cta-button {
        background: #0284c7;
        color: #fff;
        padding: 0.9rem 1.8rem;
        border-radius: 10px;
        font-weight: 500;
        text-decoration: none;
        transition: background 0.3s ease, transform 0.2s ease;
    }

        .cta-button:hover {
            background: #0369a1;
            transform: translateY(-2px);
            text-decoration: none;
        }
    /* Visueller Bereich */
    .visual-col {
        flex: 1 1 400px;
        display: grid;
        place-items: center;
    }
    /* Pulsierende Ringe */
    .pulse-ring {
        position: relative;
        width: 180px;
        height: 180px;
        border-radius: 50%;
        background: radial-gradient(circle at center, rgba(14,165,233,0.2) 0%, rgba(14,165,233,0.05) 70%);
        box-shadow: 0 0 20px rgba(14,165,233,0.3);
        animation: slowGlow 4s ease-in-out infinite;
        color: transparent;
    }

        .pulse-ring::before,
        .pulse-ring::after {
            content: "";
            position: absolute;
            border: 2px solid rgba(14, 165, 233, 0.5);
            border-radius: 50%;
            top: 50%;
            left: 50%;
            width: 100%;
            height: 100%;
            transform: translate(-50%, -50%) scale(1);
            opacity: 0;
            animation: waveSpread 3.5s infinite ease-out;
        }

        .pulse-ring::after {
            animation-delay: 1.75s;
        }
    /* Feine Keyframes */
    @keyframes waveSpread {
        0% {
            transform: translate(-50%, -50%) scale(1);
            opacity: 0.6;
        }

        60% {
            transform: translate(-50%, -50%) scale(1.8);
            opacity: 0.1;
        }

        100% {
            opacity: 0;
        }
    }

    @keyframes slowGlow {
        0%, 100% {
            box-shadow: 0 0 15px rgba(14,165,233,0.25), inset 0 0 15px rgba(14,165,233,0.15);
        }

        50% {
            box-shadow: 0 0 25px rgba(14,165,233,0.4), inset 0 0 25px rgba(14,165,233,0.25);
        }
    }
    /* Header */
    /* --- Base / Tokens --- */
    /* --- Hero Layout --- */
    .hero {
        color: var(--ink);
    }

    .hero__inner {
        max-width: 1200px;
        margin: 0 auto;
        display: grid;
        grid-template-columns: 1.1fr 0.9fr;
        gap: clamp(2rem, 4vw, 3rem);
        align-items: center;
    }

    .hero__text h1 {
        font-size: clamp(1.9rem, 3.2vw, 2.6rem);
        line-height: 1.15;
        font-weight: 700;
        margin: 0 0 .4rem 0;
    }

    .hero__text h2 {
        font-weight: 500;
        color: var(--brand);
        margin: 0 0 1.2rem 0;
        text-align: left;
        line-height: 1em;
    }

    .lead {
        font-size: clamp(1rem, 1.6vw, 1.15rem);
        color: #334155;
        line-height: 1.6;
        margin: 0 0 1.1rem 0;
    }

    .hero__text p {
        color: var(--muted);
        line-height: 1.7;
        margin: 0 0 1.1rem 0;
    }
    /* --- Media (Bild rechts) --- */
    .hero__media {
        display: grid;
        place-items: center;
    }

    .media-card {
        margin: 0;
        background: #fff;
        /*border: 1px solid var(--ring);*/
        border-radius: 18px;
        box-shadow: 0 10px 28px rgba(2,6,23,.08);
        position: relative;
    }

        .media-card::after { /* dezenter Akzentrahmen */
            content: "";
            position: absolute;
            inset: -8px;
            border-radius: 22px;
            background: radial-gradient(600px 220px at 20% -10%, rgba(14,165,233,.12), transparent 60%);
            z-index: -1;
        }

        .media-card img {
            display: block;
            width: min(100%, 600px);
            height: auto;
            border-radius: 12px;
        }
    /* --- Responsive --- */
    @media (max-width: 980px) {
        .hero__inner {
            grid-template-columns: 1fr;
            text-align: left;
        }

        .hero__media {
            order: -1;
        }
        /* Bild nach oben? -> sonst entfernen */
    }

    @media (max-width: 520px) {
        .hero {
            padding: 2.5rem 1rem;
        }

        .btn {
            width: 100%;
        }
    }
    /* Tabelle */
    .compare h2 {
        margin: 0 0 1rem 0;
    }

    .table-wrap {
        margin: 0 auto;
        background: var(--bg);
        border: 1px solid var(--line);
        border-radius: 14px;
        box-shadow: 0 8px 24px rgba(2,6,23,.06);
        overflow: hidden;
    }
    /* Desktop-Tabelle */
    .cmp-table {
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
    }

        .cmp-table caption {
            position: absolute;
            left: -9999px; /* nur für Screenreader */
        }

        .cmp-table thead th {
            text-align: left;
            background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
            color: var(--ink);
            padding: 1rem 1rem;
            font-weight: 500;
            border-bottom: 1px solid var(--line);
        }

        .cmp-table tbody th {
            text-align: left;
            font-weight: 500;
            color: var(--ink);
            background: #fcfcfd;
            border-right: 1px solid var(--line);
        }

        .cmp-table th, .cmp-table td {
            padding: .9rem 1rem;
            vertical-align: top;
            border-bottom: 1px solid var(--line);
        }

        .cmp-table tbody tr:nth-child(even) td,
        .cmp-table tbody tr:nth-child(even) th[scope="row"] {
            background: #fbfdff;
        }

        .cmp-table td {
            color: var(--muted);
        }

        .cmp-table tbody tr:hover td,
        .cmp-table tbody tr:hover th[scope="row"] {
            background: #f2f8ff;
        }
    /* Mobile-Ansicht: Zeilen werden zu „Karten“ mit Labels */
    @media (max-width: 760px) {
        .cmp-table thead {
            display: none;
        }

        .cmp-table, .cmp-table tbody, .cmp-table tr, .cmp-table td, .cmp-table th {
            display: block;
            width: 100%;
        }

            .cmp-table tr {
                border-bottom: 1px solid var(--line);
                padding: .6rem 0;
            }

            .cmp-table th[scope="row"] {
                background: transparent;
                border: 0;
                padding-bottom: .2rem;
                color: var(--ink);
            }

            .cmp-table td {
                position: relative;
                padding-left: 9rem; /* Platz für Label */
                border: 0;
                border-top: 1px dashed #e6edf4;
            }

                .cmp-table td::before {
                    content: attr(data-label) " ";
                    position: absolute;
                    left: 1rem;
                    top: .8rem;
                    width: 7.5rem;
                    font-weight: 600;
                    color: var(--accent);
                    white-space: nowrap;
                }

            .cmp-table tr:nth-child(even) td {
                background: transparent;
            }
    }
    /* contact */


    .contact-cta__text h2 {
        font-size: clamp(1.6rem, 3vw, 2rem);
        font-weight: 800;
        margin: 0 0 .4rem 0;
    }

    .contact-cta__text p {
        margin: 0 0 1.2rem 0;
        color: var(--muted);
        line-height: 1.6;
    }
    /* ===========================
   NAV: Robustheit & Usability
   =========================== */
    /* Top-Level-UL wirklich als Flex layouten (wird weiter oben schon als Flex benutzt) */
    nav[aria-label="Hauptnavigation"] > ul {
        align-items: center !important;
    }
        /* Bessere Tastatur-Nutzung: klarer Fokus-Ring statt komplett deaktiviertem Outline */
        nav[aria-label="Hauptnavigation"] > ul > li > a:focus-visible {
            outline: 2px solid var(--brand) !important;
            outline-offset: 2px !important;
        }
        /* Mehr Klickfläche: Links nicht zu knapp */
        nav[aria-label="Hauptnavigation"] > ul > li > a {
            min-height: 44px !important; /* empfohlene Touch-Targets */
            display: inline-flex !important;
            align-items: center !important;
        }
        /* Submenu: Hover-Gap schließen, damit der Nutzer sicher ins Menü kommt */
        nav[aria-label="Hauptnavigation"] > ul > li > ul::before {
            content: "" !important;
            position: absolute !important;
            left: 0 !important;
            right: 0 !important;
            top: -12px !important; /* Puffer über dem Submenü */
            height: 12px !important;
        }
        /* Submenu-Items: bessere Klickfläche */
        nav[aria-label="Hauptnavigation"] > ul > li > ul > li > a {
            min-height: 40px !important;
            display: flex !important;
            align-items: center !important;
        }
    /* Mobile: Submenu-Abstand & Scrollverhalten verbessern */
    @media (max-width: 900px) {
        nav[aria-label="Hauptnavigation"] > ul > li > ul {
            margin-top: 6px !important;
            max-height: 70vh !important;
            overflow: auto !important;
            -webkit-overflow-scrolling: touch !important;
        }
    }
    /* Mobile-Ansicht */
    @media (max-width: 760px) {
        nav[aria-label="Hauptnavigation"] > ul > li > a {
            color: #fff !important;
        }
    }
    /* ===========================
   CARDS & HOVER-MOTION
   =========================== */
    /* Leichtes Motion-Polishing; weiche, performantere Hover-Übergänge */
    .service-card,
    .story-card {
        will-change: transform, box-shadow;
        transform: translateZ(0); /* eigene Layer, ruhigeres Hover */
    }
    /* Bei reduzierter Bewegung: Animation/Transform minimieren */
    @media (prefers-reduced-motion: reduce) {
        * {
            animation-duration: 0.001ms !important;
            animation-iteration-count: 1 !important;
        }

        .service-card:hover,
        .story-card:hover {
            transform: none !important;
            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06) !important;
        }
    }
    /* ===========================
   EXPERT-SECTION Feature-List
   =========================== */
    /* Checkmark-Icon sauber einrücken – ohne Klassen/Farben zu ändern */
    .feature-list li {
        padding-left: 1.8rem; /* Platz für das Pseudo-Icon */
    }

        .feature-list li::before {
            position: absolute;
            left: 0.8rem; /* Icon optisch auf Linie */
            top: 50%;
            transform: translateY(-50%);
        }
    /* ===========================
   FAQ
   =========================== */
    /* Native Marker vom <summary> verbergen (wenn <details class="faq-details"> genutzt wird) */
    .faq-box .faq-summary::-webkit-details-marker {
        display: none;
    }
    /* Klickfläche vom Summary erhöhen */
    .faq-box .faq-summary {
        padding-right: 2rem; /* Platz für das Plus-Zeichen rechts */
        display: block;
    }
    /* ===========================
   HERO / MEDIA
   =========================== */

    .media-card img {
        display: block;
        width: 100%;
        height: auto;
        -webkit-user-drag: none; /* weniger unbeabsichtigtes Ziehen auf Touch */
    }
    /* ===========================
   TABELLE
   =========================== */
    /* Besseres Zeilenumbruchverhalten bei langen Wörtern / schmalen Screens */
    .cmp-table th, .cmp-table td {
        word-break: break-word;
    }
    /* Mobile: Labels in der Kartenansicht nicht umbrechen lassen */
    @media (max-width: 760px) {
        .cmp-table td::before {
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }
    }
    /* ===========================
   KONTAKT / BUTTONS (generisch)
   =========================== */
    /* Button-Zielgröße & Tap-Feedback */
    .btn,
    .cta-button {
        min-height: 44px;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }
        /* Fokus-States der Buttons sichtbar (gleiche Farben, nur Ring) */
        .btn:focus-visible,
        .cta-button:focus-visible {
            outline: 2px solid var(--brand);
            outline-offset: 2px;
        }
    /* ===== Backup Flow Diagram (CSS-only) ===== */
    .flow {
        max-width: 1100px;
        margin: 2.5rem auto;
        font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    }

    .flow__lane {
        position: relative;
        height: 6px;
        background: linear-gradient(90deg, var(--brand), var(--brand-2));
        border-radius: 999px;
        overflow: hidden;
        box-shadow: 0 8px 20px rgba(2,6,23,.08) inset;
    }
        /* leichter Glanz, der über die Spur läuft */
        .flow__lane::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,.6) 50%, transparent 100%);
            background-size: 220% 100%;
            animation: flowShimmer 3.2s linear infinite;
            opacity: .35;
        }

    @keyframes flowShimmer {
        from {
            background-position: 220% 0;
        }

        to {
            background-position: -220% 0;
        }
    }
    /* animierter Datenpunkt */
    .flow__dot {
        position: absolute;
        top: 50%;
        left: 0;
        width: 14px;
        height: 14px;
        border-radius: 50%;
        background: var(--brand-2);
        box-shadow: 0 0 0 6px rgba(2,132,199,.14), 0 0 18px rgba(2,132,199,.35);
        transform: translate(-7px, -50%); /* optisch mittig auf der Spur */
        animation: flowTravel 6s linear infinite;
    }

    @keyframes flowTravel {
        0% {
            left: 0%;
        }

        50% {
            left: calc(100% - 14px);
        }

        100% {
            left: 0%;
        }
    }
    /* Steps unter der Spur */
    .flow__steps {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 1rem;
        margin-top: 2.2rem;
    }

    .flow__step {
        flex: 1 1 0;
        text-align: center;
        position: relative;
        padding-top: .5rem;
    }

    .flow__step-title {
        font-weight: 600;
        color: var(--ink);
        margin-bottom: .25rem;
        font-size: 1rem;
    }

    .flow__step-desc {
        color: var(--muted);
        font-size: .95rem;
        line-height: 1.5;
        margin: 0 auto;
        max-width: 16rem;
    }
    /* Verbindung von Spur zu Step (Marker + Linie) */
    .flow__step::before,
    .flow__step::after {
        content: "";
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .flow__step::before {
        top: -28px;
        width: 2px;
        height: 22px;
        background: linear-gradient(180deg, var(--brand-2), rgba(2,132,199,.15));
        border-radius: 2px;
    }

    .flow__step::after {
        top: -36px;
        width: 10px;
        height: 10px;
        background: var(--brand);
        border-radius: 50%;
        box-shadow: 0 0 0 4px rgba(2,132,199,.12);
    }
    /* Responsive: kompaktere Steps */
    @media (max-width: 860px) {
        .flow__steps {
            gap: .6rem;
        }

        .flow__step-desc {
            font-size: .9rem;
        }
    }

    @media (max-width: 640px) {
        .flow__steps {
            flex-direction: column;
            gap: 1.5rem;
            align-items: center;
        }

        .flow__lane {
            height: 5px;
        }

        .flow__step {
            width: 100%;
            max-width: 520px;
        }

            .flow__step::before {
                top: -20px;
                height: 16px;
            }

            .flow__step::after {
                top: -28px;
            }
    }
    /* =============== Mobile-proof Flow =============== */
    /* 1) Motion-Respekt: Animationen reduzieren, wenn gewünscht */
    @media (prefers-reduced-motion: reduce) {
        .flow__lane::after,
        .flow__dot {
            animation: none !important;
        }
    }
    /* 2) Tablet-Optimierung: etwas kompakter */
    @media (max-width: 860px) {
        .flow__steps {
            gap: .6rem;
        }

        .flow__step-desc {
            font-size: .9rem;
        }
    }
    /* 3) Smartphone-Layout: echte vertikale Timeline */
    @media (max-width: 640px) {
        /* Von horizontalem Track auf vertikale Timeline umschalten */
        .flow {
            position: relative;
            padding-left: 1.25rem; /* Platz für die vertikale Linie */
        }
        /* Horizontale Spur & animierter Punkt ausblenden */
        .flow__lane,
        .flow__dot {
            display: none !important;
        }
        /* Vertikale Linie links */
        .flow::before {
            content: "";
            position: absolute;
            left: .55rem;
            top: .6rem;
            bottom: .6rem;
            width: 2px;
            background: linear-gradient(180deg, var(--brand), var(--brand-2));
            border-radius: 2px;
            box-shadow: 0 0 0 1px rgba(2,6,23,.04);
        }
        /* Steps stapeln, links ausrichten */
        .flow__steps {
            flex-direction: column !important;
            align-items: stretch !important;
            gap: 1.2rem !important;
            margin-top: .8rem !important;
        }

        .flow__step {
            width: 100%;
            max-width: 520px;
            margin-left: .25rem;
            text-align: left !important;
            padding-left: 1.25rem; /* Abstand zur Linie */
        }
            /* Marker/Verbinder je Step: vorherige Dekos neutralisieren */
            .flow__step::before,
            .flow__step::after {
                all: unset;
            }
            /* Neuer Step-Marker: Punkt auf der vertikalen Linie */
            .flow__step::before {
                content: "";
                position: absolute;
                left: -1.1rem; /* auf Linie setzen */
                top: .6rem;
                width: 10px;
                height: 10px;
                background: var(--brand);
                border-radius: 50%;
                box-shadow: 0 0 0 4px rgba(2,132,199,.12);
            }
        /* Typo etwas kompakter */
        .flow__step-title {
            font-size: 1rem;
            margin-bottom: .15rem;
        }

        .flow__step-desc {
            font-size: .95rem;
            line-height: 1.5;
        }
    }
    /* 4) Optional: sehr kleine Geräte (≤380px) noch luftiger */
    @media (max-width: 380px) {
        .flow {
            padding-left: 1rem;
        }

            .flow::before {
                left: .45rem;
            }

        .flow__step {
            padding-left: 1rem;
        }

            .flow__step::before {
                left: -1rem;
            }
    }
    /*Base
---------------------------------------------------------*/
    * {
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        color: #2d2d2d;
        outline: none;
    }

    html {
        font-size: 0.875em;
        line-height: 1.3em;
        font-weight: 400;
        font-family: 'Montserrat', sans-serif;
    }

    .pagewrapper {
        width: 100%;
        margin: 0 auto;
        max-width: 1447px;
    }

    ul.pagewrapper {
        max-width: 1447px;
    }

    .background-grey {
        background-color: #F5F5F7;
        position: relative;
        overflow: hidden;
        z-index: 1;
    }

        .background-grey:after {
            content: '';
            display: block;
            position: absolute;
            background-image: url(../images/luithle+luithle_signet_white.svg);
            background-repeat: no-repeat;
            top: 0;
            background-size: cover;
            height: 100%;
            width: 1200px;
            z-index: -1;
            background-position: right;
            right: 0;
            opacity: 0.4;
            margin-right: -200px;
        }
    /* ========== SPLIT CARD ========== */
    .sp-feature-split {
        background: var(--card-bg);
        border: 1px solid var(--border);
        border-radius: 24px;
        padding: clamp(18px,2.2vw,28px);
        box-shadow: 0 10px 30px var(--box-shodow), 0 1px 0 rgba(255,255,255,.7) inset;
        position: relative;
        overflow: hidden;
        isolation: isolate;
    }

    .split-inner {
        display: grid;
        grid-template-columns: 1.08fr 1fr;
        gap: clamp(22px,3vw,40px);
        align-items: center;
    }

    .split-text .headline {
        margin: 10px 0 6px;
        line-height: 1.18;
    }

    .split-text .subtext {
        color: var(--muted);
        margin: 0 0 16px;
        max-width: 50ch;
    }

    .feature-bullets {
        display: grid;
        gap: 12px;
        margin: 18px 0 20px;
        padding: 0;
        list-style: none;
    }

        .feature-bullets li {
            display: grid;
            gap: 2px;
            padding-left: 34px;
            position: relative;
        }

            .feature-bullets li::before {
                content: "";
                position: absolute;
                left: 0;
                top: 6px;
                width: 22px;
                height: 22px;
                border-radius: 999px;
                background: var(--brand);
                box-shadow: 0 0 0 3px rgba(0,100,173,.10);
            }

            .feature-bullets li::after {
                content: "";
            }

            .feature-bullets li strong {
                color: var(--ink);
                font-weight: 500
            }

            .feature-bullets li span {
                color: var(--muted);
                font-weight: 300;
            }

    .split-ctas {
        display: flex;
        gap: 12px;
        flex-wrap: wrap
    }
    /* ========== MEDIA (Bild rechts) ========== */
    .split-media {
        position: relative;
        min-height: clamp(260px, 34vw, 420px);
    }

    .media-frame {
        position: relative;
        height: 100%;
        border-radius: 24px 24px 24px 100px;
        overflow: hidden;
        background: #e9f5ff;
        box-shadow: 0 12px 40px rgba(0,100,173,.20);
        transform: translateZ(0);
        transition: transform .35s ease, box-shadow .35s ease;
    }

        .media-frame::after {
            content: "";
            position: absolute;
            inset: 0;
            pointer-events: none;
            border-radius: inherit;
            background: linear-gradient(140deg, rgba(0,100,173,.28), rgba(0,100,173,0) 60%);
            mix-blend-mode: soft-light;
            opacity: .6;
        }

        .media-frame img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transform: scale(1.015);
            transition: transform .35s ease;
        }
    /* Glow hinter dem Bild */
    .media-glow {
        position: absolute;
        inset: auto -8% -8% -12%;
        height: 45%;
        border-radius: 60px;
        background: radial-gradient(50% 80% at 40% 50%, rgba(0,100,173,.28) 0%, rgba(0,100,173,0) 70%);
        filter: blur(26px);
        z-index: -1;
    }
    /* Hover Micro-Interaction (Desktop) */
    @media (hover:hover) {
        .sp-feature-split:hover .media-frame {
            transform: translateY(-3px);
            box-shadow: 0 16px 50px rgba(0,100,173,.28);
        }

            .sp-feature-split:hover .media-frame img {
                transform: scale(1.03)
            }
    }
    /* CTAs */
    .split-ctas {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        margin-top: 4px
    }

    .split-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 12px 14px;
        border-radius: 12px;
        font-weight: 500;
        text-decoration: none;
        border: 1px solid transparent;
        transition: transform .15s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
    }

    .split-btn--primary {
        background: var(--brand);
        color: #fff;
        box-shadow: 0 10px 24px rgba(0,100,173,.22);
    }

        .split-btn--primary:hover {
            transform: translateY(-1px);
            box-shadow: 0 14px 30px rgba(0,100,173,.28);
            text-decoration: none;
        }

    .split-btn--ghost {
        background: transparent;
        color: var(--brand);
        border-color: rgba(0,100,173,.35);
    }

        .split-btn--ghost:hover {
            background: rgba(0,100,173,.06);
            text-decoration: none;
        }
    /* ========== RESPONSIVE ========== */
    @media (max-width: 980px) {
        .split-inner {
            grid-template-columns: 1fr;
        }

        .split-media {
            order: -1;
            min-height: clamp(220px, 50vw, 340px);
        }

        .media-frame {
            border-radius: 22px
        }
    }
    /* ===== Assurance Cards ===== */
    .Assurance {
        background: var(--card-bg);
        border: 1px solid var(--border);
        border-radius: 24px;
        padding: clamp(18px,2.2vw,28px);
        box-shadow: 0 10px 30px rgba(0,100,173,.08), 0 1px 0 rgba(255,255,255,.7) inset;
    }

    .Assurance__inner {
        max-width: 1200px;
        margin: 0 auto;
    }

    .Assurance__header .headline {
        margin: 10px 0 6px;
        line-height: 1.15;
    }

    .Assurance__header .subtext {
        color: var(--muted);
        max-width: 65ch;
    }

    .Assurance__header h3, .Assurance__header .prod-badge, .Assurance__header {
        text-align: center;
    }
    /* KPI-Rail (z. B. Erreichbarkeit, Testumgebung) */
    .AssuranceKpis {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
        margin: 18px 0 10px;
    }

    .AssuranceKpi {
        background: #fff;
        border: 1px solid var(--border);
        border-radius: 14px;
        padding: 14px 16px;
        box-shadow: 0 6px 16px rgba(0,100,173,.06);
    }

    .AssuranceKpi__title {
        font-weight: 800;
        color: var(--ink);
        margin-bottom: 4px
    }

    .AssuranceKpi__text {
        color: var(--muted);
    }
    /* Feature Cards */
    .AssuranceGrid {
        display: grid;
        gap: 16px;
        margin-top: 14px;
        grid-template-columns: repeat(3, 1fr);
    }

    .AssuranceCard {
        background: #fff;
        border: 1px solid var(--border);
        border-radius: 18px;
        padding: 18px;
        box-shadow: 0 10px 24px rgba(0,100,173,.07);
        transition: transform .18s ease, box-shadow .22s ease;
    }

        .AssuranceCard:hover {
            transform: translateY(-2px);
            box-shadow: 0 16px 36px rgba(0,100,173,.12);
        }

    .AssuranceCard__eyebrow {
        display: inline-flex;
        gap: 8px;
        align-items: center;
        font-size: 12px;
        font-weight: 800;
        letter-spacing: .2px;
        color: #fff;
        background: var(--brand);
        border-radius: 999px;
        padding: 6px 10px;
        box-shadow: 0 6px 20px rgba(0,100,173,.22);
    }

    .AssuranceCard__title {
        margin: 10px 0 6px;
        font-weight: 800;
        color: var(--ink);
        line-height: 1.15
    }

    .AssuranceCard__text {
        color: var(--muted);
        margin-bottom: 10px
    }
    /* Responsive */
    @media (max-width: 980px) {
        .AssuranceKpis {
            grid-template-columns: 1fr
        }

        .AssuranceGrid {
            grid-template-columns: 1fr
        }
    }

    @media (min-width: 981px) and (max-width: 1200px) {
        .AssuranceGrid {
            grid-template-columns: repeat(2, 1fr)
        }
    }
    /*Base Styles
--------------------------------------------------------- */
    #js-get-width {
        position: fixed;
        display: block;
        width: 1px;
    }

    .clearfix:before,
    .clearfix:after {
        content: " ";
        display: table;
    }

    .clearfix:after {
        clear: both;
    }

    .clearfix {
        *zoom: 1;
    }

    img {
        vertical-align: bottom;
        max-width: 100%;
        height: auto;
    }

    p {
        margin: 0 0 10px;
        padding: 0;
    }

    strong {
        font-weight: 500;
    }

    hr {
        margin: 10px 0 20px 0;
        width: 150px;
        max-width: 100%;
        height: 5px;
        border: 0;
        background: #094594; /* Old browsers */
        background: -moz-linear-gradient(left, #094594 0%, #0289c9 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left, #094594 0%,#0289c9 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #094594 0%,#0289c9 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#094594', endColorstr='#0289c9',GradientType=1 ); /* IE6-9 */
    }

    a {
        font-weight: 500;
        text-decoration: none;
        color: #0064ad;
    }

        a:hover {
            text-decoration: underline;
        }

    h1 a:hover, h2 a:hover {
        text-decoration: none;
    }

    ul {
        margin: 0 0 10px;
        padding: 0;
        padding-right: 15px;
        list-style-type: none;
    }

        ul li {
            font-weight: 500;
            padding: 0;
            margin: 0 0 10px;
            padding: 0 0 0 25px;
            position: relative;
        }

            ul li:after {
                content: '\2713';
                color: #0064ad;
                font-size: 25px;
                position: absolute;
                left: -10px;
                top: 0;
            }

    nav ul {
        padding: 0;
        margin: 0;
    }

    nav li {
        padding: 0;
        margin: 0;
        position: static;
    }

        nav li:after {
            content: '';
            display: none;
        }

    nav a:hover {
        text-decoration: none;
    }
    /*General Layout
---------------------------------------------------------*/
    .col-1,
    .col-2,
    .col-3,
    .col-4,
    .col-5,
    .col-6,
    .col-7,
    .col-8,
    .col-9,
    .col-10,
    .col-11,
    .col-12 {
        padding: 0 10px;
        float: left;
        width: 100%;
    }

    .col-2 {
        width: 50%;
    }

    .col:nth-child(2n+1) {
        clear: left;
    }
    /*Headlines
---------------------------------------------------------*/
    h1, .h1, h2, .h2, h3, .h3 {
        font-weight: 400;
    }

    .h1, h1 {
        font-size: 1.714em;
        line-height: 1.2em;
    }

    h1 {
        margin: 0 0 20px 0;
    }

    .h2, h2 {
        font-size: 2rem;
        font-weight: 500;
        color: #0064ad;
        margin-bottom: 1rem;
        position: relative;
        z-index: 1;
        margin: 0 auto;
        text-align: center;
        line-height: 1em;
    }

    .h3, h3 {
        font-size: 1.286em;
        line-height: 1.3em;
        margin: 0 0 10px 0;
        font-weight: 500;
        color: #0064ad;
    }

    #main-navigation a {
        line-height: 0.75em;
    }

    #meta-navigation a,
    footer a {
        font-size: 0.857em;
    }

    .small-font {
        font-size: 0.857em;
        line-height: 1em;
    }

    .header-headline {
        font-size: 3.214em;
        line-height: 1em;
    }

    i.fa,
    .icon {
        font-size: 1.714em;
        line-height: 1.3em;
        color: #0064ad;
        /* G2: color faerbt weiterhin i.fa-Glyphen (falls noch gerendert) und
           umgebenden Text, fuer das SVG braucht es zusaetzlich einen
           konkreten fill-Wert - currentColor waere hier falsch (siehe G1). */
        fill: #0064ad;
    }

    /* B2/M1: Benefits-Reihe (Karriereseite, KeyFacts). Mobilwert (<768px)
       hier, Desktopwert (>=768px) in style-gte-768.css. */
    .icon-facts .icon {
        width: 31px;
        height: 31px;
    }

    /* B3/M1: Ansprechpartner-Telefon (ContactPage, CareerOverviewPage,
       CareerDetailPage, PortfolioDetailPage, CompanyPage - siehe auch
       .homepage-portfolio-content .icon weiter unten fuer CompanyPage).
       Mobilwert hier, Desktopwert in style-gte-768.css. */
    .h1 .icon {
        width: 24px;
        height: 24px;
    }

    /* M5: CompanyPage-Ansprechpartner-Telefon (kein .h1-Kontext, gleiche
       Behandlung wie oben). Mobilwert hier, Desktopwert in
       style-gte-768.css. */
    .homepage-portfolio-content .icon {
        width: 24px;
        height: 24px;
    }

    /* P1 (N2-Nachzuegler), R3 (Runde 10): Pagination-Icon-Groesse. Urspruenglich
       14px/18px (Mobil/Desktop) fuer das alte, textgrossen-gekoppelte
       Chevron-Design (N2). Seit N5 (eigene Pfeil-Buttons, 58x45px orange)
       gilt fuer beide Breiten derselbe Wert: 18px - die 14px unterhalb 768px
       kamen zuletzt wieder ueber die em-gekoppelte generische Regel durch
       (dieselbe Klasse Fehler, die in Runde 5 sonst schon ueberall aufgeloest
       wurde). Desktopwert (ebenfalls 18px) unveraendert in style-gte-768.css. */
    .pagination .icon {
        width: 18px;
        height: 18px;
    }

    /* P1 (Runde 9): Blaetterpfeile (N5, SilverStripe/Blog/Includes/Pagination.ss)
       sitzen auf einem orangen .btn und brauchen Weiss - .pagination .btn hat
       zwar "color: #fff" (ueber die allgemeine .btn-Regel), das faerbt das SVG
       aber seit dem eingebetteten Sprite nicht mehr (siehe Runde 7). Ohne
       eigene fill-Regel fiel das Icon auf "i.fa, .icon { fill: #0064ad }"
       zurueck - blau auf Orange. Direkter Selektor, Spezifitaet 0-3-0, schlaegt
       das unabhaengig von der Ladereihenfolge. */
    .pagination .btn .icon {
        fill: #fff;
    }
    /*Links
---------------------------------------------------------*/
    a.btn,
    p.btn > a,
    a span.btn,
    input.btn,
    span.btn {
        display: inline-block;
        padding: 10px 20px;
        color: #fff;
        background-color: #e07812;
        margin: 0 0 10px 0;
        cursor: pointer;
        text-transform: uppercase;
        border: 0;
        font-weight: 500;
        border-radius: 4px;
    }

        a.btn:hover,
        p.btn a:hover,
        a:hover span.btn,
        input.btn:hover,
        span.btn:hover {
            text-decoration: none;
            background-color: #e79544;
        }

    p > .btn {
        margin: 0;
    }

    a:hover i {
        color: #29363e
    }

    .homepage-branch .btn, .homepage-portfolio-con .btn {
        background-color: #0064ad;
    }

        .homepage-branch .btn:hover .homepage-portfolio-con .btn:hover, .homepage-portfolio-con .btn:hover, .jobslist .career-offer.btn:hover {
            background-color: #64b9e4;
        }
    /*OffCanvas Layout
---------------------------------------------------------*/
    #responsive-menu {
        display: inline-block;
        cursor: pointer;
        z-index: 2;
        position: absolute;
        top: 10px;
        left: 10px;
    }

        #responsive-menu span:nth-child(1),
        #responsive-menu span:nth-child(2),
        #responsive-menu span:nth-child(3) {
            width: 35px;
            height: 5px;
            background-color: #000;
            margin: 6px 0;
            transition: 0.4s;
            display: block;
        }

    .open-offcanvas #responsive-menu span:nth-child(1) {
        -webkit-transform: rotate(-45deg) translate(-9px, 6px);
        transform: rotate(-45deg) translate(-9px, 6px);
    }

    .open-offcanvas #responsive-menu span:nth-child(2) {
        opacity: 0;
    }

    .open-offcanvas #responsive-menu span:nth-child(3) {
        -webkit-transform: rotate(45deg) translate(-8px, -8px);
        transform: rotate(45deg) translate(-8px, -8px);
    }

    #canvascontainer {
        overflow: hidden;
    }

    #canvascontainer-inner {
        position: relative;
        left: 0;
        -webkit-transition: left .35s ease-in-out;
        transition: left .35s ease-in-out;
    }

    .open-offcanvas #canvascontainer-inner {
        left: 80%;
    }

    #offcanvas-navigation {
        position: fixed;
        white-space: normal;
        width: 80%;
        left: -80%;
        top: 0;
        -webkit-transition: left .35s ease-in-out;
        transition: left .35s ease-in-out;
        background-color: #fff;
        height: 100%;
    }

    .open-offcanvas #offcanvas-navigation {
        left: 0;
        overflow: scroll;
    }
    /*Header Navigation
---------------------------------------------------------*/
    .headerwrapper {
        max-width: 1520px;
        width: 100%;
        margin: 0 auto;
        z-index: 1;
    }

    #offcanvas-navigation {
        background-color: #2d2d2d;
    }

    #meta-navigation a,
    #main-navigation a {
        text-decoration: none;
    }

    #meta-navigation {
        padding: 10px 10px;
    }

        #meta-navigation li {
            display: inline-block;
        }

            #meta-navigation li a {
                padding: 5px 6px;
            }

            #meta-navigation li:nth-child(1) a {
                padding-left: 0
            }

    #main-navigation a {
        display: block;
        padding: 15px 10px 15px 10px;
    }

    #main-navigation nav > ul > li a,
    #meta-navigation nav > ul > li a {
        color: #fff
    }

    #main-navigation nav > ul > li.current > a,
    #meta-navigation nav > ul > li.current > a,
    #main-navigation nav > ul > li.section > a,
    #meta-navigation nav > ul > li.section > a,
    #main-navigation nav > ul > li > a:active,
    #meta-navigation nav > ul > li > a:active,
    #main-navigation nav > ul > li > a:hover,
    #meta-navigation nav > ul > li > a:hover {
        color: #0064ad;
    }

    #main-navigation .sub-navigation a {
        padding: 15px 10px 15px 47px;
    }

    #main-navigation .sub-navigation li {
        position: relative;
    }

        #main-navigation .sub-navigation li.current a:after,
        #main-navigation .sub-navigation li.section a:after,
        #main-navigation .sub-navigation li a:active:after,
        #main-navigation .sub-navigation li a:hover:after {
            content: '';
            position: absolute;
            left: 15px;
            width: 25px;
            background: #0064ad;
            height: 3px;
            top: 50%;
            margin-top: -1.5px;
        }
    /*Cookie Consent
---------------------------------------------------------*/
    .cc-window.cc-banner .cc-message {
        color: #ffffff;
    }

    .cc-window .cc-message {
        color: #ffffff;
    }
    /*Image center
---------------------------------------------------------*/
    .img-center {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

        .img-center p img {
            display: block;
            margin-left: auto;
            margin-right: auto;
        }
    /*Header
---------------------------------------------------------*/
    #logo {
        position: absolute;
        left: 50%;
        margin-left: -80px;
        top: 20px;
        z-index: 2;
        width: 160px;
        display: block;
    }

    #logo-wrapper {
        height: 120px;
    }

    .header-holder * {
        color: #fff;
    }

    .header-holder {
        height: 330px;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        position: relative;
        z-index: 0;
    }

        .header-holder:after {
            display: block;
            content: '';
            position: absolute;
            top: 0;
            height: 100%;
            left: 0;
            width: 100%;
        }

        .header-holder.background-overlay:after {
            background: #094594; /* Old browsers */
            background: -moz-linear-gradient(left, #094594 0%, #0289c9 100%); /* FF3.6-15 */
            background: -webkit-linear-gradient(left, #094594 0%,#0289c9 100%); /* Chrome10-25,Safari5.1-6 */
            background: linear-gradient(to right, #094594 0%,#0289c9 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
            filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#094594', endColorstr='#0289c9',GradientType=1 ); /* IE6-9 */
        }

    #customer-slider-wrapper, #customer-slider-wrapper .swiper-slide, #customer-slider-wrapper .col-6 {
        height: 350px;
    }

        #customer-slider-wrapper .header-holder * {
            color: #fff;
        }


        #customer-slider-wrapper .header-content {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            bottom: unset;
        }

        #customer-slider-wrapper p.header-headline {
            color: #fff;
            word-break: break-word;
        }

    .customer-slider-content {
        color: #fff;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    .customer-slider-content-company {
        padding-top: 15px;
    }

    .customer-slider-content p {
        font-size: 30px;
        line-height: 30px;
    }

    h1 {
        color: #0064ad;
    }

    #customer-slider-wrapper, #customer-slider-wrapper:after {
        background: #094594; /* Old browsers */
        /*background: -moz-linear-gradient(left, #094594 0%, #0289c9 100%);*/ /* FF3.6-15 */
        /*background: -webkit-linear-gradient(left, #094594 0%,#0289c9 100%);*/ /* Chrome10-25,Safari5.1-6 */
        /*background: linear-gradient(to right, #094594 0%,#0289c9 100%);*/ /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#094594', endColorstr='#0289c9',GradientType=1 );*/ /* IE6-9 */
    }

    .header-holder a.btn {
        background-color: #e07812;
    }

        .header-holder a.btn:hover {
            background-color: #e79544;
        }


    #dvBorschuere .header-content p.header-headline {
        color: #0064ad;
    }

    #dvBorschuere .header-content p {
        color: black;
    }

    #dvBorschuere:after {
        background: unset; /* Old browsers */
    }

    .header-holder.background-overlay-image:after {
        background: radial-gradient(circle at center right,rgba(9,76,154,0.2),rgba(9,76,154,0.2) 70%);
    }

    .header-holder.remove-header {
        display: none;
    }

    .header-inner {
        padding: 10px 0 10px 0;
        height: 100%;
    }

    .header-content {
        position: absolute;
        bottom: -5px;
        left: 10px;
        width: 96%;
    }

    .header-inner .col-6 {
        height: 50%;
    }

    .ticketsystem {
        width: 20px;
    }

    .js-active #cta-wrapper {
        display: block;
    }

    #cta-wrapper * {
        color: #fff;
    }

    #cta-wrapper .icon {
        color: #fff;
        /* G2: konkreter fill-Wert fuer das SVG, siehe i.fa, .icon oben. */
        fill: #fff;
        text-align: center;
        display: block;
        margin: 0 auto 20px;
    }

    /* Live-Masse (www.llnet.de) uebernommen: Info-Icon im Toggle-Button ist
       schmaler (eigene Glyphenbreite), die 3 Icons in der Kontakt-Tabelle
       sind durch die gemeinsame Tabellenspalte alle gleich breit. */
    /* Quadratische Box, nicht die Tintenmasse der Glyphe: das <symbol> skaliert
       per preserveAspectRatio "xMidYMid meet" auf die kleinere Dimension - bei
       einer nicht-quadratischen Box wuerde die Glyphe verkleinert und
       zusaetzlich falsch zentriert. */
    /* M1: Mobilwert (<768px) hier, Desktopwert (>=768px) in
       style-gte-768.css. */
    #cta-wrapper .cta-ctrl .icon {
        height: 23px;
        width: 23px;
        margin: 0;
    }

    #cta-wrapper td .icon {
        height: 23px;
        width: 23px;
    }

    #cta-wrapper tr a {
        margin-bottom: 10px;
        display: block;
        padding-left: 5px;
    }

    #cta-wrapper {
        background-color: #e07812;
        min-height: 0;
        position: absolute;
        right: 0;
        transition: all .4s ease-in-out;
        z-index: 3;
        transform: translate(100%);
        top: 110px;
    }

        #cta-wrapper.active {
            transform: translate(0);
        }

    .cta-ctrl span,
    .cta-ctrl img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }

    #cta-wrapper.active span.fa.fa-comments-o:before {
        content: '\f00d';
    }

    .cta-ctrl {
        position: absolute;
        left: 0;
        background-color: #e07812;
        height: 80px;
        width: 60px;
        margin-left: -60px;
        cursor: pointer;
        border-radius: 4px 0 0 4px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    a.cta-ctrl:hover, div.cta-ctrl:hover {
        background-color: #e79544;
    }

    a.cta-ctrl {
        right: 0;
        left: unset;
        background-color: #e07812;
        z-index: 2;
        top: 20px;
        border-radius: 4px 0 0 4px;
    }

    .cta-content {
        padding: 20px 20px 0px 20px;
    }
    /*Content
---------------------------------------------------------*/
    hr.hr-teaser {
        margin: 20px auto;
    }

    /* M4: live laesst Slides ueber den Container hinausragen (overflow:visible
       auf beiden Achsen) und verlaesst sich auf einen aeusseren Container
       (#canvascontainer, overflow:hidden) fuer die Randbeschneidung am
       Fenster. clip/hidden hat hier zu frueh (an der Kante des
       Inhaltsbereichs) beschnitten. Kein horizontaler Scrollbalken laut
       Messung auf allen geprueften Breiten. */
    #circle-slider {
        position: relative;
        overflow: visible;
    }

    #circle-slider .swiper-wrapper {
        justify-content: center;
        overflow: visible;
    }

        #circle-slider .swiper-slide {
            display: inline-block;
            position: relative;
            margin: 0;
            margin-top: 1px;
            padding: 0;
        }

        #circle-slider span.circle-pattern {
            width: 60px;
            height: 60px;
            border: 4px solid #e3e4e5;
            border-radius: 100%;
            display: inline-block;
            position: relative;
            box-shadow: 0 0 0 2px #0064ad;
            cursor: pointer;
            z-index: 1;
            margin-bottom: 20px;
            background: transparent;
        }

            #circle-slider span.circle-pattern:hover {
                background: #094594;
                background: -moz-linear-gradient(left, #094594 0%, #0289c9 100%);
                background: -webkit-linear-gradient(left, #094594 0%,#0289c9 100%);
                background: linear-gradient(to right, #094594 0%,#0289c9 100%);
                filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#094594', endColorstr='#0289c9',GradientType=1 );
            }

    .circle-column:hover {
        transform: scale(1.10, 1.10);
    }

    #circle-slider span.circle-pattern span i,
    #circle-slider span.circle-pattern span .icon {
        color: #0064ad;
        /* G2: konkreter fill-Wert fuer das SVG. */
        fill: #0064ad;
        background: transparent;
    }

    #circle-slider span.circle-pattern:hover i,
    #circle-slider span.circle-pattern:hover .icon {
        background: -webkit-gradient(linear, right top, left bottom, from(#fff), to(#fff));
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        /* Runde 7, Korrektur zu Runde 6: hier stand urspruenglich fill:#fff,
           das war schon richtig (Screenshot-Pruefstand bestaetigt: ein
           konkreter fill-Wert am Host wird ueber svg.icon use{fill:inherit}
           durchgereicht). Die Vermutung aus Runde 6 (fill wirke seit
           fill="currentColor" generell nicht mehr) beruhte auf einer
           getComputedStyle-Messung, die den gemalten Wert nicht widerspiegelt
           - siehe G1 (fill="currentColor" jetzt ganz aus dem Sprite entfernt). */
        fill: #fff;
    }

    #circle-slider span.circle-pattern span i {
        font-size: 4em;
    }

    /* B1/M1: auf live kommt die Hoehe aus der Zeilenhoehe der
       Font-Awesome-Glyphe, nicht aus font-size - fuer ein SVG direkt in
       Pixeln setzen statt ueber em an die Schriftgroesse zu koppeln.
       Mobilwert (<768px) hier, Desktopwert (>=768px) in
       style-gte-768.css. */
    #circle-slider span.circle-pattern span .icon {
        width: 73px;
        height: 73px;
    }

    #circle-slider span.circle-pattern span {
        color: #64b9e4;
        left: 50%;
        top: 50%;
        position: absolute;
        transform: translate(-50%,-50%);
    }

    #circle-slider span.circle-pattern span {
        color: #fff;
    }

    #circle-slider .swiper-slide:after {
        display: none;
    }

    #circle-slider .circle-content {
        margin: 0 auto;
        max-width: 250px;
    }

    #circle-slider span.circle-pattern:before {
        content: '';
        display: block;
        border-bottom: 1px solid #0064ad;
        width: 70px;
        right: -75px;
        position: absolute;
        top: 70px;
        margin-top: -4px;
        margin-left: 30px;
    }

    #circle-slider span.circle-pattern:after {
        /*content: '';
  display: block;
  border-bottom: 1px solid #0064ad;
  position: absolute;
  top: 50%;
  left: 61px;
  right: 0;*/
    }

    #circle-slider .swiper-slide {
        vertical-align: text-top;
    }

    #circle-slider:after {
        content: '';
        display: block;
        border-bottom: 1px solid transparent;
        position: absolute;
        top: 31px;
        width: 100%;
        left: 100%;
    }

    .circle-column {
        width: auto;
        float: none;
    }

    .company-slider {
        position: relative;
    }

    #content.tmpl-CompanyPage .swiper-slide img {
        display: inline-block;
    }

    #select-wrapper {
        position: relative;
    }

        #select-wrapper:after {
            content: "\25BE";
            display: block;
            position: absolute;
            top: 50%;
            padding: 0;
            margin: 0;
            line-height: 1em;
            transform: translate(0, -50%);
            right: 10px;
            pointer-events: none;
        }

        #select-wrapper:hover:after {
            color: #0064ad;
        }

    ul.pagination {
        text-align: center;
    }

        ul.pagination li {
            display: inline-block;
            padding: 0;
            margin: 0;
        }

            ul.pagination li::after {
                display: none;
            }

            ul.pagination li.pagination-level {
                vertical-align: top;
                padding: 10px 20px 0 20px;
            }

        ul.pagination span.btn {
            padding: 20px;
            position: relative;
            margin: 0;
        }

            ul.pagination span.btn > span {
                position: absolute;
                left: 50%;
                top: 50%;
                transform: translate(-50%,-50%);
                color: #fff;
            }

    #content.tmpl-Blog #flex-mobile-wrapper-order {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    #succesMessage * {
        color: #fff;
    }

    #succesMessage {
        background: rgba(9,76,154,0.9);
        padding: 20px 0 10px;
        text-align: center;
        font-size: 1.1em;
        position: fixed;
        left: 0;
        width: 100%;
        top: 0;
        z-index: 2;
    }

    #flex-mobile-wrapper-order .order-1 {
        order: 3;
    }

    #flex-mobile-wrapper-order .order-2 {
        order: 1;
    }

    #flex-mobile-wrapper-order .order-3 {
        order: 2;
    }

    #BlogSearchForm_BlogSearchForm #BlogSearchForm_BlogSearchForm_Category_Holder,
    #BlogSearchForm_BlogSearchForm #BlogSearchForm_BlogSearchForm_Keyword_Holder label {
        display: none;
    }

    #BlogSearchForm_BlogSearchForm fieldset {
        display: inline-block;
        width: 80%;
    }

    #BlogSearchForm_BlogSearchForm .Actions {
        width: 18%;
        display: inline-block;
        position: relative;
    }

        #BlogSearchForm_BlogSearchForm .Actions input {
            color: transparent;
            position: static;
            width: 100%;
        }

        #BlogSearchForm_BlogSearchForm .Actions:after {
            content: '\f002';
            font-family: FontAwesome;
            display: block;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
            color: #fff;
        }

        #BlogSearchForm_BlogSearchForm .Actions:hover:after {
            color: #0064ad;
        }

    .profile-contact {
        text-align: center;
    }

    .career-offer * {
        color: #fff;
    }

    .career-offer.btn {
        display: block;
        background-color: #0064ad;
        padding: 20px 30px 10px 20px;
        position: relative;
    }

        /* M2: font-size trieb width/height ueber die generische .icon-Regel
           (1em) - explizit in Pixeln, Mobilwert hier, Desktopwert in
           style-gte-768.css.
           G3: Pfeil war blau statt weiss - ".career-offer *{color:#fff}"
           und "i.fa, .icon{color:rgb(0,100,173)}" (style-gte-768.css) haben
           dieselbe Spezifitaet (0-1-0 fuer den .icon-Teilselektor), die
           spaeter geladene Datei gewinnt. color hier bereits explizit
           gesetzt (0-2-0, schlaegt das unabhaengig von der Ladereihenfolge);
           fill zusaetzlich noetig, da color allein das SVG nicht einfaerbt
           (siehe G1/G2 - currentColor wurde ganz aus Sprite und CSS entfernt). */
        .career-offer.btn .icon {
            display: block;
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translate(-50%,-50%);
            color: #fff;
            fill: #fff;
            width: 24px;
            height: 24px;
        }

    ul.social-media-contact {
        text-align: center
    }

        ul.social-media-contact li:after {
            display: none;
        }

        ul.social-media-contact li {
            display: inline-block;
            margin: 0;
        }

    #google-wrapper {
        position: relative;
        min-height: 320px;
    }

        #google-wrapper .googlemaps {
            overflow: hidden;
            position: absolute;
            top: 0;
            height: 100%;
            left: 0;
            width: 100%;
            background: #ccc;
        }

    #content.tmpl-CareerDetailPage,
    #content.tmpl-BlogPost,
    #content.tmpl-PortfolioDetailPage,
    #content.tmpl-PartnerPage {
        padding-top: 20px;
    }

    html.flexbox .display-flex-wrap {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }

        html.flexbox .display-flex-wrap > div {
            padding-bottom: 40px;
            position: relative;
        }

            html.flexbox .display-flex-wrap > div .btn {
                position: absolute;
                left: 10px;
                margin: 0;
            }

    .youtube-container {
        position: relative;
        padding-bottom: 56.25% !important;
        padding-top: 0px !important;
        height: 0;
        overflow: hidden;
    }

        .youtube-container iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

    .apply-form-info {
        position: relative;
        padding-left: 20px;
        font-size: 0.857em;
        line-height: 1.2em;
    }

        .apply-form-info:before {
            content: "\24D8";
            position: absolute;
            top: 0;
            left: 0;
            font-size: 15px;
        }
    /*Footer
---------------------------------------------------------*/
    footer * {
        color: #fff;
    }

    .footer-title {
        text-transform: uppercase;
        font-size: 0.857em;
        line-height: 1em;
        font-weight: 500;
    }

    #footer-wrapper {
        background-color: #3e3d40;
        padding: 30px 0 15px 0;
    }

    #footer-description {
        background-color: #252525;
        padding: 15px 0 5px;
    }

    .footer-1-col,
    .footer-2-col {
        float: left;
        padding: 0 10px;
        width: 50%;
    }

        .footer-1-col:nth-child(2n+1),
        .footer-2-col:nth-child(2n+1) {
            clear: left;
        }

    footer li {
        padding: 0;
        margin: 0;
    }

        footer li:after {
            content: none;
            /* content: '\f101';
        color: #64b9e4;
        font-size: 14px;*/
            left: 1px;
            top: 2.5px;
        }

        footer li a {
            padding: 5px 16px;
            display: block;
            text-decoration: none;
            font-weight: 400;
        }

            footer li.current > a,
            footer li.section > a,
            footer li a:active,
            footer li a:hover {
                text-decoration: underline;
            }

    footer .footer-social-media a {
        padding: 0 10px 0 0;
        ;
    }

    footer .footer-social-media li:after {
        display: none;
    }

    footer .footer-social-media li {
        display: inline-block;
    }

        footer .footer-social-media li a {
            padding-right: 15px;
        }

    footer .ticketsystem {
        width: 40px;
    }
    /*Style Formular Field
---------------------------------------------------------*/
    fieldset {
        border: 0;
        padding: 0;
        margin: 0;
    }

    select {
        -webkit-appearance: none;
        -moz-appearance: none;
        -ms-appearance: none;
        appearance: none;
        background: transparent;
        cursor: pointer;
        border-radius: 0;
        border: 0;
        /*Style*/
        width: 100%;
        padding: 8px 74px 19px 21px;
        background-color: #fff;
    }

        select::-ms-expand {
            display: none;
        }

    select,
    input,
    textarea {
        color: #232931;
        border: 1px solid #0064ad;
        padding: 15px;
        width: 100%;
    }

        input.radio,
        input.checkbox {
            width: auto;
            position: absolute;
            margin: 5px 0 0 5px;
        }

    form {
        position: relative;
    }

    .Actions {
        text-align: right;
        padding: 0 10px;
    }

        .Actions input {
            text-transform: uppercase;
            border: 1px solid #0064ad;
            padding: 15px;
            width: auto;
            background-color: #0064ad;
            color: #fff;
            cursor: pointer;
        }

            .Actions input:hover {
                background-color: #fff;
                color: #0064ad;
            }

    ul.optionset {
        padding: 0;
        margin: 0;
    }

        ul.optionset li {
            padding: 0;
            margin: 0 0 10px 0;
            position: relative;
            font-weight: inherit;
        }

            ul.optionset li:after {
                content: '';
                display: none;
            }

        .checkbox label, ul.optionset label {
            cursor: pointer;
            vertical-align: middle;
        }

        label.right,
        ul.optionset li label {
            padding-left: 35px;
            display: inline-block;
        }

    label.right {
        padding-top: 3px;
    }

    ul.optionset li label:after {
        content: ' ';
        background-image: url(../images/radio.gif);
        display: block;
        width: 25px;
        height: 25px;
        line-height: 25px;
        vertical-align: bottom;
        position: absolute;
        left: 0;
        top: 0;
    }

    .radio:checked + label:after {
        background-image: url(../images/radio-active.gif);
    }

    .checkbox label:after {
        content: ' ';
        background-image: url(../images/checkbox.gif);
        display: block;
        width: 25px;
        height: 25px;
        line-height: 25px;
        vertical-align: bottom;
        position: absolute;
        left: 0;
        top: 0;
    }

    #MemberLoginForm_LoginForm_Remember_Holder.checkbox label:after {
        display: none;
    }

    .checkbox:checked + label:after {
        background-image: url(../images/checkbox-active.gif);
    }

    .checkbox label:after {
        border-radius: 0;
    }

    .checkbox input:checked + label:after {
        color: inherit;
    }

    ul.optionset label:after {
        border-radius: 50%;
    }

    #Form_ApplicationForm_ApplyFile_Holder .middleColumn {
        border: 1px solid #0064ad;
        padding: 5px;
    }

    #Form_ApplicationForm_ApplyFile_Holder #Form_ApplicationForm_ApplyFile {
        border: none;
    }

    .dropdown > .middleColumn {
        position: relative;
    }

        .dropdown > .middleColumn:after {
            content: "\25BE";
            display: block;
            position: absolute;
            top: 50%;
            padding: 0;
            margin: 0;
            line-height: 1em;
            transform: translate(0, -50%);
            right: 10px;
            pointer-events: none;
        }

        .dropdown > .middleColumn:hover:after {
            color: #0064ad;
        }

    input.file {
        cursor: pointer;
        overflow: hidden;
        position: relative;
    }

        input.file:before {
            content: attr(data-content) '';
            display: block;
            position: absolute;
            height: 100%;
            left: 0;
            overflow: hidden;
            top: 7.5px;
            padding: 10px 15px 10px;
            width: 100%;
            background-color: #fff;
        }

        input.file:after {
            content: 'Durchsuchen...';
            display: block;
            color: #fff;
            background-color: #0064ad;
            padding: 10px 15px 10px;
            position: absolute;
            top: 7.5px;
            right: 10px;
            cursor: pointer;
            pointer-events: none;
            border: 1px solid #0064ad;
        }

        input.file:hover:after {
            background-color: #fff;
            color: #0064ad;
        }

    #MemberLoginForm_LoginForm {
        padding: 10px;
    }

        #MemberLoginForm_LoginForm .Actions input {
            foat: none;
        }

        #MemberLoginForm_LoginForm_Email_Holder,
        #MemberLoginForm_LoginForm_Password_Holder,
        #MemberLoginForm_LoginForm .Actions input {
            margin-bottom: 20px;
        }

    #MemberLoginForm_LoginForm_Remember_Holder {
        margin: 20px 0 10px;
    }

        #MemberLoginForm_LoginForm_Remember_Holder input.checkbox {
            position: static;
        }

    #MemberLoginForm_LoginForm fieldset input {
        color: #232931;
    }
    /*slick slide
---------------------------------------------------------*/
    .swiper-button-prev,
    .swiper-button-next {
        font-size: 0;
        line-height: 0;
        position: absolute;
        height: 155px;
        width: 35px;
        top: 50%;
        display: block;
        padding: 0;
        margin-top: -77px;
        cursor: pointer;
        z-index: 1;
        border: 1px solid transparent;
        background: transparent;
    }

    .swiper-button-prev {
        left: -13%;
        background-image: url(../images/arrow-left-blue.svg);
        background-repeat: no-repeat;
        background-position: center;
    }

    .swiper-button-next {
        right: -13%;
        background-image: url(../images/arrow-right-blue.svg);
        background-repeat: no-repeat;
        background-position: center;
    }

    #slider-wrapper .swiper-button-prev {
        left: 50px;
        background-image: url(../images/arrow-left-white.svg);
    }

    #slider-wrapper .swiper-button-next {
        right: 50px;
        background-image: url(../images/arrow-right-white.svg);
    }

    /* Swiper-Navigationspfeile nutzen eigene Hintergrundbilder statt des Standard-Icons */
    .swiper-button-prev::after,
    .swiper-button-next::after {
        display: none;
        content: '';
    }

    /* Pfeile sollen ab 768px bedienbar sein (vorher: ausgeblendet bis 1530px,
       identisch zu den Slick-Pfeilen auf www.llnet.de - keine Regression,
       aber bewusst zu aendernde Einstellung). Unterhalb 768px genuegt Wischen
       (Swiper-Standardverhalten, touch/swipe ist an keiner Stelle in main.js
       deaktiviert), dort bleiben die Pfeile ausgeblendet. */
    @media (max-width: 767px) {
        #slider-wrapper .swiper-button-prev,
        #slider-wrapper .swiper-button-next,
        #customer-slider-wrapper .swiper-button-prev,
        #customer-slider-wrapper .swiper-button-next {
            display: none;
        }
    }

    /* Im neu sichtbaren Bereich (768-1529px) sind die Pfeile kleiner und naeher
       am Rand als bei >=1530px, damit sie nicht ueber den Buehnentext laufen:
       .header-content beginnt dort bei 10px/96% Breite (fast randlos), ein
       Pfeil bei 50px/35px Breite (Wert fuer >=1530px) wuerde ihn ueberlappen.
       #customer-slider-wrapper nutzte bislang die generische -13%-Position
       (siehe .swiper-button-prev/-next weiter oben) - das liegt ausserhalb der
       eigenen, durch .swiper{overflow:hidden} beschnittenen Box und war daher
       vermutlich nie sichtbar, unabhaengig von dieser Aenderung. Hier auf eine
       sichtbare Position gebracht; oberhalb 1529px unveraendert (keine
       Verhaltensaenderung ausserhalb des neu getesteten Bereichs). */
    @media (min-width: 768px) and (max-width: 1529px) {
        #slider-wrapper .swiper-button-prev,
        #slider-wrapper .swiper-button-next,
        #customer-slider-wrapper .swiper-button-prev,
        #customer-slider-wrapper .swiper-button-next {
            width: 24px;
            height: 90px;
            margin-top: -45px;
        }

        #slider-wrapper .swiper-button-prev,
        #customer-slider-wrapper .swiper-button-prev {
            left: 8px;
        }

        #slider-wrapper .swiper-button-next,
        #customer-slider-wrapper .swiper-button-next {
            right: 8px;
        }

        /* Linke Spalte (Headline bzw. "Handel"/"Technologie"-Kurztitel):
           mehr Abstand zum linken Pfeil. Gleiche linksbuendige Basisregel
           (.header-content{left:10px;width:96%}) in beiden Karussells. */
        #slider-wrapper .header-inner .col-6:first-child .header-content,
        #customer-slider-wrapper .header-inner .col-6:first-child .header-content {
            left: 40px;
            width: calc(96% - 32px);
        }

        /* Rechte Spalte bei #slider-wrapper (Name/Content): ab 768px per
           style-gte-768.css rechtsbuendig (.header-inner .col-6:nth-child(2)
           .header-content{right:10px}) - hier zusaetzlicher Abstand zum
           rechten Pfeil, ohne die Rechtsbuendigkeit selbst anzutasten. */
        #slider-wrapper .header-inner .col-6:nth-child(2) .header-content {
            right: 40px;
        }

        /* Rechte Spalte bei #customer-slider-wrapper (Zitat-Text,
           .customer-slider-content): hat kein eigenes left/right/width,
           daher hier nur zusaetzlich nach oben begrenzt (max-width), statt
           eine unbekannte Position zu erraten - verringert das Risiko einer
           Ueberlappung, ohne bestehendes Verhalten umzudefinieren. Bitte im
           Browser gegenpruefen, da ohne Rendering nicht abschliessend
           verifizierbar. */
        #customer-slider-wrapper .customer-slider-content {
            max-width: calc(100% - 40px);
        }
    }

    /*Dots*/
    .swiper-pagination {
        text-align: center;
        margin: 10px 0 0;
        position: static;
    }

        .swiper-pagination-bullet {
            display: inline-block;
            margin: 0 10px !important;
            border: none;
            opacity: 1;
            color: transparent;
            border-radius: 100%;
            background: #fff;
            cursor: pointer;
            height: 10px;
            padding: 0;
            width: 10px;
        }

        .swiper-pagination-bullet-active {
            background: #009cdd;
        }
    /*Extra Classes
---------------------------------------------------------*/
    .anchor-hidden {
        margin-top: -30px;
        padding-top: 30px;
    }

    #intro {
        margin-top: -20px;
        padding-top: 20px;
    }

    .no-list-style {
        padding: 0;
    }

        .no-list-style:after {
            display: none;
        }

    .float-right {
        float: right;
    }

    .text-right {
        text-align: right;
    }

    .no-padding {
        padding: 0;
    }

    .no-margin {
        margin: 0 !important;
    }

    .display-block {
        display: block;
    }

    .display-inline-block {
        display: inline-block;
    }

    .position-relative {
        position: relative;
    }

    .overflow-hidden {
        overflow: hidden;
    }

    .text-center {
        text-align: center;
    }

    .inner-distance-default {
        padding: 30px 0 20px;
    }

    .no-padding-bottom {
        padding-bottom: 0 !important;
    }

    .bottom-big {
        margin-bottom: 40px;
    }

    .bottom-medium {
        margin-bottom: 20px;
    }

    .bottom-default,
    .bottom-small {
        margin-bottom: 10px;
    }

    .border-top-blue {
        /*border-top: 1px solid #0064ad;*/
        position: relative;
    }

    .border-top-line-blue {
        border-top: 1px solid #0064ad;
        position: relative;
    }

    .gradient-line-blue {
        height: 5px;
        background: #094594; /* Old browsers */
        background: -moz-linear-gradient(left, #094594 0%, #0289c9 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left, #094594 0%,#0289c9 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #094594 0%,#0289c9 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#094594', endColorstr='#0289c9',GradientType=1 ); /* IE6-9 */
    }

    .color-blue {
        color: #0064ad;
    }

    .color-red {
        color: #ff0000;
    }

    #circle-slider .col-2 {
        clear: none !important;
    }

    .tmpl-CareerDetailPage {
        font-weight: 200;
    }

        .tmpl-CareerDetailPage ul li {
            font-weight: 200;
        }

        .tmpl-CareerDetailPage h1, .tmpl-CareerDetailPage h3 {
            color: #0064AD;
        }

        .tmpl-CareerDetailPage .job-header {
            margin-top: 30px
        }

        .tmpl-CareerDetailPage .job-call {
            text-align: center;
            margin-top: 30px
        }

    #benefit_box {
        background: #e6e6e6;
        margin: 0em -3em 1em -3em;
        padding: 0em 3em 0em 3em;
        background-image: url(https://www.llnet.de/themes/luithleluithle/images/luithle+luithle_signet_white.svg);
        background-repeat: no-repeat;
        background-size: 40em;
        background-position-x: 8em;
        background-position-y: -7em;
    }

    #benefit_row {
        display: flex;
        position: relative;
    }

    #imgBox {
        margin: 1em 8% 1em 8%;
        position: relative;
    }

    .imgBenefit {
        width: 119px;
        padding: 0px 10px 0px 10px;
    }

    .BenefitText {
        position: relative;
        text-align: center;
    }

    @media(min-width:550px) {
        /*Forms
  ---------------------------------------------------------*/
        .dropdown.input-field > .middleColumn {
            width: 50%;
        }

        .tmpl-CareerDetailPage .Actions input {
            position: absolute;
            right: 10px;
            bottom: 31px;
        }
        /*General Layout
  ---------------------------------------------------------
  .col-6, .col-4, .col-3{width: 50%;}
  .col-3:nth-child(2n+1),
  .col-4:nth-child(2n+1),
  .col-6:nth-child(2n+1){clear: left;}
  .col-2:nth-child(2n+1){clear: none;}
  .col-2{width: 33.333%}
  .col-2:nth-child(2n+1){clear: none;}
  .col-2:nth-child(3n+1){clear: left;}

  /*Header
  --------------------------------------------------------
  .header-inner .col-6{height: 100%;}*/
        /*Content
  --------------------------------------------------------*/
        #content.tmpl-ParnterPage .col-3 {
            width: 100%;
        }

        .profile-contact {
            text-align: right;
        }

        .hover-inherit {
            color: inherit;
            font-weight: inherit;
        }
    }

    .card {
        overflow: hidden;
        position: relative;
        display: inline-block;
        --height: 400px;
        --width: 600px;
        width: 33%;
        max-width: 600px;
        max-height: 600px;
        border-radius: 7px;
    }

        .card .img-container,
        .card .img-container .header-holder {
            max-width: 600px;
            max-height: 600px;
            border-radius: 7px;
        }


    .img-container {
        padding: 10px;
    }

    .card-title-left {
        transform: rotate(90deg);
        transform-origin: left top 0;
        margin-left: 50px;
        font-size: 3em !important;
        margin-top: 0;
        color: white;
    }

    .card-title-content {
        visibility: hidden;
        opacity: 0;
    }

    .card-title-content {
        padding-right: 15px;
    }

    .card:hover .card-title-content {
        visibility: visible;
        opacity: 1;
    }

    .card:hover .card-title-left {
        margin-left: 0px;
        padding-left: 0px;
        transform: rotate(0deg);
    }

    .card:hover .header-holder {
        -webkit-transform: scale(1.02);
        -ms-transform: scale(1.02);
        transform: scale(1.02);
        box-shadow: 10px 15px 7px #C7C7C7;
    }


    .card .header-holder.background-overlay-image:after {
        background: rgba(9, 76, 154, 0.2);
    }


    card .header-holder.background-overlay-image {
        height: 400px;
    }


    .apply-text {
        margin-top: 25px;
        color: black;
    }

    .app-process-titel {
        margin-bottom: 25px !important;
        font-size: 1.25em;
        color: black;
        font-weight: 400;
    }

    .app-process-content {
        color: black;
    }

    .app-process-slider {
        border: none !important;
    }

    #circle-slider span.circle-pattern.app-process-slider:before {
        border-bottom: none;
    }

    .zoom-element:hover {
        transform: scale(1.10, 1.10);
    }

        .zoom-element:hover .circle-pattern {
            background: linear-gradient(to right, #094594 0%,#0289c9 100%);
        }

    .homepage-portfolio-title {
        position: relative !important;
        left: 0px !important;
        width: 100%;
        font-size: 20px;
        border-top-right-radius: 7px;
        border-top-left-radius: 7px;
    }

    .homepage-portfolio-title-second {
        color: white;
        font-size: 13px;
    }

    .homepage-portfolio-img {
        border-left: 1px rgb(0, 100, 173) solid;
        border-right: 1px rgb(0, 100, 173) solid;
        border-bottom: 1px rgb(0, 100, 173) solid;
        border-bottom-right-radius: 7px;
        border-bottom-left-radius: 7px;
        width: 100%;
    }

    .homepage-portfolio .col-2, .homepage-portfolio .col-1 {
        text-align: center;
        padding-bottom: 20px !important;
    }

        .homepage-portfolio .col-2:hover a,
        .homepage-portfolio .col-2:hover img,
        .homepage-portfolio .col-1:hover a {
            background-color: #29363e;
            border-color: #29363e;
        }

        .homepage-portfolio .col-2:hover .homepage-portfolio-con, .homepage-portfolio .col-1:hover .homepage-portfolio-con {
            cursor: pointer;
            -webkit-transform: scale(1.02);
            -ms-transform: scale(1.02);
            transform: scale(1.02);
            box-shadow: 10px 15px 7px #C7C7C7;
        }

        .homepage-portfolio .col-2:hover .homepage-portfolio-content,
        .homepage-portfolio .col-1:hover .homepage-portfolio-content,
        .col-3:hover .homepage-branch-con * {
            border-color: #29363e;
        }

    .homepage-portfolio-con {
        border-radius: 7px;
    }

    .homepage-portfolio .col-1 {
        padding-right: 20px;
    }

        .homepage-portfolio .col-1 .homepage-portfolio-content {
            min-height: 75px;
        }

    .tmpl-PortfolioOverviewPage p.img-center-v img {
        max-height: 300px;
    }

    /* B4: max-height allein zerstoert das Seitenverhaeltnis, da die Breite
       (aus dem width-HTML-Attribut, korrekt proportional von ScaleWidth(620))
       dabei unangetastet bleibt - Breite bleibt 620, Hoehe wird auf 300
       gekappt, unabhaengig vom Bildinhalt. Stattdessen ueber die Breite
       begrenzen, Hoehe folgt dem Seitenverhaeltnis. */
    /* M3: max-width allein liess ein quadratisches Bild (Support-Expert)
       auf 310x310 statt 300x300 wachsen. Beide Grenzen zusammen (wie live),
       width/height auto erhaelt das Seitenverhaeltnis innerhalb der Box. */
    .tmpl-PortfolioDetailPage p.img-center-v img {
        max-width: 310px;
        max-height: 300px;
        width: auto;
        height: auto;
    }

    .tmpl-PortfolioOverviewPage ul, .tmpl-PortfolioDetailPage ul, .tmpl-CareerDetailPage ul {
        padding-left: 20px;
    }


    .homepage-portfolio-content {
        text-align: left;
        min-height: 175px;
        margin-bottom: 0px;
        border-left: 1px rgb(0, 100, 173) solid;
        border-right: 1px rgb(0, 100, 173) solid;
        border-bottom: 1px rgb(0, 100, 173) solid;
        padding: 10px;
        text-align: center;
    }

    .tmpl-PortfolioOverviewPage .homepage-portfolio-content {
        border-bottom: 1px rgb(0, 100, 173) solid;
    }

    .tmpl-PortfolioOverviewPage p.img-center-v img {
        max-height: 250px;
    }


    .header-holder.background-overlay-image.background-overlay-image-portfolio:after {
        background: radial-gradient(circle at center right,rgb(0 0 0 / 80%),rgb(3 24 48 / 20%) 70%);
    }
    /* branch */
    .homepage-branch-title {
        position: relative !important;
        left: 0px !important;
        width: 100%;
        font-size: 20px;
        border-radius: 0px;
    }

    .homepage-branch-title-second {
        color: white;
        font-size: 13px;
    }

    .homepage-branch-img {
        border-left: 1px rgb(0, 100, 173) solid;
        border-right: 1px rgb(0, 100, 173) solid;
        border-bottom: 1px rgb(0, 100, 173) solid;
        border-radius: 0px;
        width: 100%;
    }

    .homepage-branch .col-3 {
        text-align: center;
        padding-bottom: 20px !important;
    }

        .homepage-branch .col-3:hover a,
        .homepage-branch .col-3:hover img {
            background-color: #29363e;
        }

        .homepage-branch .col-3:hover .homepage-branch-con {
            cursor: pointer;
            -webkit-transform: scale(1.02);
            -ms-transform: scale(1.02);
            transform: scale(1.02);
            box-shadow: 10px 15px 7px #C7C7C7;
        }

    .homepage-branch-con {
        border-radius: 7px;
    }

    .homepage-branch-content {
        text-align: left;
        min-height: 125px;
        margin-bottom: 0px;
        border-left: 1px rgb(0, 100, 173) solid;
        border-right: 1px rgb(0, 100, 173) solid;
        padding: 10px;
        text-align: center;
        min-height: unset;
    }
    /* branch end */

    .partner-item-content {
        border-left: 1px rgb(0, 100, 173) solid;
        border-right: 1px rgb(0, 100, 173) solid;
        border-bottom: 1px rgb(0, 100, 173) solid;
        border-bottom-right-radius: 7px;
        border-bottom-left-radius: 7px;
        width: 100%;
        min-height: 450px;
        word-break: break-word;
    }

    .partners-list .col-2 {
        width: 33.33%;
    }

    /* R1 (Runde 10): Blog-Kartenraster (SilverStripe/Blog/Model/Layout/Blog.ss,
       .blog-post-grid .col-2) - dieselbe Drei-Stufen-Technik wie bei
       .partners-list/.homepage-portfolio: hier der unskopierte Basiswert
       (>=768px, siehe auch style-gte-768.css), Mobilwert (<768px, R2) in
       style-gte-320.css. Ohne Skopierung faellt .col-2 generisch auf 16.66%
       (6 pro Reihe) statt 33.33% (3 pro Reihe) zwischen 768 und 919px zurueck -
       dieselbe Luecke, die auch .partners-list/.homepage-portfolio schon mit
       genau diesem Muster schliessen. */
    .blog-post-grid .col-2 {
        width: 33.33%;
    }

    #pano {
        height: 750px;
        width: 100%;
        height: 100%;
        min-height: 500px;
        height: 750px;
        overflow: visible;
        margin: 0;
        padding: 0;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 16px;
        color: #FFFFFF;
        background-color: #000000;
    }

    @media screen and (min-width: 2560px) {
        .header-holder {
            height: 1200px !important;
        }
    }



    .card-small {
        overflow: hidden;
        position: relative;
        display: inline-block;
        height: 400px;
        width: 400px;
        border-radius: 7px;
    }

        .card-small.card-middle {
            height: 600px;
            width: 600px;
        }



        .card-small:hover .card-title-content {
            visibility: visible;
            opacity: 1;
        }

        .card-small:hover .card-title-left {
            margin-left: 0px;
            padding-left: 0px;
            transform: rotate(0deg);
        }

        .card-small:hover .header-holder {
            -webkit-transform: scale(1.02);
            -ms-transform: scale(1.02);
            transform: scale(1.02);
            box-shadow: 10px 15px 7px #C7C7C7;
        }


        .card-small .header-holder.background-overlay-image:after {
            background: rgba(9, 76, 154, 0.2);
        }


    card-small .header-holder.background-overlay-image {
        height: 400px;
    }

    .card-small > .front {
        position: absolute;
        transform: perspective(500px) rotateY(0deg);
        -webkit-transform: perspective(500px) rotateY(0deg);
        -moz-transform: perspective(500px) rotateY(0deg);
        backface-visibility: hidden;
        width: 100%;
        height: 420px;
        background-color: #fff;
        transition: transform .5s linear 0s;
        border: 1px solid #e9e9e9;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        color: white;
        border-radius: 7px;
    }

    .card-small.card-middle > .front {
        height: 620px;
    }

    .card-small > .back {
        position: absolute;
        transform: perspective(500px) rotateY(180deg);
        -webkit-transform: perspective(500px) rotateY(180deg);
        -moz-transform: perspective(500px) rotateY(180deg);
        backface-visibility: hidden;
        width: 100%;
        height: 420px;
        text-align: center;
        transition: transform .5s linear 0s;
        border: 1px solid #f3f3f3;
        color: white;
        background-color: #094594; /* Fallback, falls kein Bild hinterlegt ist */
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        border-radius: 7px;
        overflow: hidden;
    }

    /* G7: Bild auf der Rueckseite bleibt sichtbar (bewusste Abweichung von
       www.llnet.de, siehe Uebergabe) - Abdunklung als eigene Ebene VOR dem
       Text, betrifft nur .back, nicht .front. Kein opacity auf dem
       Container, das wuerde auch den Text aufhellen. */
    .card-small > .back:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: linear-gradient(180deg, rgba(9,69,148,.88) 0%, rgba(9,69,148,.8) 100%);
        z-index: 0;
    }

    .card-small > .back > * {
        position: relative;
        z-index: 1;
    }

    .card-small.card-middle > .back {
        height: 620px;
    }

    .card-small:hover > .front,
    .card-small.flipped > .front {
        transform: perspective(500px) rotateY(-180deg);
    }

    .card-small:hover > .back,
    .card-small.flipped > .back {
        transform: perspective(500px) rotateY(0deg);
    }

    .card-small-title-left {
        margin-top: 50px !important;
        margin-bottom: 10px !important;
        padding-bottom: 15px;
        font-size: 3em !important;
        text-align: center;
        margin-top: 0;
        color: white;
    }

    .card-small-title-content {
        color: white;
        padding: 10px;
    }

    .tmpl-CompanyPage .card-small, .tmpl-HomePage .card-small {
        height: 500px;
    }

        .tmpl-CompanyPage .card-small > .front, .tmpl-HomePage .card-small > .front {
            height: 500px;
            padding-top: 5px;
        }

        .tmpl-CompanyPage .card-small > .back, .tmpl-HomePage .card-small > .back {
            height: 500px;
        }

    .tmpl-CompanyPage .card-small-title-left, .tmpl-HomePage .card-small-title-left {
        font-size: 2em !important;
    }

    .ms365 {
        display: flex;
        width: 100vw;
        position: relative;
        left: calc(-50vw + 50%);
    }

    .ms365-banner-end {
        font-size: 25px;
        padding-top: 15px;
        color: white;
    }

    ul.ll-list-style-none {
        text-align: left;
    }

        ul.ll-list-style-none li {
            list-style: none;
        }

            ul.ll-list-style-none li:after {
                /*content: '';*/
            }

    ul.ll-list-style-li-none li {
        list-style: none;
    }

        ul.ll-list-style-li-none li:after {
            content: '';
        }

    footer ul {
        list-style: none;
    }

    #ll-iso27001 {
        /*display: none;*/
        top: 0;
        z-index: 2;
    }

    #iso27001logo {
        width: 250px;
        top: 0;
        left: 0;
    }

    #ll-greatplace {
        /*display: none;*/
        top: 0;
        z-index: 2;
    }

    #ll-greatplacelogo {
        width: 250px;
        top: 0;
        left: 0;
    }

    #CybotCookiebotDialogPoweredByText {
        display: none !important;
    }

    #CybotCookiebotDialogPoweredbyCybot {
        display: none !important;
    }

    #CybotCookiebotDialogPoweredbyImage {
        content: url('https://www.llnet.de/themes/luithleluithle/images/logo.svg');
    }

    .ll-banner {
        position: absolute;
        background-color: #e07812;
        cursor: pointer;
    }
/* F3: SVG-Icons als Ersatz fuer Font Awesome (icons.svg), verhalten sich wie vorherige .fa-Icons */
/* G2 (Runde 7, Korrektur zu Runde 6): fill: currentColor entfernt. Messung per
   Screenshot-Pruefstand (nicht getComputedStyle) zeigte: currentColor loest im
   geklonten Symbolinhalt gegen den Farbkontext des SPRITES auf (Body-Grau
   rgb(45,45,45)), nicht gegen den des <use>. Einfaerbung braucht seitdem einen
   konkreten fill-Wert an jeder Icon-Regel (siehe unten), currentColor darf im
   gesamten Icon-Pfad nirgends mehr vorkommen. */
.icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.125em;
    overflow: hidden;
}

/* Der globale Universalselektor (* { color: rgb(45,45,45) }) setzt color auch
   auf <use> direkt, wodurch currentColor dort NICHT vom umgebenden <svg>
   erbt, sondern gegen das eigene (graue) color aufloest. Globale Regel bewusst
   unveraendert gelassen (zu grosse Reichweite) - stattdessen hier gezielt
   zurueck auf Vererbung gestellt. */
svg.icon use {
    color: inherit;
    fill: inherit;
}

/* P2 (N2-Nachzuegler): "zurueck"-Pfeil der Pagination (Includes/Pagination.ss).
   chevron-left ist im Sprite nicht vorhanden (geprueft: icons.svg enthaelt nur
   chevron-right). Ein Chevron ist symmetrisch, daher wird chevron-right per
   CSS gespiegelt statt das Sprite zu erweitern - dessen Versionierung (7.3)
   bleibt so unangetastet. */
.icon-mirror {
    transform: scaleX(-1);
}

/* N4 (Runde 9): eigenes Blog-Suchformular (SilverStripe/Blog/Model/Layout/
   Blog.ss). Handgeschriebenes <form>/<button> statt eines SilverStripe-Form-
   Objekts, siehe MySite\Blog\BlogSearchExtension - input/select/textarea sind
   bereits global blau umrandet (siehe oben), hier nur das Nebeneinander von
   Feld und Button sowie die blaue Flaeche mit weissem Lupensymbol. */
.blog-search-form {
    display: flex;
}

.blog-search-form input {
    width: auto;
    flex: 1 1 auto;
    min-width: 0;
    border-right: none;
}

.blog-search-form button {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 51px;
    background-color: #0064ad;
    border: 1px solid #0064ad;
    cursor: pointer;
}

.blog-search-form button .icon {
    width: 20px;
    height: 20px;
    fill: #fff;
}

.blog-search-form button:hover {
    background-color: #094594;
}

/****** FILE: themes/luithleluithle/css/style-gte-320.css *****/
@media(max-width:420px) {
    .card .card-title-left.header-headline {
        font-size: 2em !important;
    }
    .icon-facts .col-2 {
        padding-left: 0;
        padding-right: 0;
    }  
}

@media(max-width:760px) {    
    #cta-wrapper {
        position: initial;
        height: 80px;
    }
}

@media screen and (device-aspect-ratio: 2/3) {
     .card .card-title-left.header-headline {
        font-size: 2em !important;
    }
}


@media screen and (device-aspect-ratio: 40/71) {
     .card .card-title-left.header-headline {
        font-size: 2em !important;
    }
}


@media screen and (device-aspect-ratio: 375/667) {
     .card .card-title-left.header-headline {
        font-size: 2em !important;
    }    
}

@media (max-width:820px) and (orientation : landscape) {
    
.card-small {
  width: 100%;
  border-radius: 7px;
 /* height: 300px;*/
}

.card-small.card-middle {
  width: 100% !important;
  border-radius: 7px;
 /* height: 300px !important;*/
}

.card-small:hover > .front {
  transform: none;
}

.card-small:hover > .back {
  
}

.card-small .front .card-title-left{
    visibility: hidden;
}

.card-small .back .card-small-title-content{
    font-size: 1.25em;
}

    .card-small > .front {
        /* height: 300px !important;*/
    }

    .card-small > .back {
        border-radius: 7px !important;
        position: absolute;
        transform: perspective(500px) rotateY(0deg);
        backface-visibility: hidden;
        width: 100%;
       /* height: 300px !important;*/
        text-align: center;
        transition: transform .5s linear 0s;
        border: 1px solid #f3f3f3;
        color: white;
        background: #094594 ;
        /*background: radial-gradient(circle at center right,rgba(9,76,154,0.4),rgba(9,76,154,0.4) 70%) !important;*/
        background-size: cover !important;
        background-repeat: no-repeat !important;
        background-position: center center !important;
        /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#094594', endColorstr='#0289c9',GradientType=1 );*/
    }

.ms365{    
    display: block !important;
    }

.ms365-banner-end{
    font-size:14px !important;
}

}

@media (max-width:480px)  { 

.ms365{    
    display: block !important;
    }

.ms365-banner-end{
    font-size:14px !important;
}

.card-small div.front div.position-relative
{
    display: none;
}


.card .card-title-left {
    font-size: 2.2em !important;
}

.card .header-holder:after {
    background: radial-gradient(circle at center right,rgba(9,76,154,0.4),rgba(9,76,154,0.4) 70%) !important;
}

.homepage-portfolio .bottom-small{
    padding-bottom: 0px !important;
}

.homepage-portfolio-img{
    visibility:hidden;
    height: 0px;
    width: 100%;
}


div.partner-item-content{    
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.homepage-portfolio-content{
    border-bottom-right-radius: 7px;
    border-bottom-left-radius: 7px;
    border-bottom: 1px rgb(0, 100, 173) solid;
}    
	
.card-small {
  width: 100%;
  border-radius: 7px;
 /* height: 300px;*/
}

.card-small.card-middle {
  width: 100%;
  border-radius: 7px;
  height: 300px;
}

.card-small:hover > .front {
  transform: none;
}

.card-small:hover > .back {
  
}

.card-small .front .card-title-left{
    visibility: hidden;
}

.card-small .back .card-small-title-content{
    font-size: 1.25em;
}

.card-small > .front {
    /*height: 300px !important;*/
}

    .card-small > .back {
        border-radius: 7px !important;
        position: absolute;
        transform: perspective(500px) rotateY(0deg);
        backface-visibility: hidden;
        width: 100%;
        /*height: 300px !important;*/
        text-align: center;
        transition: transform .5s linear 0s;
        border: 1px solid #f3f3f3;
        color: white;
        background: #094594 ;
        /*background: radial-gradient(circle at center right,rgba(9,76,154,0.4),rgba(9,76,154,0.4) 70%) !important;*/
        background-size: cover !important;
        background-repeat: no-repeat !important;
        background-position: center center !important;
        /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#094594', endColorstr='#0289c9',GradientType=1 );*/
    }

    .card-small > .back:after {
        background: rgba(9,76,154,0.4);
    }

    .card-small > .back .card-small-title-content {
        padding-top: 200px;
    }

    .circle-column:hover {
        transform: scale(1, 1);
    }

    #circle-slider .swiper-slide{
        margin-top: 10px;
    }

    #pano {
        height: 450px;
    }


    #customer-slider-wrapper .col-6.customer-slider-wrapper-branch {
        height: 50%;
    }
    #customer-slider-wrapper .col-6.position-relative {
        position:initial;
    }

    #customer-slider-wrapper .header-content{
        transform: initial;
        position:initial;
        top:initial;
    }

}
@media (max-width:600px)  { 
	/*.header-holder.background-overlay-image:after{
		radial-gradient(circle at center right,rgba(9,76,154,0.4),rgba(255,255,255,0) 80%);
	}*/
}
@media (max-width:920px)
{
    .tmpl-HomePage{
        margin-top: 20px;               
    }    
    div.partner-item-content{    
        width: 100%;
        height: 100%;
        min-height: 100%;
    }
}
@media (max-width:801px)  {    

#dvBorschuere:after{
  background: unset; /* Old browsers */  
}

#dvBorschuere .header-headline{
	color: black; 
}

#dvBorschuere .header-content p
{
	color: black;
}

	.header-holder.background-overlay-image:after{
		background: rgba(9,76,154,0.4);
	}

    #circle-slider span.circle-pattern {
        width: 140px;
        height: 140px;
    }
    .card {width: 100%;}
    .card-title-left {
        transform: rotate(0deg);
        word-break: break-all;
        margin-left: 0px;
    }
    .card-title-content {
        visibility: visible;
        opacity: 1;
    }
    .card:hover .card-title-left {
        visibility: visible;
        opacity: 1;
    }
    .cc-window .cc-message{
        color: #ffffff;
    }

    .zoom-element:hover {
        transform: none;
    }
    .homepage-portfolio .col-2 {
        width: 100%;
    }
    .homepage-portfolio .col-1 {
        padding-right:10px;
    }
    .homepage-portfolio-title a{
        color: black;
        text-align: center;
    }

    .homepage-portfolio .btn {
        position: relative;
    }
    .homepage-portfolio-content {
        min-height: 50px;
    } 
    
    .partners-list .col-2 {
        width: 100%;
    }

    /* R2 (Runde 10): Blog-Kartenraster unterhalb 768/801px auf volle Breite
       (1 pro Reihe), analog zu .partners-list direkt darueber. Gilt nur bis
       max-width:801px (dieser Media-Query-Block) - ab 768px gewinnt die
       spaeter geladene style-gte-768.css mit 33.33% (R1). */
    .blog-post-grid .col-2 {
        width: 100%;
    }

    .tmpl-PortfolioOverviewPage p.img-center-v img, .tmpl-PortfolioDetailPage p.img-center-v img {
        max-height: 100px;
    }

    .portfoliodetail-box .header-headline {
        font-size: 3em;
    }    

}
@media (max-width:1025px) {  
    .card {width: 100%;}
    #teamboard .col-2{
        width:50% !important;
    }
    .tmpl-Blog .col-2{
        width: 50%;
    }
    
    
}
@media (max-width:1281px) { 
    #circle-slider span.circle-pattern:before{
        display: none;
    }

    #ll-iso27001 {
        left: 300px !important;
        width: 50px !important;
    }

    #ll-greatplace {
        left: 350px !important;
        width: 44px !important;
    }
}

@media (max-width:800px) {
    #ll-iso27001 {
        display: none;
    }

    #ll-greatplace {
        display: none;
    }
}

/****** FILE: themes/luithleluithle/css/style-gte-768.css *****/
@media(min-width:768px){

	/*Base
	---------------------------------------------------------*/
	html{
		font-size:1.125em;
 	 	line-height:1.4em;
  }


	/* 	Base Styles
	--------------------------------------------------------- */
	#js-get-width{width: 2px;}
	/* Silverstripe Editor Text */
	img.left{
		float: left;
		max-width: 50%;
		margin-right: 20px;
	}
	img.right{
		float: right;
		max-width: 50%;
		margin-left: 20px;
		margin-top: 10px;
	}
	img.center{
		margin: 0 auto;
		text-align: center;
		display: block;
	}

	/*OffCanvas Layout
	---------------------------------------------------------*/
	#responsive-menu{display: none;}
  .open-offcanvas #canvascontainer{
		position: static;
		left: 0%;
	}
	#offcanvas-navigation,
	.open-offcanvas #canvascontainer-inner{
		position: static;
    width: 100%;
	}
	.open-offcanvas #offcanvas-navigation{overflow: auto;}

	/*Navigation
	---------------------------------------------------------*/
	#offcanvas-navigation{
		background-color: #fff;
		padding-left:230px;
	}
	#meta-navigation{margin-bottom: 57px;}
	#meta-navigation ul,
	#main-navigation nav > ul{text-align: right;}
	#main-navigation nav > ul{padding-bottom: 18px;}
	#main-navigation li{
		display: inline-block;
		vertical-align: top;
	}
	#main-navigation li a{padding:13px 10px 10px;}
	#main-navigation .sub-navigation a{
		padding: 20px 15px 20px 15px ;
		color: #0064ad;
	}
	#meta-navigation nav > ul > li a{color:#a0a0a0;}
	#main-navigation nav > ul > li > a{color:#2d2d2d;}
	#main-navigation .sub-navigation li.current > a:after,
	#main-navigation .sub-navigation li.section > a:after,
	#main-navigation .sub-navigation li > a:active:after,
	#main-navigation .sub-navigation li > a:hover:after{
		display: block;
		width: 100%;
		position: absolute;
		top: auto;
		bottom: 0;
		left: 0;
	}
	.sub-navigation{
		position: absolute;
    background-color: #fff;
    z-index: 1;
    width: 100%;
    left: 0;
    text-align: center;
    border-bottom: 1px solid #0064ad;
    top: 100%;
    -webkit-transition: background-color .3s ease-in-out;
    -moz-transition: background-color .3s ease-in-out;
    transition: background-color .3s ease-in-out;
    padding-left: 110px;
	}
	.sub-navigation.active-fixed{
		position: fixed;
		z-index: 2;
		top: 0;
	}
	.sub-navigation.background-color-active{ background-color: #0064ad; }
	#main-navigation .sub-navigation.background-color-active a{ color: #fff;}
	.js-active .sub-navigation{
		position: fixed;
	}

	#main-navigation .sub-navigation.background-color-active li.current  a:after,
#main-navigation .sub-navigation.background-color-active li.section  a:after,
#main-navigation .sub-navigation.background-color-active li  a:active:after,
#main-navigation .sub-navigation.background-color-active li  a:hover:after{  
  background: #fff;
}
	
	/*Header
	---------------------------------------------------------*/
	/* D1 (Runde 10): 200px war ein von Hand gepflegter Schaetzwert fuer die
	   tatsaechliche Hoehe des fixierten #logo-nav-wrapper (aktuell eher
	   ~230px) - lief auseinander, verdeckte auf Seiten ohne Buehnenbild
	   (.header-holder Hoehe 0, z.B. Blogbeitraege) die oberen 35px des ersten
	   Inhaltselements. --fixed-header-height wird von main.js zur Laufzeit auf
	   die tatsaechliche Hoehe gesetzt (siehe syncFixedHeaderHeight()), 200px
	   bleibt nur Fallback ohne JavaScript. */
	header{padding-top: var(--fixed-header-height, 200px);}
	#logo{
		left: 20px;
	  margin: 0;
		top: 23px;
		width: 190px;
    height: 104px;
		-webkit-transition: all .3s ease-in-out;
		-moz-transition: all .3s ease-in-out;
	  transition: all .3s ease-in-out;
	}

	/*Fixed Header
	---------------------------------------------------------*/
	#logo-nav-wrapper{
		position: fixed;
		width: 100%;
    display: block;
    z-index: 2;
		background-color: #FFF;
		top:0;
	}
	#logo-nav-wrapper.fixed{
		border-bottom: 1px solid #0064ad;
	}
	#logo-nav-wrapper.fixed #logo{
		left:55px;
		/*width: 130px;*/
		width: 210px;
    height: auto;
    overflow: hidden;
	}
	#meta-navigation{
		opacity: 1;
		-webkit-transition: all .3s ease-in-out;
		-moz-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
	}
	#logo-nav-wrapper.fixed #meta-navigation{
		opacity: 0;
		margin-bottom: 0;
		height:0;
	}
	#logo-nav-wrapper #meta-navigation nav > ul > li a{
		display: block;
	}
	#logo-nav-wrapper.fixed #meta-navigation nav > ul > li a{
		display: none;
	}

    .partners-list .col-2{width: 33.33%;}

    /* R1 (Runde 10): ab 768px zurueck auf 3 pro Reihe (33.33%), sonst wuerde
       hier die generische .col-2{width:16.66%} (6 pro Reihe, siehe unten)
       greifen. Behebt das kaputte Sechs-Spalten-Raster zwischen 768-919px. */
    .blog-post-grid .col-2{width: 33.33%;}

	/*General Layout
  ---------------------------------------------------------*/
  .col-2{width: 16.66%;}
	.col-4{width: 33.33%;}
	.col-3:nth-child(2n+1),
	.col-4:nth-child(2n+1),
	.col-2:nth-child(3n+1){clear: none;}
	.col-4:nth-child(3n+1),
	.col-2:nth-child(6n+1){clear: left;}
	#content.tmpl-ParnterPage .col-3,
	.col-3{width: 25%;}
	.col-3:nth-child(4n+1){clear: left;}
	.col-8{width: 66.66%;}
	.col-9{width: 75%;}

	 /*Fonts
	---------------------------------------------------------*/
	h1,.h1{
	  font-size: 2.500em;
	  line-height: 1.2em;
	}
	h1{margin-bottom: 30px;}
	.h2,h2{
	  font-size: 1.667em;
	  line-height: 1.2em;
	}
	.h3,h3{
	  font-size: 1.333em;
	  line-height: 1.2em;
	}
	nav #meta-navigation a,
	footer a{
	  font-size:0.833em;
	  line-height: 1.1em;
	}
	.header-headline{
	  font-size: 5.000em;
	  line-height: 1em;
	}
	i.fa,
	.icon{
		font-size: 2.667em;
		line-height: 1.2em;
	    color: #0064ad;
	    /* G2: konkreter fill-Wert, siehe style.css */
	    fill: #0064ad;
	}

	/*Header
	--------------------------------------------------------- */
	.header-holder{height:600px;}
	#ctrl-cta-wrapper{
		position: absolute;
		right: 0;
		top: 100%;
	}
	a.cta-ctrl{
		top: 0;
	}
	#cta-wrapper{
		top: 90px;
	}
	/*a.cta-ctrl{top:95%}*/
	/*#cta-wrapper {top: 135%;}*/

	/*#logo-nav-wrapper.fixed #cta-wrapper{
  margin-top: 80px;
	}*/

	/*Content
	---------------------------------------------------------*/
	#content{position: relative;}
	#logo-wrapper{height: auto;}
	.header-inner .col-6:nth-child(2) .header-content{
		left: auto;
		right: 10px;
		width: auto;
	}
	#circle-slider span.circle-pattern{
	  width: 140px;
	  height: 140px;
	}
    #circle-slider span.circle-pattern:before{
        content: '';
    }


	.two-col-content{
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;
		-webkit-column-gap: 40px;
		-moz-column-gap: 40px;
		column-gap: 40px;
	}
	#content.tmpl-Blog #flex-mobile-wrapper-order{display: block;}
	/* M1/M2: Desktop-Icongroessen (>=768px) - Mobilwerte stehen in style.css */
	.career-offer.btn .icon{
		width: 48px;
		height: 48px;
	}
	#cta-wrapper .cta-ctrl .icon{
		height: 30px;
		width: 30px;
	}
	#cta-wrapper td .icon{
		height: 30px;
		width: 30px;
	}
	.h1 .icon{
		width: 45px;
		height: 45px;
	}
	.homepage-portfolio-content .icon{
		width: 45px;
		height: 45px;
	}
	.icon-facts .icon{
		width: 58px;
		height: 58px;
	}
	#circle-slider span.circle-pattern span .icon{
		width: 86px;
		height: 86px;
	}
	/* P1 (N2-Nachzuegler): Pagination-Chevron, Mobilwert in style.css. */
	.pagination .icon{
		width: 18px;
		height: 18px;
	}
	html.flexbox .display-flex-wrap > div{padding-bottom: 60px;}

	label.right{padding-top: 0;}

	/*Footer
	---------------------------------------------------------*/
	.footer-1-col,
	.footer-2-col.first{
	  width: 25%;
	}
	.footer-1-col:nth-child(2n+1),
	.footer-2-col:nth-child(2n+1){
		clear: none;
	}
	.footer-1-col:nth-child(4n+1),
	.footer-2-col:nth-child(4n+1){
		clear: left;
	}

	/*Extra Classes
	---------------------------------------------------------*/
	.bottom-big{margin-bottom: 50px;}
	.bottom-medium{margin-bottom: 40px;}


    .icon-facts .col-2 {
        width: 33%;
    }
    .profile-contact {
        text-align: center;
    }

    .homepage-portfolio .col-2 {
        width: 50%;
    }

    .homepage-portfolio-content {
        min-height: 95px;
    } 

    .partner-item-content{        
        /*height: 450px !important;*/
    }
	#ll-iso27001 {
		background-color: transparent;
		left: 10%;
		width: 75px;
	}

	#iso27001logo {		
		top: 0;
		left: 0;
	}

	#ll-greatplace {		
		background-color: transparent;
		left: 15%;
		width: 62px;
	}

	#ll-greatplacelogo {
		width: 90px;
		top: 0;
		left: 0;
	}
	.homepage-branch-content {
		min-height: 425px;
	}
}
/****** FILE: themes/luithleluithle/css/style-gte-920.css *****/
@media(min-width:920px){
/*General Layout
  ---------------------------------------------------------*/
  .col-6, .col-4 {width: 50%;}
  .col-3 { width: 25%;}
  .col-3:nth-child(4n+1),
  .col-4:nth-child(2n+1),
  .col-6:nth-child(2n+1){clear: left;}
  .col-2:nth-child(2n+1){clear: none;}
  .col-2{width: 33.333%}
  .col-2:nth-child(2n+1){clear: none;}
  .col-2:nth-child(3n+1){clear: left;}

  /*Header
  --------------------------------------------------------*/
  .header-inner .col-6{height: 100%;}

	/*Base Styles
	--------------------------------------------------------- */
	#js-get-width{width: 3px;}
	hr{
		width:295px;
		margin-top: 15px;
	  margin-bottom: 45px;
	}

	/*Fonts
 ---------------------------------------------------------*/
 h1{margin-bottom: 50px;}

	/*Header
	---------------------------------------------------------*/
	/* D1 (Runde 10): siehe style-gte-768.css - 190px bleibt nur Fallback ohne
	   JavaScript, main.js koppelt den tatsaechlichen Wert an die gemessene
	   Hoehe von #logo-nav-wrapper. */
	header{padding-top: var(--fixed-header-height, 190px);}
	.header-inner{padding-bottom:30px;}
	#meta-navigation{margin-bottom: 87px;}
	#logo{
	 width: 250px;
	 height: 137px;
	}

	/*Content
	--------------------------------------------------------- */
	#content.tmpl-HomePage,
	#content.tmpl-PortfolioOverviewPage{padding-top: 40px;}
	hr.hr-teaser{
		width: 250px;
		margin-top: 25px;
		margin-bottom: 30px;
	}
	#content.tmpl-PartnerPage .col-3 + .col-9{padding-left: 40px;}
	.career-offer.btn{padding: 30px 40px 20px 40px;}
	#google-wrapper{min-height: 500px;}
	#content.tmpl-CareerDetailPage,
	#content.tmpl-BlogPost,
	#content.tmpl-PortfolioDetailPage,
	#content.tmpl-PartnerPage{
	  padding-top: 30px;
	}
	#footer-wrapper{padding: 50px 0 15px 0;}

	/*Footer
	---------------------------------------------------------*/
	.footer-1-col,
	.footer-2-col.first,.footer-2-col{
		width: 20%;
	}
	.footer-2-col.first{margin-right: 20%;}
	.footer-1-col:nth-child(4n+1),
	.footer-2-col:nth-child(4n+1){
		clear: none;
	}

	/*Extra Classes
	---------------------------------------------------------*/
	.anchor-hidden{
	  margin-top: -50px;
	  padding-top: 50px;
	}
	#intro{
	  margin-top: -40px;
	  padding-top: 40px;
	}
	.inner-distance-default{padding: 75px 0 75px;}
 
    .img-center-v{
        
    }

	.img-center-set {
		top: 50%;
		transform: translateY(25%);
		-ms-transform: translateY(25%);
		-moz-transform: translateY(25%);
		-webkit-transform: translateY(25%);
		-o-transform: translateY(25%);
	}
}

@media(min-width:1111px){

	.tmpl-ContactPage .Actions input,
	.tmpl-PortfolioDetailPage .Actions input{
		position: absolute;
    right: 10px;
    bottom: 30px;
	}
}

@media(min-width:1240px){
	#main-navigation ul:nth-child(2) {padding: 0 10%;}

}
@media(min-width:1245px){
	.circle-column{
		width: 16.66%;
		float: left;
	}
	#circle-slider span.circle-pattern{
		cursor: unset;
	}
    .circle-column-app-process {
        width: 20%;
        float: left;
    }
    .homepage-portfolio .col-2 {
        width: 33%;
    }
    .homepage-portfolio-content {
        min-height: 175px;
    }
	.tmpl-PortfolioDetailPage .homepage-portfolio-content {
		min-height: 125px;
	}
	.ll-claim-box {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		bottom: unset;
	}
}
@media(min-width: 1610px){
		#ctrl-cta-wrapper {
	     top: 60px;
	 }
}

@media(min-width: 2110px) {
	#ctrl-cta-wrapper {
		top: 60px;
	}
	#ll-iso27001 {		
		display: block;
	}
	#ll-greatplace {
		display: block;
	}
}

@media(min-width: 2610px) {
	#ll-iso27001 {		
		background-color: transparent;
		left: 20%;		
		display: block;	
		width:100px;
	}
	#ll-greatplace {		
		left: 15%;
		background-color: transparent;
		width: 150px;
		display: block;
	}
	#ll-greatplacelogo {
		max-width: 85px;
	}

}
