@font-face{font-family:"Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/montserrat-700.woff2") format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:300;font-display:swap;src:url("fonts/open-sans-300.woff2") format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/open-sans-400.woff2") format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/open-sans-600.woff2") format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/open-sans-700.woff2") format("woff2")}
:root{--c-blue: #007dbd;--c-blue-dark: #143f6f;--c-green: #589f48;--c-gold: #007dbd;--c-ink: #282f3c;--c-body: #4a5160;--nav-rest: #007dbd;--nav-active: #46802f;--nav-w: 60px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{max-width:100%;overflow-x:clip;margin:0;font-family:"Open Sans",system-ui,sans-serif;font-weight:400;font-size:17px;line-height:1.7;color:#4a5160;background:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:8 6 4;overflow-wrap:normal;word-break:normal}.page{margin-left:60px;transition:margin-left .35s cubic-bezier(0.4, 0, 0.2, 1)}@media(max-width: 992px){.page{margin-left:0}}h1,h2,h3,h4{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;color:#282f3c;line-height:1.15;margin:0 0 .4em;letter-spacing:0.01em}h1{font-size:clamp(1.85rem,4.2vw,4.1rem)}h2{font-size:clamp(1.42rem,2.8vw,2.25rem)}h3{font-size:clamp(1.02rem,1.35vw,1.55rem);padding-top:1rem}p{margin:0 0 1.1rem}a{color:#007dbd;text-decoration:none}img,svg,video{max-width:100%;display:block}ul{margin:0;padding:0;list-style:none}.section{padding:clamp(64px,9vw,120px) clamp(22px,5vw,64px)}@media(max-width: 992px){.section{padding-top:clamp(72px,9vw,120px)}}.section--alt{background:#dfdfdf}.section--dark{background:radial-gradient(120% 120% at 0% 0%, rgb(24.6717557252, 77.7160305344, 136.9282442748) 0%, #0f2747 55%, rgb(11.4418604651, 29.7488372093, 54.1581395349) 100%);color:hsla(0,0%,100%,.82)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:#fff}.wrap{max-width:1180px;margin:0 auto}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:#007dbd;margin-bottom:1rem}.eyebrow::before{content:"";width:26px;height:2px;background:#007dbd}.section--dark .eyebrow{color:#007dbd}.lead{font-size:clamp(1.05rem,1.5vw,1.22rem);color:#4a5160;max-width:65ch;line-height: 1.5;font-weight:600}.section--dark .lead{color:hsla(0,0%,100%,.78)}.section__head{max-width:720px;margin-bottom:clamp(38px,5vw,60px)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}[data-lang-only]{display:none}.nav{position:fixed;inset:0 auto 0 0;z-index:100;width:var(--nav-w);display:flex;flex-direction:column;background:#fff;color:#4a5160;border-right:1px solid #e6e9ee;overflow:hidden;transition:width .35s cubic-bezier(0.4,0,0.2,1),box-shadow .35s cubic-bezier(0.4,0,0.2,1)}.nav:hover,.nav:focus-within,.nav.is-expanded{width:240px;box-shadow:22px 0 60px rgba(20,63,111,.12)}.nav__brand{display:flex;align-items:center;justify-content:center;height:104px;flex:0 0 auto}.nav__list{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:14px 0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.nav__list::-webkit-scrollbar{display:none}.nav__link{position:relative;display:flex;align-items:center;height:46px;width:100%;color:var(--nav-rest);background:none;border:0;margin:0;padding:0;cursor:pointer;font:inherit;text-align:left;white-space:nowrap;text-decoration:none;transition:color .2s cubic-bezier(0.4,0,0.2,1)}.nav__icon{flex:0 0 var(--nav-w);display:grid;place-items:center;color:inherit}.nav__icon svg{width:22px;height:22px}.nav__label{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.03em;text-transform:uppercase;padding-right:16px;opacity:0;transform:translateX(-6px);transition:opacity .25s cubic-bezier(0.4,0,0.2,1),transform .25s cubic-bezier(0.4,0,0.2,1)}.nav:hover .nav__label,.nav:focus-within .nav__label,.nav.is-expanded .nav__label{opacity:1;transform:none}.nav__link::before{content:"";position:absolute;left:0;top:50%;width:3px;height:24px;background:linear-gradient(180deg,var(--c-green),var(--c-blue));border-radius:0 3px 3px 0;transform:translateY(-50%) scaleY(0);transition:transform .22s cubic-bezier(0.4,0,0.2,1)}.nav__link:hover,.nav__link:focus-visible{color:var(--nav-active)}.nav__link:hover::before,.nav__link.is-active::before{transform:translateY(-50%) scaleY(1)}.nav__link.is-active{color:var(--nav-active)}.nav__link:hover .nav__icon svg,.nav__link:focus-visible .nav__icon svg,.nav__link.is-active .nav__icon svg{stroke:url(#navGrad)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.nav__link:hover .nav__label,.nav__link:focus-visible .nav__label,.nav__link.is-active .nav__label{background:linear-gradient(120deg,#46802f,#0c6aa0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}}.nav__caret{margin-left:auto;margin-right:18px;display:grid;place-items:center;color:#79818f;opacity:0;transition:opacity .25s cubic-bezier(0.4,0,0.2,1),transform .25s cubic-bezier(0.4,0,0.2,1)}.nav:hover .nav__caret,.nav:focus-within .nav__caret,.nav.is-expanded .nav__caret{opacity:1}.nav__caret svg{width:16px;height:16px}.nav__group.is-open .nav__caret{transform:rotate(180deg)}.nav__sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(0.4,0,0.2,1)}.nav__group.is-open .nav__sub{grid-template-rows:1fr}.nav__sub-inner{min-height:0;overflow:hidden}.nav__sublink{position:relative;display:flex;align-items:center;height:40px;padding-left:var(--nav-w);color:#5f6675;white-space:nowrap;text-decoration:none;transition:color .2s cubic-bezier(0.4,0,0.2,1)}.nav__sublink .nav__label{opacity:0;font-family:"Open Sans",system-ui,sans-serif;font-weight:400;font-size:.92rem;letter-spacing:.01em;text-transform:none}.nav:hover .nav__sublink .nav__label,.nav:focus-within .nav__sublink .nav__label,.nav.is-expanded .nav__sublink .nav__label{opacity:1;transform:none}.nav__sublink::before{content:"";position:absolute;left:calc(var(--nav-w) - 16px);top:50%;width:5px;height:5px;border-radius:50%;background:#c4cad3;transform:translateY(-50%);transition:background .2s cubic-bezier(0.4,0,0.2,1)}.nav__sublink:hover,.nav__sublink.is-active{color:#007dbd}.nav__sublink:hover::before,.nav__sublink.is-active::before{background:#007dbd}.nav__foot{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px 0 22px}.nav__social{display:flex;align-items:center;gap:16px}.nav__social a{display:inline-flex;color:#79818f;transition:color .2s cubic-bezier(0.4,0,0.2,1)}.nav__social a svg{width:20px;height:20px}.nav__social a:hover{color:var(--nav-active)}.nav__social a:not(:first-child){display:none}.nav:hover .nav__social a,.nav:focus-within .nav__social a,.nav.is-expanded .nav__social a{display:inline-flex}.nav__copy{font-family:"Open Sans",system-ui,sans-serif;font-size:.72rem;color:#79818f;white-space:nowrap;opacity:0;transition:opacity .3s cubic-bezier(0.4,0,0.2,1)}.nav:hover .nav__copy,.nav:focus-within .nav__copy,.nav.is-expanded .nav__copy{opacity:1}.nav__toggle{display:none}@media(max-width: 992px){.nav{inset:0 0 auto 0;width:100%;height:64px;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid #e6e9ee;overflow:visible;transition:height .35s cubic-bezier(0.4,0,0.2,1)}.nav:hover,.nav:focus-within,.nav.is-expanded{width:100%;box-shadow:none}.nav__brand{height:64px;justify-content:flex-start;padding-left:18px;flex:1 1 auto}.nav__toggle{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;flex:0 0 64px;background:none;border:0;color:#143f6f;cursor:pointer}.nav__toggle span{position:relative;width:24px;height:2px;background:currentColor;transition:background .2s cubic-bezier(0.4,0,0.2,1)}.nav__toggle span::before,.nav__toggle span::after{content:"";position:absolute;left:0;width:24px;height:2px;background:currentColor;transition:transform .25s cubic-bezier(0.4,0,0.2,1)}.nav__toggle span::before{top:-7px}.nav__toggle span::after{top:7px}.nav__list{position:absolute;top:64px;left:0;right:0;flex:none;justify-content:flex-start;padding:0;background:#fff;max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(0.4,0,0.2,1),padding .4s cubic-bezier(0.4,0,0.2,1)}.nav__link{height:52px}.nav__icon{flex:0 0 60px}.nav__label{opacity:1;transform:none}.nav__caret{opacity:1;margin-right:22px}.nav__sublink{height:46px;padding-left:60px}.nav__sublink::before{left:44px}.nav__foot{position:absolute;top:64px;right:0;flex-direction:row;border:0;padding:0;transform:translateY(-200%);transition:transform .3s cubic-bezier(0.4,0,0.2,1)}.nav__social,.nav__copy{display:none}.nav.is-open .nav__list{max-height:calc(100vh - 64px);overflow-y:auto;padding:8px 0 16px;border-bottom:1px solid #e6e9ee;box-shadow:0 24px 40px rgba(20,63,111,.12)}.nav.is-open .nav__foot{transform:none;top:auto;bottom:-56px;right:18px}.nav.is-open .nav__toggle span{background:rgba(0,0,0,0)}.nav.is-open .nav__toggle span::before{transform:translateY(7px) rotate(45deg)}.nav.is-open .nav__toggle span::after{transform:translateY(-7px) rotate(-45deg)}}.logo{position:relative;display:flex;align-items:center;justify-content:center;height:44px}.logo__short{width:40px;height:40px;flex:0 0 40px;animation:logo-rotate 2s linear infinite;transition:opacity .25s cubic-bezier(0.4, 0, 0.2, 1)}.logo__long{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);height:50px;width:auto;max-width:218px;opacity:0;pointer-events:none;transition:opacity .3s cubic-bezier(0.4, 0, 0.2, 1) .05s}.nav:hover .logo__short,.nav:focus-within .logo__short,.nav.is-expanded .logo__short{opacity:0}.nav:hover .logo__long,.nav:focus-within .logo__long,.nav.is-expanded .logo__long{opacity:1}@keyframes logo-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media(max-width: 992px){.logo{justify-content:flex-start}.logo__short{display:none}.logo__long{position:static;transform:none;opacity:1;height:30px}}.lang{display:flex;align-items:center;gap:4px}.lang__btn{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.04em;color:#79818f;background:none;border:0;padding:4px 6px;border-radius:8px;cursor:pointer;transition:color .2s cubic-bezier(0.4, 0, 0.2, 1)}.lang__btn:hover{color:var(--nav-active)}.lang__btn.is-active{color:var(--nav-rest)}.lang__sep,.lang__btn:not(.is-active){display:none;white-space:nowrap}.lang__sep{color:#e6e9ee}.nav:hover .lang__sep,.nav:hover .lang__btn:not(.is-active),.nav:focus-within .lang__sep,.nav:focus-within .lang__btn:not(.is-active),.nav.is-expanded .lang__sep,.nav.is-expanded .lang__btn:not(.is-active){display:inline-block}@media(max-width: 992px){.lang{padding:0;height:64px;align-items:center}.lang__sep,.lang__btn:not(.is-active){display:inline-block}}.card{position:relative;background:#fff;border:1px solid #e6e9ee;padding:34px 30px;transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1),box-shadow .3s cubic-bezier(0.4, 0, 0.2, 1),border-color .3s cubic-bezier(0.4, 0, 0.2, 1)}.card:hover{transform:translateY(-6px);box-shadow:0 18px 50px rgba(20,63,111,.1);border-color:rgba(0,0,0,0)}.card__icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:16px;margin-bottom:22px;color:#007dbd;background:rgba(0,125,189,.1);transition:background .3s cubic-bezier(0.4, 0, 0.2, 1),color .3s cubic-bezier(0.4, 0, 0.2, 1)}.card__icon svg{width:28px;height:28px}.card:hover .card__icon{background:#007dbd;color:#fff}.card h3{margin-bottom:.55rem;font-size:1rem}.card p{margin:0;font-size:.97rem;color:#4a5160;font-weight: 600;line-height:1.5}.grid{display:grid;gap:clamp(18px,2.4vw,28px)}.grid--3{grid-template-columns:repeat(3, minmax(0, 1fr))}.grid--2{grid-template-columns:repeat(2, minmax(0, 1fr))}.grid--4{grid-template-columns:repeat(4, minmax(0, 1fr))}@media(max-width: 992px){.grid--3,.grid--4{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(max-width: 576px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}}.js-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(0.4, 0, 0.2, 1),transform .6s cubic-bezier(0.4, 0, 0.2, 1)}.js-ready .reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion: reduce){.js-ready .reveal{opacity:1;transform:none;transition:none}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:120px clamp(22px,5vw,64px) 80px;color:#fff;overflow:hidden;background:radial-gradient(110% 90% at 85% 10%, rgba(0, 75, 120, 0.38) 0%, transparent 55%), radial-gradient(90% 80% at 0% 100%, rgba(45, 95, 45, 0.22) 0%, transparent 50%), linear-gradient(140deg, #0b2748 0%, #010308 60%, #051323 100%)}@media(max-width: 992px){.hero{min-height:auto;padding-top:130px}}.hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255, 255, 255, 0.08) 1.4px, transparent 1.4px);background-size:34px 34px;mask-image:linear-gradient(90deg, transparent, #000 40%);pointer-events:none}.hero__inner{position:relative;z-index:1;max-width:800px}.hero__eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:1rem;letter-spacing:.2em;text-transform:uppercase;color:#007dbd;margin-bottom:1.4rem}.hero h1{color:#fff;margin-bottom:1.2rem}.hero h1 span{color:#007dbd}.hero__lead{font-size:clamp(1.05rem,1.6vw,1.28rem);color:hsla(0,0%,100%,.82);max-width:60ch;margin-bottom:2.2rem}.hero__cta{display:flex;flex-wrap:wrap;gap:14px}.hero__stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4, auto);gap:clamp(24px,5vw,64px);margin-top:clamp(48px,7vw,80px);padding-top:36px;border-top:1px solid hsla(0,0%,100%,.14)}@media(max-width: 768px){.hero__stats{grid-template-columns:repeat(2, 1fr);gap:28px}}.hero__stat strong{display:block;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:clamp(1.8rem,3vw,2.5rem);color:#fff;line-height:1}.hero__stat span{font-size:.85rem;color:hsla(0,0%,100%,.6);letter-spacing:.04em}.hero__scroll{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:1;color:hsla(0,0%,100%,.5);animation:hero-bob 2.4s cubic-bezier(0.4, 0, 0.2, 1) infinite}@media(max-width: 992px){.hero__scroll{display:none}}@keyframes hero-bob{0%,100%{transform:translate(-50%, 0)}50%{transform:translate(-50%, 8px)}}.services__intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:clamp(38px,5vw,56px)}.services__intro .section__head{margin-bottom:0}.services .card p{line-height:1.65}.quality__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(36px,6vw,80px);align-items:center}@media(max-width: 992px){.quality__grid{grid-template-columns:1fr}}.quality__points{display:grid;gap:18px;margin-top:28px}.quality__point{display:flex;gap:16px;align-items:flex-start}.quality__point .quality__check{flex:0 0 28px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(88,159,72,.16);color:#589f48;margin-top:2px}.quality__point .quality__check svg{width:16px;height:16px}.quality__point h4{margin:0 0 .2rem;font-size:1.02rem}.quality__point p{margin:0;font-size:.95rem}.certs{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px}@media(max-width: 576px){.certs{grid-template-columns:1fr}}.cert{background:#fff;border:1px solid #e6e9ee;border-radius:14px;padding:26px 24px;text-align:center;transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1),box-shadow .3s cubic-bezier(0.4, 0, 0.2, 1)}.cert:hover{transform:translateY(-5px);box-shadow:0 8px 24px rgba(20,63,111,.08)}.cert .cert__mark{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:14px;border-radius:14px;background:linear-gradient(135deg, #007dbd 0%, #143f6f 100%);color:#fff}.cert .cert__mark svg{width:26px;height:26px}.cert strong{display:block;font-family:"Montserrat",system-ui,sans-serif;color:#282f3c;font-size:1rem}.cert span{font-size:.82rem;color:#79818f}.telematik__grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(36px,6vw,72px);align-items:center}@media(max-width: 992px){.telematik__grid{grid-template-columns:1fr}}.telematik__features{display:grid;gap:14px;margin-top:26px}.telematik__feature{display:flex;gap:14px;align-items:center;padding:16px 20px;border-radius:10px;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.08)}.telematik__feature svg{width:22px;height:22px;color:#007dbd;flex:0 0 22px}.telematik__feature span{color:hsla(0,0%,100%,.85);font-size:1rem;font-weight: 600;}.tracker{position:relative;border-radius:14px;padding:28px;background:linear-gradient(160deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));border:1px solid hsla(0,0%,100%,.12);box-shadow:0 30px 60px rgba(0,0,0,.35)}.tracker__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;font-family:"Montserrat",system-ui,sans-serif;font-size:.85rem;color:hsla(0,0%,100%,.7)}.tracker__live{display:inline-flex;align-items:center;gap:8px;color:#589f48;font-weight:700}.tracker__live::before{content:"";width:9px;height:9px;border-radius:50%;background:#589f48;box-shadow:0 0 0 0 rgba(88,159,72,.7);animation:pulse 1.8s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(88,159,72,.6)}70%{box-shadow:0 0 0 12px rgba(88,159,72,0)}100%{box-shadow:0 0 0 0 rgba(88,159,72,0)}}.tracker__route{position:relative;height:150px;border-radius:10px;background:linear-gradient(0deg, rgba(0, 125, 189, 0.18), rgba(0, 125, 189, 0.04)),repeating-linear-gradient(0deg, transparent 0 23px, rgba(255, 255, 255, 0.05) 23px 24px),repeating-linear-gradient(90deg, transparent 0 23px, rgba(255, 255, 255, 0.05) 23px 24px);overflow:hidden}.tracker__route svg{position:absolute;inset:0;width:100%;height:100%}.tracker__metrics{display:grid;grid-template-columns:repeat(3, 1fr);gap:14px;margin-top:22px}.tracker__metric{text-align:center}.tracker__metric strong{display:block;font-family:"Montserrat",system-ui,sans-serif;font-size:1.3rem;color:#fff}.tracker__metric span{font-size:.72rem;color:hsla(0,0%,100%,.55);letter-spacing:.04em}.warehouse__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,72px);align-items:center}@media(max-width: 992px){.warehouse__grid{grid-template-columns:1fr}}.warehouse__features{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}@media(max-width: 576px){.warehouse__features{grid-template-columns:1fr}}.warehouse__feature{display:flex;gap:14px;align-items:flex-start}.warehouse__feature svg{width:26px;height:26px;color:#007dbd;flex:0 0 26px;margin-top:2px}.warehouse__feature strong{display:block;font-family:"Montserrat",system-ui,sans-serif;color:#282f3c;font-size:.98rem}.warehouse__feature span{font-size:.9rem;color:#79818f}.team__cards{margin-top:clamp(36px,5vw,52px)}.team-card{text-align:center;padding:36px 26px}.team-card__avatar{width:84px;height:84px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:1.5rem;color:#fff;background:linear-gradient(135deg, #007dbd, #143f6f)}.team-card:nth-child(2n) .team-card__avatar{background:linear-gradient(135deg, #589f48, #335223)}.team-card:nth-child(3n) .team-card__avatar{background:linear-gradient(135deg, #007dbd, rgb(213.2670807453, 152.9639751553, 23.5329192547))}.team-card h3{margin-bottom:.2rem;font-size:1.15rem}.team-card__role{font-family:"Montserrat",system-ui,sans-serif;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:#007dbd;margin-bottom:14px}.team-card__contact{display:flex;flex-direction:column;gap:4px;font-size:.9rem}.team-card__contact a{color:#79818f}.team-card__contact a:hover{color:#007dbd}.news-card{display:flex;flex-direction:column;padding:0;overflow:hidden}.news-card__media{height:150px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg, #007dbd, #143f6f)}.news-card__media svg{width:46px;height:46px;opacity:.92}.news-card:nth-child(2) .news-card__media{background:linear-gradient(135deg, #589f48, #335223)}.news-card:nth-child(3) .news-card__media{background:linear-gradient(135deg, #143f6f, #0a2240)}.news-card__body{padding:26px 28px 30px}.news-card__date{font-family:"Montserrat",system-ui,sans-serif;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:#007dbd;color:hsl(40.9302325581,80.1242236025%,52.431372549%);margin-bottom:10px}.news-card h3{font-size:1.12rem;margin-bottom:.5rem}.news-card p{font-size:.93rem}.news-card__link{margin-top:14px;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.88rem;color:#007dbd;display:inline-flex;align-items:center;gap:6px}.news-card__link svg{width:16px;height:16px;transition:transform .2s cubic-bezier(0.4, 0, 0.2, 1)}.news-card__link:hover svg{transform:translateX(4px)}.partners{overflow:hidden}.partners__head{margin-bottom:clamp(28px,4vw,48px)}.marquee{display:flex;flex-direction:column;gap:clamp(18px,2.4vw,30px);-webkit-mask-image:linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);mask-image:linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent)}.marquee__row{display:flex;overflow:hidden}.marquee__track{display:flex;flex:0 0 auto;align-items:center;width:max-content;will-change:transform;animation:marquee-left var(--speed, 40s) linear infinite}.marquee__row--reverse .marquee__track{animation-name:marquee-right}.marquee:hover .marquee__track,.marquee__track:focus-within{animation-play-state:paused}.marquee__logo{display:inline-flex;align-items:center;justify-content:center;height:48px;margin-right:clamp(40px,6vw,84px)}.marquee__logo img{height:100%;width:auto;max-width:none;object-fit:contain;filter:grayscale(1);opacity:.55;transition:filter .25s cubic-bezier(0.4, 0, 0.2, 1),opacity .25s cubic-bezier(0.4, 0, 0.2, 1)}.marquee__logo:hover img{filter:none;opacity:1}@keyframes marquee-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes marquee-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}@media(prefers-reduced-motion: reduce){.marquee__track{animation:none}.marquee__row{overflow-x:auto;scrollbar-width:none}.marquee__row::-webkit-scrollbar{display:none}}.contact__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(36px,6vw,72px)}@media(max-width: 992px){.contact__grid{grid-template-columns:1fr}}.contact__items{display:grid;gap:8px;margin-top:28px}.contact__item{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid hsla(0,0%,100%,.12)}.contact__item .contact__icon{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:hsla(0,0%,100%,.08);color:#fff}.contact__item .contact__icon svg{width:20px;height:20px}.contact__item .contact__label{font-size:1rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:hsla(0,0%,100%,.5)}.contact__item .contact__value{color:#fff;font-size:1.02rem;font-family:"Montserrat",system-ui,sans-serif}.contact__item a.contact__value:hover{color:#2583b3}.contact__form{background:transparent;border-radius:14px;padding:clamp(28px,4vw,44px);box-shadow:0 18px 50px rgba(20,63,111,.1)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width: 576px){.form-row{grid-template-columns:1fr}}.field{margin-bottom:18px}.field label{display:block;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.82rem;color:#fff;margin-bottom:7px}.field input,.field textarea{width:100%;font-family:"Open Sans",system-ui,sans-serif;font-size:1rem;color:#282f3c;padding:13px 15px;border:1px solid #e6e9ee;border-radius:10px;background:#f4f7fa;transition:border-color .2s cubic-bezier(0.4, 0, 0.2, 1),background .2s cubic-bezier(0.4, 0, 0.2, 1)}.field input:focus,.field textarea:focus{outline:none;border-color:#007dbd;background:#fff;box-shadow:0 0 0 4px rgba(0,125,189,.12)}.field textarea{resize:vertical;min-height:130px}.contact__form .form-note{font-size:.8rem;color:#79818f;margin:14px 0 0;text-align:center}.footer{padding:clamp(56px,7vw,80px) clamp(22px,5vw,64px) clamp(40px,5vw,56px)}.footer__top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:clamp(30px,5vw,60px);padding-bottom:20px;}@media(max-width: 992px){.footer__top{grid-template-columns:1fr 1fr}}@media(max-width: 576px){.footer__top{grid-template-columns:1fr}}.footer-meta {width: 20px;height: 20px;display: inline-flex;}.footer__brand .logo__short{width:190px;height:auto;animation:none}.footer__brand p{margin-top:12px;max-width:38ch;font-size:1rem;font-weight:600;letter-spacing: 0.3px;line-height: 1.6}.footer__col-titel{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;line-height:1.15;color:#0c213d;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}.footer__col ul{display:grid;gap:2px}.footer__col a{font-weight:600;color: #4f545a; font-size: 0.82rem;letter-spacing: .12em; text-transform: uppercase;font-family: 'Montserrat'}.footer__col a:hover{color:#007dbd}

/* ---- Nav-Icon Mikroanimationen ---- */
/* bewegliche Teile vorbereiten */
.nav__icon svg .ic-truck,.nav__icon svg .ic-plane,.nav__icon svg .ic-ship,.nav__icon svg .ic-door,.nav__icon svg .ic-flap,.nav__icon svg .ic-seal,.nav__icon svg .ic-cross,.nav__icon svg .ic-front,.nav__icon svg .ic-line{transform-box:fill-box;transition:transform .4s cubic-bezier(0.4,0,0.2,1)}
.nav__icon svg .ic-door,.nav__icon svg .ic-flap{transform-origin:top}
.nav__icon svg .ic-plane,.nav__icon svg .ic-cross,.nav__icon svg .ic-seal,.nav__icon svg .ic-truck{transform-origin:center}
.nav__icon svg .ic-ship,.nav__icon svg .ic-front{transform-origin:bottom}

/* Desktop: nur auf Geraeten mit echtem Hover (verhindert klebrige Zustaende auf Touch) */
@media(hover:hover){
.nav__link:hover .ic-door,.nav__link:focus-visible .ic-door{transform:scaleY(.12)}
.nav__link:hover .ic-flap,.nav__link:focus-visible .ic-flap{transform:scaleY(-.6)}
.nav__link:hover .ic-plane,.nav__link:focus-visible .ic-plane{transform:rotate(22deg)}
.nav__link:hover .ic-seal,.nav__link:focus-visible .ic-seal{transform:scale(1.13)}
.nav__link:hover .ic-front,.nav__link:focus-visible .ic-front{transform:translateY(-1px) scale(1.06)}
.nav__link:hover .ic-truck,.nav__link:focus-visible .ic-truck{transform:translateX(2px)}
.nav__link:hover .ic-ship,.nav__link:focus-visible .ic-ship{transform:rotate(5deg)}
.nav__link:hover .ic-cross,.nav__link:focus-visible .ic-cross{animation:ic-spin .8s ease}
.nav__link:hover .ic-line,.nav__link:focus-visible .ic-line{animation:ic-bob .9s ease}
.nav__link:hover .ic-line2,.nav__link:focus-visible .ic-line2{animation-delay:.1s}
.nav__link:hover .ic-line3,.nav__link:focus-visible .ic-line3{animation-delay:.2s}
}

/* Mobil: einmaliges, versetztes Abspielen beim Oeffnen des Menues */
@media(max-width: 992px){
.nav.is-open .ic-door{animation:ic-door-demo .9s ease both}
.nav.is-open .ic-flap{animation:ic-flap-demo .9s ease both}
.nav.is-open .ic-plane{animation:ic-plane-demo .9s ease both}
.nav.is-open .ic-seal{animation:ic-seal-demo .9s ease both}
.nav.is-open .ic-front{animation:ic-front-demo .9s ease both}
.nav.is-open .ic-truck{animation:ic-truck-demo .9s ease both}
.nav.is-open .ic-ship{animation:ic-ship-demo .9s ease both}
.nav.is-open .ic-cross{animation:ic-spin .9s ease both}
.nav.is-open .ic-line{animation:ic-bob .9s ease both}
.nav.is-open .nav__link:nth-of-type(2) [class*="ic-"]{animation-delay:.05s}
.nav.is-open .nav__link:nth-of-type(3) [class*="ic-"]{animation-delay:.1s}
.nav.is-open .nav__link:nth-of-type(4) [class*="ic-"]{animation-delay:.15s}
.nav.is-open .nav__link:nth-of-type(5) [class*="ic-"]{animation-delay:.2s}
.nav.is-open .nav__link:nth-of-type(6) [class*="ic-"]{animation-delay:.25s}
.nav.is-open .nav__link:nth-of-type(7) [class*="ic-"]{animation-delay:.3s}
.nav.is-open .nav__link:nth-of-type(8) [class*="ic-"]{animation-delay:.35s}
.nav.is-open .nav__link:nth-of-type(9) [class*="ic-"]{animation-delay:.4s}
}

@keyframes ic-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes ic-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-1.6px)}}
@keyframes ic-door-demo{0%,10%{transform:scaleY(1)}45%,60%{transform:scaleY(.12)}100%{transform:scaleY(1)}}
@keyframes ic-flap-demo{0%,10%{transform:scaleY(1)}45%,60%{transform:scaleY(-.6)}100%{transform:scaleY(1)}}
@keyframes ic-plane-demo{0%,10%{transform:rotate(0)}50%{transform:rotate(22deg)}100%{transform:rotate(0)}}
@keyframes ic-seal-demo{0%,100%{transform:scale(1)}50%{transform:scale(1.13)}}
@keyframes ic-front-demo{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-1px) scale(1.06)}}
@keyframes ic-truck-demo{0%,100%{transform:translateX(0)}50%{transform:translateX(2px)}}
@keyframes ic-ship-demo{0%,100%{transform:rotate(0)}30%{transform:rotate(5deg)}65%{transform:rotate(-3deg)}}

/* ---- Hamburger (Inline-SVG, robust) ---- */
.nav__burger{width:26px;height:26px;display:block}
.nav__burger path{transform-box:fill-box;transform-origin:center;transition:transform .3s cubic-bezier(0.4,0,0.2,1),opacity .2s cubic-bezier(0.4,0,0.2,1)}
.nav.is-open .nav__burger-top{transform:translateY(5px) rotate(45deg)}
.nav.is-open .nav__burger-mid{opacity:0}
.nav.is-open .nav__burger-bot{transform:translateY(-5px) rotate(-45deg)}

/* ---- Hero: Text + drehender Punkte-Globus ---- */
.hero__grid{position:relative;z-index:1;width:100%;max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(28px,5vw,64px)}
.hero__text{max-width:620px}
.hero__text h1{line-height:1.3}
.hero__modes{list-style:none;display:flex;flex-wrap:wrap;gap:12px;margin:2rem 0 0;padding:0}
.hero__modes a{display:inline-flex;align-items:center;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:10px 20px;border:1px solid hsla(0,0%,100%,.45);border-radius:999px;text-decoration:none;transition:border-color .2s cubic-bezier(0.4,0,0.2,1),color .2s cubic-bezier(0.4,0,0.2,1),background .2s cubic-bezier(0.4,0,0.2,1)}
.hero__modes a:hover{border-color:#007dbd;color:#007dbd;background:hsla(0,0%,100%,.05)}
.hero__globe{justify-self:center;width:100%;max-width:520px;aspect-ratio:1}
.hero__globe canvas{width:100%;height:100%;display:block}
@media(min-width: 993px){.hero__grid,.hero>.hero__inner,.hero--sky .hero__inner,.hero--road .hero__inner{transform:translateX(-24px)}}
@media(max-width: 992px){.hero__grid{grid-template-columns:1fr}.hero__globe{max-width:360px}}
@media(max-width: 576px){.hero__globe{max-width:280px}}

.page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact){
  padding-left:350px!important;
  padding-right:clamp(22px,5vw,64px)!important;
}
.page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact)::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:0;
  height:260px;
  background:linear-gradient(180deg,rgba(1,7,14,0) 0%,rgba(1,7,14,.58) 48%,rgba(1,7,14,.92) 76%,rgba(1,7,14,1) 100%);
  pointer-events:none;
}
.page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__grid{
  max-width:1180px;
  margin:0;
  transform:none;
}
.page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__globe{
  transform:translateX(clamp(-4rem,-3vw,-2rem));
}
@media(max-width:1299px){
  .page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__grid{
    grid-template-columns:1fr;
  }
  .page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__globe{
    order:1;
    justify-self:start;
    transform:none;
  }
  .page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__text{
    order:2;
  }
  .page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__text h1{
    line-height:1.62;
  }
}
@media(max-width:992px){
  .page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact){
    padding-left:clamp(22px,5vw,64px)!important;
  }
  .page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__globe{
    justify-self:center;
  }
}
@media(max-width:576px){
  .page > .hero#home:not(.hero--road):not(.hero--sky):not(.hero--sea):not(.hero--contact) .hero__text h1{
    line-height:1.72;
  }
}

/* ===== Allgemeine Anpassungen ===== */
body{font-weight:600}
.eyebrow{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:1rem;letter-spacing:.14em;text-transform:uppercase;color:#a9a4a4;margin-bottom:0.7rem}
.eyebrow::before{display:none}
.section--dark .eyebrow{color:#cccccc}
.hero h1 span{color:#fff}
.hero__eyebrow{color:#cccccc}
.hero__modes a:hover{border-color:#fff;color:#fff;background:hsla(0,0%,100%,.06)}

/* ===== Hero: durchlaufendes Foto-Marquee ===== */
.tm-hero{padding:0;margin-bottom:6px}
.tm-marquee{width:100vw;margin-left:calc(-28px - var(--nav-w));overflow:hidden;cursor:grab;background:#fff;padding:12px 0;touch-action:pan-y}
.tm-marquee.is-grab{cursor:grabbing}
.tm-mtrack{display:flex;gap:0;width:max-content;will-change:transform;user-select:none}
.tm-shot{position:relative;flex:0 0 auto;width:150px;margin:0 0 0 -2.5rem}
.tm-shot img{width:150px;height:auto;display:block;pointer-events:none;-webkit-user-drag:none}
.tm-shot .tm-tag{position:absolute;top:auto;left:auto;right:8px;bottom:8px;border-radius:0;box-shadow:none;background:#3a4250;color:#fff;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.66rem;letter-spacing:.03em;text-transform:uppercase;padding:4px 9px}
.tm-shot--alik{width:150px;margin-left:-5.3rem;margin-right:1rem;z-index:43}
.tm-shot--alik img{width:150px}
.tm-shot--alik .tm-tag{right:8px;left:auto}
@media(max-width: 992px){.tm-marquee{margin-left:-28px}.tm-hero{padding-top:64px}}
.tm-hero--globe-bg{position:relative;overflow:hidden;padding:120px 0 40px;color:#fff;background:radial-gradient(110% 90% at 85% 10%, rgba(0, 75, 120, 0.38) 0%, transparent 55%), radial-gradient(90% 80% at 0% 100%, rgba(45, 95, 45, 0.22) 0%, transparent 50%), linear-gradient(140deg, #0b2748 0%, #010308 60%, #051323 100%)}
.tm-hero--globe-bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255, 255, 255, 0.08) 1.4px, transparent 1.4px);background-size:34px 34px;mask-image:linear-gradient(90deg, transparent, #000 40%);pointer-events:none}
.tm-hero--globe-bg .section__head,.tm-hero--globe-bg .tm-marquee{position:relative;z-index:1}
.tm-hero--globe-bg .section__head{margin-top:0!important}
.tm-hero--globe-bg h1,.tm-hero--globe-bg .lead{color:#fff}
.tm-hero--globe-bg .tm-marquee{background:transparent}

/* ===== Filter-Buttons ===== */
.tm-filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 26px}
.tm-filter{cursor:pointer;border:0;border-radius:0;padding:11px 20px;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.92rem;letter-spacing:.05em;text-transform:uppercase;color:#fff;background:#3a4250}
.tm-filter:hover{opacity:.82}
.tm-filter.is-active{opacity:1;box-shadow:inset 0 -3px 0 rgba(0,0,0,.3)}

/* ===== Personen-Grid (3 / 2 Spalten) ===== */
.tm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pc{display:flex;align-items:stretch;gap:14px;background:#fff;border:1px solid #e6e9ee;border-radius:4px;padding:16px}
.pc__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.pc__name{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:1.02rem;letter-spacing:.4px;color:#143f6f;margin:0 0 3px;line-height:1.2}
.pc__name a{color:inherit;text-decoration:none}
.pc__name a:hover{color:#0f3258}
.pc__role{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.92rem;letter-spacing:.4px;text-transform:uppercase;color:#cccccc;margin:0 0 10px}
.pc__tel{font-size:.98rem;font-weight:600;color:#2c333f;text-decoration:none;margin-bottom:5px}
.pc__tel:hover{color:#143f6f}
.pc__links{margin-top:auto;display:flex;align-items:center;gap:10px}
.pc__mail{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:#5b6470;border:1px solid #e6e9ee}
.pc__mail svg{width:19px;height:19px}
.pc__mail:hover{color:#fff;background:#143f6f;border-color:#143f6f}
.pc__li{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:#5b6470;border:1px solid #e6e9ee}
.pc__li svg{width:18px;height:18px}
.pc__li:hover{color:#fff;background:#143f6f;border-color:#143f6f}
.pc__more{display:inline-flex;align-items:center;height:34px;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:#143f6f;background:#fff;border:1px solid #e6e9ee;padding:0 12px;text-decoration:none}
.pc__more:hover{background:#143f6f;color:#fff;border-color:#143f6f}
.pc__photo{flex:0 0 auto;width:78px;display:block}
.pc__photo img{width:78px;height:auto;display:block}
.team-globe-page .team-directory .wrap{max-width:none}
.team-globe-page .tm-grid{grid-template-columns:repeat(3,1fr)}
.team-globe-page .pc{gap:14px}
.team-globe-page .pc__text{justify-content:flex-start}
.team-globe-page .pc__name{padding-top:1rem}
.team-globe-page .pc__email{display:inline-flex;width:max-content;max-width:100%;font-size:.92rem;font-weight:700;color:#007dbd;text-decoration:none;margin:0 0 5px;overflow-wrap:anywhere}
.team-globe-page .pc__email:hover{color:#143f6f}
.team-globe-page .pc__vcard-link{display:inline-flex;align-items:center;height:34px;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:#143f6f;background:#fff;border:1px solid #e6e9ee;padding:0 12px;text-decoration:none}
.team-globe-page .pc__vcard-link:hover{background:#143f6f;color:#fff;border-color:#143f6f}
.team-globe-page .vcard-modal{position:fixed;inset:0;z-index:300;display:none;place-items:center;padding:28px;background:rgba(1,3,8,.72)}
.team-globe-page .vcard-modal:target{display:grid}
.team-globe-page .vcard-modal__backdrop{position:absolute;inset:0}
.team-globe-page .vcard-modal__panel{position:relative;z-index:1;width:min(90vw,380px);background:#fff;border:1px solid #e6e9ee;padding:30px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.team-globe-page .vcard-modal__panel .eyebrow{margin-bottom:.6rem}
.team-globe-page .vcard-modal__panel h2{font-size:1.35rem;margin-bottom:18px}
.team-globe-page .vcard-modal__panel img{width:min(72vw,260px);height:auto;margin:0 auto}
.team-globe-page .vcard-modal__close{position:absolute;top:10px;right:12px;width:32px;height:32px;display:grid;place-items:center;color:#143f6f;font-size:1.6rem;line-height:1;text-decoration:none}
@media(max-width: 700px){.team-globe-page .pc__vcard-link,.team-globe-page .vcard-modal{display:none}}
@media(max-width: 992px){.team-globe-page .tm-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width: 600px){.team-globe-page .tm-grid{grid-template-columns:1fr}.team-globe-page .pc{padding:14px;gap:12px}.team-globe-page .pc__photo,.team-globe-page .pc__photo img{width:68px}.team-globe-page .pc__email{width:100%;font-size:.84rem}}
@media(max-width: 992px){.tm-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width: 600px){.tm-grid{grid-template-columns:1fr}}
@media(max-width: 480px){.pc{padding:12px;gap:10px}.pc__photo,.pc__photo img{width:64px}}

/* ===== Auszeichnung ===== */
.tm-award-sec{padding-top:clamp(40px,6vw,76px);padding-bottom:clamp(40px,6vw,76px)}
.tm-award{display:flex;align-items:center;gap:clamp(24px,5vw,56px);justify-content:center;flex-wrap:wrap}
.tm-award__logo img{width:150px;height:auto;display:block}
.tm-award__quote{font-size:clamp(1.12rem,1.8vw,1.45rem);font-weight:600;color:#3a414e;max-width:580px;line-height:1.5;margin:0;font-family: Montserrat;}
.tm-award-hero{--parallax-image:url("../media/greatplacetowork-2026.webp");--parallax-position:center center;--parallax-mobile-position:22% calc(50% + var(--award-y,0px));position:relative;min-height:clamp(520px,72vh,760px);display:grid;align-items:center;justify-items:end;padding:clamp(70px,8vw,120px) clamp(78px,12vw,220px);overflow:hidden;background-image:linear-gradient(90deg,rgba(1,3,8,.06) 0%,rgba(1,3,8,.12) 42%,rgba(1,3,8,.72) 68%,rgba(1,3,8,.88) 100%),var(--parallax-image);background-position:center center,var(--parallax-position);background-size:cover,cover;background-repeat:no-repeat,no-repeat;background-attachment:scroll,fixed}
.tm-award-hero--kerndestinationen{--parallax-image:url("../media/luftfracht-karte.webp");--parallax-position:center center;--parallax-mobile-position:center calc(50% + var(--award-y,0px))}
.tm-award-hero--luftfracht-karte{--parallax-image:url("../media/luftfracht-karte2.webp");--parallax-position:center center;--parallax-mobile-position:center calc(50% + var(--award-y,0px))}
.tm-award-hero--luftfracht-karte{justify-items:start;padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important;background-image:linear-gradient(90deg,rgba(1,3,8,.78) 0%,rgba(1,3,8,.66) 38%,rgba(1,3,8,.24) 72%,rgba(1,3,8,.08) 100%),var(--parallax-image)}
.tm-award-hero--kerndestinationen{justify-items:start;padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important;background-image:
  linear-gradient(90deg,rgba(1,7,14,.58) 0%,rgba(1,7,14,.42) 36%,rgba(1,7,14,.14) 70%,rgba(1,7,14,0) 100%),
  var(--parallax-image);background-position:center center,var(--parallax-position);background-size:cover,cover;background-repeat:no-repeat,no-repeat;background-attachment:scroll,fixed}
.tm-award-hero--luftfracht-karte .tm-award-hero__text{width:min(730px,100%)}
.tm-award-hero__text{position:relative;z-index:1;width:min(520px,100%);color:#fff}
.tm-award-hero__text .eyebrow,.tm-award-hero__text h2{color:#fff}
.tm-award-hero__text h2{font-size:clamp(1.1rem,2.25vw,2.25rem)}
.tm-award-hero__text p:not(.eyebrow){font-size:clamp(1.05rem,1.5vw,1.28rem);line-height:1.65;color:rgba(255,255,255,.86);font-weight:600}
.map-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.map-legend__item{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:rgba(1,3,8,.54);color:#fff;font-family:"Montserrat",system-ui,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;box-shadow:0 12px 30px rgba(0,0,0,.22)}
.map-legend__item svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
.map-legend__item--ceiv{color:#5fd36a}
.map-legend__item--gdp{color:#ff6b6b}
@media(max-width: 900px){.tm-award-hero{justify-items:start;padding:clamp(70px,8vw,120px) clamp(24px,7vw,110px);background-image:linear-gradient(180deg,rgba(1,3,8,.08) 0%,rgba(1,3,8,.24) 46%,rgba(1,3,8,.84) 100%),var(--parallax-image);background-position:center center,var(--parallax-mobile-position);background-size:cover,cover;background-repeat:no-repeat,no-repeat;background-attachment:scroll,scroll;align-items:end}.tm-award-hero__text{width:min(620px,100%)}}
.img-wobble {
  display: inline-block;
  position: relative;
  animation: badge-glow 1.8s ease-in-out infinite;
}

.cert-badge img {
  display: block;
  max-width: 180px;
  height: auto;
}

@keyframes badge-glow {
  0%, 100% {
    transform: scale(1);
    filter: drop-shadow(0 8px 18px rgba(20, 63, 111, .10));
  }

  50% {
    transform: scale(1.025);
    filter: drop-shadow(0 12px 26px rgba(0, 125, 189, .28));
  }
}
/* ===== Werte ===== */
.tm-values{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}
.tm-value{background:#fff;border:1px solid #e6e9ee;border-radius:4px;padding:22px}
.tm-value .tm-vbar{width:34px;height:3px;background:#143f6f;margin-bottom:14px}
.tm-value h3{margin:0 0 8px}
.tm-value p{margin:0;color:#4a5160;font-size:.92rem}
@media(max-width: 992px){.tm-values{grid-template-columns:repeat(2,1fr)}}
@media(max-width: 560px){.tm-values{grid-template-columns:1fr}}
.team-globe-page .tm-story{background:linear-gradient(180deg,#fff 0%,#f5f8fb 48%,#fff 100%)}
.team-globe-page .tm-story .section__head{position:relative;z-index:0;padding:0 0 24px}
.team-globe-page .tm-story .section__head .lead{margin-left:auto;margin-right:auto}
.team-globe-page .tm-story .tm-values{display:block;max-width:820px;margin:clamp(36px,7vw,86px) auto 0;counter-reset:story}
.team-globe-page .tm-story .tm-value{counter-increment:story;position:sticky;z-index:2;top:118px;min-height:clamp(280px,36vh,430px);display:flex;flex-direction:column;justify-content:flex-end;margin:0 0 22vh;padding:clamp(28px,5vw,54px);overflow:hidden;border:0;background:linear-gradient(140deg,#fff 0%,#f7fbff 62%,#edf6fb 100%);box-shadow:0 22px 58px rgba(20,63,111,.13);transform-origin:center top}
.team-globe-page .tm-story .tm-value::before{content:"0" counter(story);position:absolute;top:22px;right:clamp(22px,4vw,46px);font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:clamp(3.6rem,9vw,7rem);line-height:1;color:rgba(0,125,189,.08)}
.team-globe-page .tm-story .tm-value::after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,#589f48,#007dbd)}
.team-globe-page .tm-story .tm-value:nth-child(1){z-index:2}
.team-globe-page .tm-story .tm-value:nth-child(2){z-index:3;top:134px}
.team-globe-page .tm-story .tm-value:nth-child(3){z-index:4;top:150px}
.team-globe-page .tm-story .tm-value:nth-child(4){z-index:5;top:166px;margin-bottom:4vh}
.team-globe-page .tm-story .tm-vbar{width:54px;background:linear-gradient(90deg,#589f48,#007dbd)}
.team-globe-page .tm-story .tm-value h3{max-width:560px;font-size:clamp(1.08rem,1.85vw,1.58rem);color:#143f6f}
.team-globe-page .tm-story .tm-value p{max-width:620px;font-size:clamp(1rem,1.35vw,1.14rem);line-height:1.65}
@supports (animation-timeline:view()){
  .team-globe-page .tm-story .tm-value{animation:story-card linear both;animation-timeline:view();animation-range:entry 8% exit 76%}
  @keyframes story-card{0%{opacity:.35;transform:scale(.94) translateY(28px)}24%,62%{opacity:1;transform:scale(1) translateY(0)}100%{opacity:.22;transform:scale(.92) translateY(-24px)}}
}
@media(max-width: 992px){.team-globe-page .tm-story .section__head{position:static;background:none;backdrop-filter:none}.team-globe-page .tm-story .tm-values{display:block;max-width:none;margin-top:30px}.team-globe-page .tm-story .tm-value{position:sticky;top:82px!important;min-height:clamp(220px,34vh,320px);justify-content:flex-start;margin:0 0 14vh;padding:76px 24px 24px}.team-globe-page .tm-story .tm-value::before{top:14px;right:22px;font-size:clamp(2.55rem,14vw,4.4rem)}.team-globe-page .tm-story .tm-value:nth-child(2){top:96px!important}.team-globe-page .tm-story .tm-value:nth-child(3){top:110px!important}.team-globe-page .tm-story .tm-value:nth-child(4){top:124px!important;margin-bottom:4vh}.team-globe-page .tm-story .tm-value h3{font-size:1.05rem}.team-globe-page .tm-story .tm-value p{font-size:.9rem;line-height:1.55}}
@media(max-width: 560px){.team-globe-page .tm-story .tm-value{min-height:clamp(210px,36vh,310px);padding:70px 20px 22px}.team-globe-page .tm-story .tm-value::before{font-size:clamp(2.4rem,18vw,4rem)}}
@media(max-width: 992px){.js-ready .tm-award-hero__text.reveal,.js-ready .team-globe-page .tm-story .tm-value.reveal{opacity:0;transform:translateY(34px) scale(.96);transition:opacity .72s cubic-bezier(0.4,0,0.2,1),transform .72s cubic-bezier(0.4,0,0.2,1)}.js-ready .tm-award-hero__text.reveal.is-visible,.js-ready .team-globe-page .tm-story .tm-value.reveal.is-visible{opacity:1;transform:none}}

/* ===== Detailseite ===== */
.tm-back{display:inline-block;margin-bottom:24px;color:#5a6270;text-decoration:none;font-weight:700;font-size:.85rem}
.tm-back:hover{color:#143f6f}
.tm-profile__grid{display:grid;grid-template-columns:200px 1fr;gap:36px;align-items:start}
.tm-profile__photo img{width:200px;height:auto;display:block}
.tm-profile__info .tm-tag{display:inline-block;background:var(--tag,#143f6f);font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;color:#fff;padding:4px 10px;margin-bottom:14px}
.tm-profile__role{font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.9rem;letter-spacing:.4px;text-transform:uppercase;color:#3a414e;margin:0 0 16px}
.tm-profile__contact{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.tm-profile__contact a{display:inline-flex;align-items:center;gap:10px;color:#4a5160;text-decoration:none;font-size:.95rem}
.tm-profile__contact a:hover{color:#143f6f}
.tm-pic{display:inline-flex;color:#9aa4b2}
@media(max-width: 560px){.tm-profile__grid{grid-template-columns:1fr}}
.profile-dark-page{background:#010308}
.tm-profile-dark{min-height:100vh;display:flex;align-items:center;background:radial-gradient(110% 90% at 88% 8%,rgba(0,125,189,.28) 0%,transparent 54%),radial-gradient(80% 70% at 0% 100%,rgba(88,159,72,.16) 0%,transparent 50%),linear-gradient(140deg,#0b2748 0%,#010308 62%,#051323 100%);color:rgba(255,255,255,.78);overflow:hidden}
.tm-profile-dark .tm-back{color:rgba(255,255,255,.68)}
.tm-profile-dark .tm-back:hover{color:#fff}
.tm-profile-dark .tm-profile__grid{grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:clamp(42px,7vw,96px);align-items:center}
.tm-profile-dark .tm-profile__photo{position:relative;isolation:isolate;width:min(300px,52vw)}
.tm-profile-dark .tm-profile__photo>img:not(.tm-profile__mark){position:relative;z-index:2;width:min(260px,46vw);height:auto;filter:drop-shadow(0 28px 40px rgba(0,0,0,.42))}
.tm-profile__mark{position:absolute;z-index:1;right:-20%;top:50%;width:min(300px,58vw);height:auto;opacity:.18;filter:drop-shadow(0 0 28px rgba(0,125,189,.5));transform:translateY(-50%);pointer-events:none}
.tm-profile__mark .logo__short{display:block;width:100%;height:auto;flex:none;opacity:1}
.tm-profile-dark .tm-profile__info h1,.tm-profile-dark .tm-profile__role{color:#fff}
.tm-profile-dark .tm-profile__info .lead{color:rgba(255,255,255,.78)}
.tm-profile-dark .tm-profile__contact a{color:rgba(255,255,255,.82)}
.tm-profile-dark .tm-profile__contact a:hover{color:#77c9f6}
.tm-profile-dark .tm-pic{color:#77c9f6}
.tm-profile__actions{display:flex;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}
.tm-profile__action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.18);font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;text-decoration:none;background:rgba(255,255,255,.07)}
.tm-profile__action:hover{background:#77c9f6;color:#071528;border-color:#77c9f6}
.tm-profile__action--icon{width:38px;padding:0}
.tm-profile__action svg{width:18px;height:18px}
.profile-dark-page .vcard-modal{position:fixed;inset:0;z-index:300;display:none;place-items:center;padding:28px;background:rgba(1,3,8,.72)}
.profile-dark-page .vcard-modal:target{display:grid}
.profile-dark-page .vcard-modal__backdrop{position:absolute;inset:0}
.profile-dark-page .vcard-modal__panel{position:relative;z-index:1;width:min(90vw,380px);background:#fff;border:1px solid #e6e9ee;padding:30px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.profile-dark-page .vcard-modal__panel .eyebrow{margin-bottom:.6rem}
.profile-dark-page .vcard-modal__panel h2{font-size:1.35rem;margin-bottom:18px}
.profile-dark-page .vcard-modal__panel img{width:min(72vw,260px);height:auto;margin:0 auto}
.profile-dark-page .vcard-modal__close{position:absolute;top:10px;right:12px;width:32px;height:32px;display:grid;place-items:center;color:#143f6f;font-size:1.6rem;line-height:1;text-decoration:none}
@media(max-width: 700px){.tm-profile-dark{align-items:flex-start}.tm-profile-dark .tm-profile__grid{grid-template-columns:1fr;gap:26px}.tm-profile-dark .tm-profile__photo{justify-self:center;width:220px;margin-inline:auto}.tm-profile-dark .tm-profile__photo>img:not(.tm-profile__mark){width:190px;margin-inline:auto}.tm-profile__mark{left:56%;right:auto;top:50%;width:250px;transform:translate(-50%,-50%)}}
.profile-white-page{background:#fff}
.tm-profile-white{min-height:100vh;display:flex;align-items:center;background:#fff;color:#4a5160;overflow:hidden}
.tm-profile-white .tm-profile__grid{grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:clamp(42px,7vw,96px);align-items:center}
.tm-profile-white .tm-profile__photo{position:relative;isolation:isolate;width:min(300px,52vw)}
.tm-profile-white .tm-profile__photo>img:not(.tm-profile__mark){position:relative;z-index:2;width:min(260px,46vw);height:auto;filter:drop-shadow(0 22px 34px rgba(20,63,111,.18))}
.tm-profile-white .tm-profile__mark{opacity:1;filter:drop-shadow(0 0 24px rgba(0,125,189,.18))}
.tm-profile-white .tm-profile__action{border-color:#e6e9ee;color:#143f6f;background:#fff}
.tm-profile-white .tm-profile__action:hover{background:#143f6f;color:#fff;border-color:#143f6f}
.profile-white-page .vcard-modal{position:fixed;inset:0;z-index:300;display:none;place-items:center;padding:28px;background:rgba(1,3,8,.42)}
.profile-white-page .vcard-modal:target{display:grid}
.profile-white-page .vcard-modal__backdrop{position:absolute;inset:0}
.profile-white-page .vcard-modal__panel{position:relative;z-index:1;width:min(90vw,380px);background:#fff;border:1px solid #e6e9ee;padding:30px;text-align:center;box-shadow:0 24px 70px rgba(20,63,111,.18)}
.profile-white-page .vcard-modal__panel .eyebrow{margin-bottom:.6rem}
.profile-white-page .vcard-modal__panel h2{font-size:1.35rem;margin-bottom:18px}
.profile-white-page .vcard-modal__panel img{width:min(72vw,260px);height:auto;margin:0 auto}
.profile-white-page .vcard-modal__close{position:absolute;top:10px;right:12px;width:32px;height:32px;display:grid;place-items:center;color:#143f6f;font-size:1.6rem;line-height:1;text-decoration:none}
@media(max-width: 700px){.tm-profile-white{align-items:flex-start}.tm-profile-white .tm-profile__grid{grid-template-columns:1fr;gap:26px}.tm-profile-white .tm-profile__photo{justify-self:center;width:220px;margin-inline:auto}.tm-profile-white .tm-profile__photo>img:not(.tm-profile__mark){width:190px;margin-inline:auto}}

/* Logo: gesamte Breite klickbar */
.logo__long{pointer-events:auto}

/* maps */
.map-wrap {width: 100%;height: 400px;overflow: hidden;}
.map-wrap iframe {width: 100%;height: 100%;border: 0;display: block;}
@media (max-width: 768px) {.map-wrap {height: 320px;}}

/* Hero title */
.hero--contact {min-height: 62vh;background:linear-gradient(90deg, rgba(10,28,51,.88),rgba(10,28,51,.42)),
    url("../media/kontakt.webp") center / cover no-repeat;}
.hero--contact h1 {font-size: clamp(3.2rem, 8vw, 4rem);line-height: .95;}
.hero--landverkehr {min-height: 62vh;background:linear-gradient(90deg, rgba(10,28,51,.88),rgba(10,28,51,.42)),
    url("../media/landverkehr.webp") center / cover no-repeat;}
.hero--landverkehr h1 {font-size: clamp(3.2rem, 8vw, 4rem);line-height: .95;}
.hero--luftfracht {min-height: 62vh;background:linear-gradient(90deg, rgba(10,28,51,.88),rgba(10,28,51,.42)),
    url("../media/luftfracht.webp") center / cover no-repeat;}
.hero--luftfracht h1 {font-size: clamp(3.2rem, 8vw, 4rem);line-height: .95;}
/* Kontakt form */
.form-check {display: flex;gap: 10px;align-items: flex-start;margin: 0 0 22px;font-size: .9rem;color: #fff;line-height: 1.5;}
.form-check input {margin-top: .28rem;flex: 0 0 auto;}
.form-check a {color: #007dbd;text-decoration: underline;}

  /* ==== SIGNATURE: locker aufgehängte Zertifikate ==== */
  .certwall{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.6vw,34px);padding-top:14px}
  @media(max-width:992px){.certwall{grid-template-columns:repeat(2,1fr);gap:30px}}
  @media(max-width:560px){.certwall{grid-template-columns:1fr;max-width:330px;margin-inline:auto}}
  .certdoc{
    position:relative;display:block;text-decoration:none;color:inherit;
    transform:rotate(var(--rot,0deg));
    transition:transform .45s cubic-bezier(.34,1.3,.4,1), filter .4s ease;
    outline-offset:6px;
  }
  .certdoc__card{
    background:#fff;border:1px solid var(--c-line);border-radius:16px;
    padding:34px 22px 24px;display:flex;flex-direction:column;align-items:center;
    text-align:center;gap:13px;
    box-shadow:0 12px 30px rgba(20,63,111,.07);
    transition:box-shadow .45s ease,border-color .45s ease;
    animation:doc-float 6.5s ease-in-out infinite;animation-delay:var(--d,0s);
    will-change:transform;
  }
  /* leichte „Aufhängung" oben */	.certdoc__pin{position:absolute;top:-7px;left:50%;transform:translateX(-50%);width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fbe7ad,var(--c-gold) 60%,#c79a2e 100%);box-shadow:0 3px 6px rgba(20,63,111,.35);z-index:2}
  .certdoc__seal{position:relative;overflow:hidden;width:74px;height:74px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--c-blue) 0%,var(--c-blue-dark) 100%);box-shadow:0 0 0 4px rgba(239,198,110,.38),0 10px 22px rgba(20,63,111,.28);}
  .certdoc--green .certdoc__seal{background:linear-gradient(135deg,var(--c-green) 0%,#335223 100%)}
  .certdoc__seal svg{width:34px;height:34px}
  .certdoc__seal::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.6) 50%,transparent 62%);
    transform:translateX(-130%);
    animation:seal-shine 5s ease-in-out infinite;animation-delay:var(--d,0s);  }
  .certdoc strong{display:block;font-family:"Montserrat",system-ui,sans-serif;color:var(--c-ink);font-size:1.08rem;letter-spacing:.01em}
  .certdoc__sub{font-size:.82rem;color:#79818f;line-height:1.4}
  .certdoc__open{margin-top:4px;display:inline-flex;align-items:center;gap:6px;font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--c-blue);opacity:.65;transition:opacity .3s ease,gap .3s ease;  }
  .certdoc__open svg{width:14px;height:14px}
  /* Hover: geraderücken, anheben, Siegel-Glanz */
  .certdoc:hover,.certdoc:focus-visible{transform:rotate(0deg) translateY(-12px) scale(1.03)}
  .certdoc:hover .certdoc__card,.certdoc:focus-visible .certdoc__card{box-shadow:0 26px 56px rgba(20,63,111,.2);border-color:transparent}
  .certdoc:hover .certdoc__open,.certdoc:focus-visible .certdoc__open{opacity:1;gap:10px}
  @keyframes doc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
  @keyframes seal-shine{0%,55%{transform:translateX(-130%)}78%,100%{transform:translateX(130%)}}
  /* ==== Qualitäts-Säulen (eure .card-Optik) ==== */
  .qgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,26px)}
  @media(max-width:680px){.qgrid{grid-template-columns:1fr}}
  .qcard{position:relative;background:#fff;border:1px solid var(--c-line);border-radius:14px;padding:30px 28px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
  .qcard:hover{transform:translateY(-6px);box-shadow:0 18px 50px rgba(20,63,111,.1);border-color:transparent}
  .qcard__icon{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:14px;margin-bottom:18px;color:var(--c-blue);background:rgba(0,125,189,.1);transition:background .3s ease,color .3s ease}
  .qcard__icon svg{width:26px;height:26px}
  .qcard:hover .qcard__icon{background:var(--c-blue);color:#fff}
  .qcard h3{margin-bottom:.4rem}
  .qcard p{margin:0;font-size:.97rem;line-height:1.6}

  /* ==== Sicherheitsversprechen (eure Feature-Pills) ==== */
  .promise__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:8px}
  @media(max-width:680px){.promise__grid{grid-template-columns:1fr}}
  .promise__item{display:flex;gap:14px;align-items:center;padding:18px 22px;border-radius:12px;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1)}
  .promise__item svg{width:24px;height:24px;color:var(--c-gold);flex:0 0 24px}
  .promise__item span{color:hsla(0,0%,100%,.88);font-size:.98rem;line-height:1.4}
.mitte {text-align: center}
.btn{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  font-family:"Montserrat",system-ui,sans-serif;
  font-weight:700;
  font-size:.95rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1;
  padding:.95rem 2rem;
  background:transparent;
  color:#067ebe;
  border:1px solid #067ebe;
  border-radius:20px;
  cursor:pointer;
  text-decoration:none;
  transition:color .25s ease, border-color .25s ease;
}
.btn svg{ width:18px; height:18px; transition:transform .25s ease; }

.btn:hover,
.btn:focus-visible{ color:#569f47; border-color:#569f47; }
.btn:hover svg,
.btn:focus-visible svg{ transform:translateX(3px); }

/* sichtbarer Tastatur-Fokus */
.btn:focus-visible{ outline:2px solid #569f47; outline-offset:3px; }

/* auf dunklen Flächen automatisch weiß statt blau */
.section--dark .btn,
.hero .btn,
.hero--contact .btn{ color:#fff; border-color:#fff; }
.section--dark .btn:hover,  .section--dark .btn:focus-visible,
.hero .btn:hover,           .hero .btn:focus-visible,
.hero--contact .btn:hover,  .hero--contact .btn:focus-visible{ color:#569f47; border-color:#569f47; }

/* Kontaktformular-Button bleibt volle Breite (war schon bei dir) */
.contact__form .btn{ width:100%; justify-content:center; }

/* Icon-Größe in den Kästchen (.img-wobble existiert schon) */
.card .img-wobble{width:64px;height:64px;margin-bottom:18px}

/* Medien-Rahmen: zeigt Video/Bild in NATIVER Größe, zentriert,
   schrumpft nur auf kleinen Screens (kein Hochskalieren auf 100%). */
.media-frame{position:relative;display:block;width:fit-content;max-width:100%;margin:0 auto;overflow:hidden;background:#0b1d36;
  border:1px solid hsla(0,0%,100%,.12);box-shadow:0 30px 60px rgba(0,0,0,.35)}
.media-frame video,.media-frame img{display:block;max-width:100%;height:auto}
.media-frame--light{background:#f4f7fa;border-color:#e6e9ee;box-shadow:0 18px 50px rgba(20,63,111,.1)}

/* ===== Pharma Luftfracht Hero ===== */
.hero--sky{position:relative;min-height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:150px clamp(22px,5vw,64px) 0;color:#fff;background:radial-gradient(120% 90% at 50% 0%,rgba(0,95,155,.34) 0%,transparent 55%),radial-gradient(90% 80% at 100% 100%,rgba(0,70,110,.16) 0%,transparent 50%),linear-gradient(160deg,#0b2748 0%,#010308 62%,#051323 100%)}
.hero--sky::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.07) 1.4px,transparent 1.4px);background-size:34px 34px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);mask-image:linear-gradient(90deg,transparent,#000 40%)}
.hero--sky .hero__inner{position:relative;z-index:5;max-width:760px;margin:auto 0}
.sky-scene{position:absolute;left:0;right:0;top:0;height:54%;z-index:2;overflow:hidden}
.rs-plane{position:absolute;top:15%;left:0;width:min(540px,58vw);will-change:transform;animation:rs-fly 14s linear -7s infinite;filter:drop-shadow(0 0 16px rgba(70,160,225,.28)) drop-shadow(0 14px 16px rgba(0,0,0,.4))}
.rs-plane__aircraft{display:block;width:100%;height:auto}
@keyframes rs-fly{from{transform:translateX(-100%)}to{transform:translateX(100vw)}}
.contrail{position:absolute;height:6px;border-radius:6px;pointer-events:none;transform-origin:right center;background:linear-gradient(90deg,rgba(205,228,255,0) 0%,rgba(205,228,255,.32) 55%,rgba(220,236,255,.68) 100%);filter:blur(2.4px);animation:rs-trail 3.2s ease-in-out infinite}
.contrail--1{top:55%;left:-70%;width:152%;transform:rotate(-13deg)}
.contrail--2{top:76%;left:-44%;width:56%;transform:rotate(-13deg)}
@keyframes rs-trail{0%,100%{opacity:.45}50%{opacity:.8}}
.rs-plane__logo{position:absolute;left:57%;top:47%;width:30%;height:auto;transform:translate(-50%,-50%) rotate(-19deg);transform-origin:center;pointer-events:none;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5))}
@media(prefers-reduced-motion:reduce){.contrail{animation-duration:5s}}
@media(max-width:992px){.hero--sky{min-height:auto;padding:30vh 22px 6vh;justify-content:flex-start}.hero--sky .hero__inner{margin:0}.sky-scene{height:40vh;top:0}.rs-plane{width:74vw;top:12vh}}
@media(max-width:992px) and (max-height:700px){.hero--sky{padding-top:26vh}.sky-scene{height:34vh}.rs-plane{width:56vw;top:11vh}}

/* ===== Produktpalette Carousel ===== */
.product-carousel{position:relative;min-height:92vh;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#02070d 0%,#071b33 62%,#030812 100%);touch-action:pan-y}
.product-carousel>.eyebrow{position:absolute;top:28px;left:50%;z-index:3;transform:translateX(-50%);margin:0;color:rgba(255,255,255,.58)}
.product-carousel__stage{position:relative;width:min(100%,1180px);height:min(78vh,720px);min-height:540px}
.product-carousel__item{--x:0%;--y:0%;--r:0deg;--s:1;--w:clamp(150px,30vw,300px);--h:clamp(200px,40vw,400px);position:absolute;left:50%;top:50%;width:var(--w);height:var(--h);margin:calc(var(--h)*-.5) 0 0 calc(var(--w)*-.5);overflow:hidden;background:#02070d;box-shadow:0 18px 58px rgba(0,0,0,.48);transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(var(--s));transform-origin:0% 100%;will-change:transform,opacity;cursor:pointer}
.product-carousel__item img{width:100%;height:100%;object-fit:cover;object-position:center;background:#edf3f8;pointer-events:none;user-select:none}
.product-carousel__item figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:92px 22px 22px;background:linear-gradient(180deg,transparent,rgba(8,20,38,.92));color:#fff}
.product-carousel__item h2,.product-carousel__item h3{position:relative;z-index:2;margin:0 0 8px;font-size:clamp(1.05rem,1.65vw,1.45rem);line-height:1.05;color:#fff}
.product-carousel__item p{position:relative;z-index:2;margin:0 0 14px;font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.38;color:rgba(255,255,255,.84)}
.product-carousel__item a{position:relative;z-index:3;display:inline-flex;align-items:center;height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.42);color:#fff;text-decoration:none;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.product-carousel__item a:hover{background:#fff;color:#10233c}
.product-carousel__item.is-active{box-shadow:0 24px 76px rgba(0,0,0,.58)}
.product-carousel__ui{position:absolute;right:clamp(18px,6vw,72px);top:50%;z-index:4;display:grid;gap:12px;transform:translateY(-50%)}
.product-carousel__ui button{width:42px;height:42px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.product-carousel__ui button:hover{background:#fff;color:#071b33}
.product-carousel__ui span{writing-mode:vertical-rl;text-align:center;font-weight:800;font-size:.82rem;letter-spacing:.12em;color:rgba(255,255,255,.72)}
.product-carousel--index{--carousel-x:700;--carousel-y:0}
.product-carousel--air-pharma{--carousel-x:230;--carousel-y:0}
.product-carousel--air-pharma .product-carousel__stage{height:min(54vh,460px);min-height:380px;margin-top:-24px}
.product-carousel--air-pharma .product-carousel__item{--w:clamp(320px,54vw,620px);--h:clamp(210px,28vw,340px)}
@media(max-width:700px){.product-carousel{min-height:82vh;padding-inline:22px}.product-carousel__stage{height:620px;min-height:460px}.product-carousel__item{--w:clamp(180px,64vw,280px);--h:clamp(240px,85vw,374px)}.product-carousel__ui{right:12px}.product-carousel>.eyebrow{display:none}}
.urgent-air{position:relative;overflow:visible;background:linear-gradient(180deg,#fff 0%,#f4f7fa 100%);color:#4a5160}
.urgent-air::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 70% at 92% 14%,rgba(0,125,189,.12),transparent 58%),radial-gradient(60% 60% at 6% 95%,rgba(88,159,72,.1),transparent 58%);pointer-events:none}
.urgent-air__grid{position:relative;z-index:1;display:grid;gap:clamp(28px,4vw,46px);align-items:start}
.urgent-air__copy{width:min(730px,100%);margin:0 auto}
.urgent-air h2,.urgent-air h3{color:#282f3c}
.urgent-air h3{padding-top:0;font-size:clamp(1rem,1.3vw,1.28rem)}
.urgent-air .lead{color:#4a5160}
.urgent-air__cards{display:block;width:min(730px,100%);margin:0 auto}
.urgent-air__card{position:sticky;top:112px;z-index:2;min-height:clamp(175px,24vh,260px);display:flex;flex-direction:column;justify-content:flex-end;margin:0 0 12vh;padding:clamp(22px,2.6vw,32px);overflow:hidden;background:#fff;box-shadow:0 18px 50px rgba(20,63,111,.1),inset 0 0 0 1px rgba(20,63,111,.08);transform-origin:center top}
.urgent-air__card:nth-child(2){top:126px;z-index:3;margin-bottom:4vh}
.urgent-air__card::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#007dbd}
.urgent-air__card:nth-child(2)::before{background:#589f48}
.urgent-air__card h3,.urgent-air__card p{position:relative;z-index:1}
.urgent-air__card p{margin:0;color:#4a5160;font-weight:600;line-height:1.6}
.js-ready .urgent-air__card.reveal{opacity:0;transform:translateY(76px) scale(.94);filter:brightness(.96) saturate(.92);transition:opacity .78s cubic-bezier(0.4,0,0.2,1),transform .78s cubic-bezier(0.4,0,0.2,1),filter .78s cubic-bezier(0.4,0,0.2,1)}
.js-ready .urgent-air__card.reveal:nth-child(2){transition-delay:.12s}
.js-ready .urgent-air__card.reveal.is-visible{opacity:1;transform:none;filter:none}
@supports (animation-timeline:view()){
  .js-ready .urgent-air__card.reveal{opacity:1;transition:none}
  .urgent-air__card{animation:urgent-story-card linear both;animation-timeline:view();animation-range:entry 8% exit 74%}
  @keyframes urgent-story-card{0%{opacity:.35;transform:scale(.88) translateY(96px);filter:brightness(.92) saturate(.86)}24%,64%{opacity:1;transform:scale(1) translateY(0);filter:brightness(1.02) saturate(1.04)}100%{opacity:.92;transform:scale(.9) translateY(-42px);filter:brightness(.9) saturate(.86)}}
}
@media(max-width:900px){.urgent-air__copy{max-width:730px}.urgent-air__card{top:82px!important;min-height:clamp(170px,25vh,240px);justify-content:flex-start;margin:0 0 10vh;padding:24px 22px}.urgent-air__card:nth-child(2){top:94px!important;margin-bottom:4vh}}
@media(max-width:560px){.urgent-air__card{min-height:160px}}
.air-contact{background:#fff}
.air-contact__intro{width:min(730px,100%);margin:0 auto;text-align:left}
.air-contact__intro .eyebrow{display:inline-flex;justify-content:flex-start}
.air-contact__intro .lead{margin-left:0;margin-right:0;margin-bottom:1.8rem}
.air-contact__intro .btn{display:flex;width:max-content;margin-left:auto;margin-right:auto}
.air-contact__people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:min(730px,100%);margin:clamp(28px,5vw,54px) auto 0}
.air-contact .pc__email{display:inline-flex;width:max-content;max-width:100%;font-size:.92rem;font-weight:700;color:#007dbd;text-decoration:none;margin:0 0 5px;overflow-wrap:anywhere}
.air-contact .pc__email:hover{color:#143f6f}
@media(min-width:993px){.urgent-air--luftfracht{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}.urgent-air--luftfracht .wrap{max-width:1180px;margin:0}.urgent-air--luftfracht .urgent-air__copy,.urgent-air--luftfracht .urgent-air__cards{margin-left:0;margin-right:0}}
@media(min-width:993px){.air-contact--landverkehr{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}.air-contact--landverkehr .wrap{max-width:1180px;margin:0}.air-contact--landverkehr .air-contact__intro,.air-contact--landverkehr .air-contact__people{margin-left:0;margin-right:0}.air-contact--landverkehr .air-contact__intro .btn{margin-left:0;margin-right:0}}
@media(min-width:993px){.air-contact--luftfracht{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}.air-contact--luftfracht .wrap{max-width:1180px;margin:0}.air-contact--luftfracht .air-contact__intro,.air-contact--luftfracht .air-contact__people{margin-left:0;margin-right:0}.air-contact--luftfracht .air-contact__intro .btn{margin-left:0;margin-right:0}}
@media(min-width:993px){.air-contact--seefracht{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}.air-contact--seefracht .wrap{max-width:1180px;margin:0}.air-contact--seefracht .air-contact__intro,.air-contact--seefracht .air-contact__people{margin-left:0;margin-right:0}.air-contact--seefracht .air-contact__intro .btn{margin-left:0;margin-right:0}}
@media(max-width:700px){.air-contact__people{grid-template-columns:1fr}.air-contact .pc{padding:14px;gap:12px}.air-contact .pc__photo,.air-contact .pc__photo img{width:68px}.air-contact .pc__email{width:100%;font-size:.84rem}}
.media-badge{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:8px;
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.06em;
  text-transform:uppercase;color:#fff;background:hsla(0,0%,0%,.45);padding:6px 12px;backdrop-filter:blur(6px)}
.media-badge::before{content:"";width:9px;height:9px;background:#589f48;
  box-shadow:0 0 0 0 rgba(88,159,72,.7);animation:pulse 1.8s infinite}
.btn-wrap{margin-top:clamp(28px,4vw,40px)}
.mitte .section__head{margin-left:auto;margin-right:auto}
.mitte .eyebrow{justify-content:center}
.mitte .lead{margin-left:auto;margin-right:auto}
.pharma-intro{
  position:relative;
  overflow:hidden;
  min-height:350px;
  display:grid;
  align-items:center;
  padding-left:350px!important;
  padding-right:clamp(22px,5vw,64px)!important;
  padding-top:0;
  padding-bottom:0;
  background:
    linear-gradient(180deg,rgba(11,39,72,.32) 0%,rgba(11,39,72,.16) 28%,rgba(11,39,72,0) 62%),
    linear-gradient(180deg,#edf2f6 0%,#f8fafb 42%,#fff 100%);
}
.pharma-intro::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:96px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.82) 62%,#fff 100%);
}
.pharma-intro .wrap{width:100%;max-width:1180px;margin:0;transform:none}
.pharma-intro .section__head{margin-bottom:0}
@media(max-width:700px){
  .pharma-intro{
    padding-left:clamp(22px,5vw,64px)!important;
    padding-right:clamp(22px,5vw,64px)!important;
    padding-top:clamp(42px,12vw,70px);
    padding-bottom:clamp(42px,12vw,70px);
  }
  .pharma-intro .wrap{transform:none}
}

hr.hr {
  border: 0 !important;
  border-top: 1px solid #e6e9ee !important;
}

/* ── Hero ── */
.kampf{position:relative;overflow:hidden;text-align:left;min-height:100vh;display:grid;align-items:center;padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important;
  background:linear-gradient(140deg,#0b2748 0%,#071a30 60%,#051323 100%)}
.kampf::before{content:"";position:absolute;top:0;bottom:0;left:-350px;right:0;background:url("../media/hero-index.webp") center top/cover no-repeat;pointer-events:none}
.kampf::after{content:"";position:absolute;inset:0;display:block;background:
  linear-gradient(180deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.86) 24%,rgba(1,7,14,.52) 48%,rgba(1,7,14,.2) 72%,rgba(1,7,14,0) 100%),
  linear-gradient(90deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.92) 24%,rgba(1,7,14,.58) 48%,rgba(1,7,14,.22) 72%,rgba(1,7,14,0) 100%);
  pointer-events:none}
.kampf__inner{position:relative;z-index:1;width:100%;max-width:760px;margin:0 0 auto}
.kampf__content{text-shadow:0 2px 18px rgba(0,0,0,.5)}
.kampf .hero__eyebrow{color:#ccc}
.kampf h1{margin-bottom:1rem}
.kampf h2 .ac{color:#fff}
.kampf .lead{margin-left:0;margin-right:0}
.kampf .copy{margin:0;color:hsla(0,0%,100%,.84);font-size: 1.2rem;line-height: 1.5}
.video-play{margin-top:clamp(28px,4vw,42px);text-shadow:none}
.video-play__icon{width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid currentColor}
.video-modal{width:min(980px,calc(100vw - 36px));padding:0;border:0;background:transparent;color:#fff}
.video-modal::backdrop{background:rgba(1,3,8,.78);backdrop-filter:blur(5px)}
.video-modal__panel{position:relative;background:#02070d;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.video-modal video{display:block;width:100%;height:auto;max-height:82vh;background:#02070d}
.video-modal__close{position:absolute;top:10px;right:10px;z-index:2;width:42px;height:42px;border:1px solid rgba(255,255,255,.36);background:rgba(0,0,0,.5);color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.video-modal__close:hover,.video-modal__close:focus-visible{background:#fff;color:#071b33}
@media(min-width:1700px){.kampf::before{background-size:cover;background-position:72% center}}
@media(max-width:992px){.kampf{padding-left:clamp(22px,5vw,64px)!important}}
@media(max-width:700px){.kampf{min-height:auto;margin-top:-2px;border-top:0!important;padding-top:clamp(340px,88vw,430px)!important;padding-bottom:clamp(82px,16vw,120px)!important;background:#01070e}.kampf::before{left:0;background:url("../media/hero-index-mobile.webp") center top/100% auto no-repeat}.kampf::after{background:linear-gradient(180deg,rgba(1,7,14,1) 0,rgba(1,7,14,.88) 72px,rgba(1,7,14,.46) 170px,rgba(1,7,14,0) 300px,rgba(1,7,14,.16) 60%,rgba(1,7,14,.42) 100%)}.video-modal{width:calc(100vw - 24px)}}

.tm-award-hero--kampf-parallax{--parallax-image:url("../media/hero-index.webp");--parallax-position:72% center;--parallax-mobile-position:center top;min-height:100vh;justify-items:start;padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important;background-image:
  linear-gradient(180deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.86) 24%,rgba(1,7,14,.52) 48%,rgba(1,7,14,.2) 72%,rgba(1,7,14,0) 100%),
  linear-gradient(90deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.92) 24%,rgba(1,7,14,.58) 48%,rgba(1,7,14,.22) 72%,rgba(1,7,14,0) 100%),
  var(--parallax-image);background-position:center center,center center,var(--parallax-position);background-size:cover,cover,cover;background-repeat:no-repeat,no-repeat,no-repeat;background-attachment:scroll,scroll,fixed}
.tm-award-hero--landverkehr-parallax{--parallax-image:url("../media/road.webp");--parallax-position:72% center;--parallax-mobile-position:center top;min-height:100vh;justify-items:start;padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important;background-image:
  linear-gradient(180deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.86) 24%,rgba(1,7,14,.52) 48%,rgba(1,7,14,.2) 72%,rgba(1,7,14,0) 100%),
  linear-gradient(90deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.92) 24%,rgba(1,7,14,.58) 48%,rgba(1,7,14,.22) 72%,rgba(1,7,14,0) 100%),
  var(--parallax-image),
  url("../media/landverkehr.webp");background-position:center center,center center,var(--parallax-position),var(--parallax-position);background-size:cover,cover,cover,cover;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;background-attachment:scroll,scroll,fixed,fixed}
.tm-award-hero--gdp-parallax{--parallax-image:url("../media/hero-index-gdp.webp");--parallax-position:72% center;--parallax-mobile-position:center top;min-height:100vh;justify-items:start;padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important;background-image:
  linear-gradient(90deg,rgba(1,7,14,.96) 0%,rgba(1,7,14,.92) 27%,rgba(5,18,32,.86) 50%,rgba(15,39,71,.8) 68%,rgba(15,39,71,.7) 75%,rgba(255,255,255,.24) 84%,rgba(255,255,255,.1) 100%),
  linear-gradient(180deg,rgba(238,243,247,.12) 0%,rgba(238,243,247,.24) 42%,rgba(238,243,247,.34) 100%),
  var(--parallax-image);background-position:center center,center center,var(--parallax-position);background-size:cover,cover,cover;background-repeat:no-repeat,no-repeat,no-repeat;background-attachment:scroll,scroll,fixed}
.tm-award-hero--kampf-parallax .tm-award-hero__text{width:min(760px,100%);text-shadow:0 2px 18px rgba(0,0,0,.5)}
.tm-award-hero--landverkehr-parallax .tm-award-hero__text{width:min(760px,100%);text-shadow:0 2px 18px rgba(0,0,0,.5)}
.tm-award-hero--kerndestinationen .tm-award-hero__text{width:min(760px,100%);text-shadow:0 2px 18px rgba(0,0,0,.5)}
.tm-award-hero--gdp-parallax .tm-award-hero__text{z-index:2;width:min(760px,100%);text-shadow:0 2px 18px rgba(0,0,0,.5)}
.tm-award-hero--gdp-parallax::after{content:"";position:absolute;left:0;right:0;bottom:-1px;z-index:1;height:clamp(90px,14vh,160px);pointer-events:none;background:linear-gradient(180deg,rgba(4,20,38,0) 0%,rgba(4,20,38,.04) 58%,rgba(4,20,38,.12) 100%)}
.tm-award-hero--kampf-parallax .eyebrow{color:#ccc}
.tm-award-hero--landverkehr-parallax .eyebrow{color:#ccc}
.tm-award-hero--gdp-parallax .eyebrow{color:#ccc}
.tm-award-hero--kampf-parallax h2 .ac{color:#fff}
.tm-award-hero--gdp-parallax h2 .ac{color:#fff}
.tm-award-hero--kampf-parallax .btn{color:#fff;border-color:#fff}
.tm-award-hero--kampf-parallax .btn:hover,.tm-award-hero--kampf-parallax .btn:focus-visible{color:#569f47;border-color:#569f47}
.tm-award-hero--gdp-parallax .btn{margin-top:clamp(22px,3vw,34px);color:#fff;border-color:#fff}
.tm-award-hero--gdp-parallax .btn:hover,.tm-award-hero--gdp-parallax .btn:focus-visible{color:#569f47;border-color:#569f47}
.gdp-cert-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(20px,3vw,32px)}
.gdp-cert-tags span{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.07);color:rgba(255,255,255,.84);font-family:"Montserrat",system-ui,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(4px)}
@media(max-width:992px){.tm-award-hero--kampf-parallax,.tm-award-hero--landverkehr-parallax,.tm-award-hero--luftfracht-karte,.tm-award-hero--kerndestinationen,.tm-award-hero--gdp-parallax{padding-left:clamp(22px,5vw,64px)!important}}
@media(max-width:700px){.tm-award-hero--kampf-parallax{--parallax-image:url("../media/hero-index-mobile.webp");min-height:auto;padding-top:clamp(340px,88vw,430px)!important;padding-bottom:clamp(82px,16vw,120px)!important;background-color:#01070e;background-image:linear-gradient(180deg,rgba(1,7,14,1) 0,rgba(1,7,14,.88) 72px,rgba(1,7,14,.46) 170px,rgba(1,7,14,0) 300px,rgba(1,7,14,.16) 60%,rgba(1,7,14,.42) 100%),var(--parallax-image);background-position:center center,center top;background-size:cover,100% auto;background-repeat:no-repeat,no-repeat;background-attachment:scroll,scroll}}
@media(max-width:700px){.tm-award-hero--landverkehr-parallax{min-height:auto;padding-top:clamp(340px,88vw,430px)!important;padding-bottom:clamp(82px,16vw,120px)!important;background-color:#01070e;background-image:linear-gradient(180deg,rgba(1,7,14,1) 0,rgba(1,7,14,.88) 72px,rgba(1,7,14,.46) 170px,rgba(1,7,14,0) 300px,rgba(1,7,14,.16) 60%,rgba(1,7,14,.42) 100%),url("../media/road-mobile.webp"),var(--parallax-image),url("../media/landverkehr.webp");background-position:center center,center top,center top,center top,center top;background-size:cover,100% auto,100% auto,100% auto,100% auto;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;background-attachment:scroll,scroll,scroll,scroll,scroll}}
@media(max-width:700px){.tm-award-hero--gdp-parallax{min-height:auto;padding-top:clamp(340px,88vw,430px)!important;padding-bottom:clamp(110px,20vw,150px)!important;background-color:#eef3f7;background-image:linear-gradient(180deg,rgba(1,7,14,.96) 0,rgba(1,7,14,.78) 72px,rgba(1,7,14,.36) 170px,rgba(1,7,14,0) 300px,rgba(1,7,14,.38) 58%,rgba(1,7,14,.74) 82%,rgba(190,211,226,.24) 100%),url("../media/hero-index-gdp-mobile.webp"),var(--parallax-image);background-position:center center,center top,center top,center top;background-size:cover,100% auto,100% auto,100% auto;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;background-attachment:scroll,scroll,scroll,scroll}.tm-award-hero--gdp-parallax::after{height:clamp(90px,18vw,130px)}}

.pharma-strengths__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(22px, 4vw, 42px);
  align-items: stretch;
  width:100%;
  margin:clamp(24px, 3vw, 44px) 0 clamp(60px, 8vw, 104px);
}

.pharma-strengths__image {
  min-height: 100%;
  border-radius: 14px;
  overflow: hidden;
  background: #f4f7fa;
}

.pharma-strengths__image img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  display: block;
}

.pharma-strengths__cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(14px, 1.6vw, 22px);
}

.strength-card {
  background: #fff;
  border: 0;
  border-radius: 14px;
  padding: clamp(26px, 3vw, 34px);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.strength-card:hover {
  transform: translateY(-5px);
  border-color: transparent;
  box-shadow: 0 18px 50px rgba(20, 63, 111, .10);
}

.strength-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  margin-bottom: 20px;
  color: #007dbd;
}

.strength-card__icon svg {
  width: 42px;
  height: 42px;
  stroke-width: 1.55;
  transform-origin: center;
  animation: icon-soft-spin 7s ease-in-out infinite;
}

.strength-card:nth-child(2) .strength-card__icon svg {
  animation-delay: .4s;
}

.strength-card:nth-child(3) .strength-card__icon svg {
  animation-delay: .8s;
}

.strength-card:nth-child(4) .strength-card__icon svg {
  animation-delay: 1.2s;
}

.strength-card:hover .strength-card__icon {
  color: #589f48;
}

.strength-card h3 {
  margin-bottom: .65rem;
}

.strength-card p {
  margin: 0;
  color: #4a5160;
  font-size: clamp(1.05rem, 1.5vw, 1.22rem);
  line-height: 1.5;
  font-weight: 600;
}

@keyframes icon-soft-spin {
  0%, 100% {
    transform: rotate(0deg);
  }

  50% {
    transform: rotate(8deg);
  }
}

@media (max-width: 992px) {
  .pharma-strengths__grid {
    grid-template-columns: 1fr;
  }

  .pharma-strengths__image img {
    min-height: 360px;
  }
}

@media (max-width: 576px) {
  .strength-card__icon svg {
    animation: none;
  }
}

@media (max-width: 1100px) {
  .pharma-strengths__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 576px) {
  .pharma-strengths__cards {
    grid-template-columns: 1fr;
  }
}

.pharma-strengths__image,
.strength-card {
  border-radius: 0;
}

.strength-card__icon svg {
  width: 42px;
  height: 42px;
  stroke-width: 1.55;
  transform-origin: center;
  animation: icon-rotate 8s linear infinite;
}

.strength-card:nth-child(2) .strength-card__icon svg {
  animation-delay: .4s;
}

.strength-card:nth-child(3) .strength-card__icon svg {
  animation-delay: .8s;
}

.strength-card:nth-child(4) .strength-card__icon svg {
  animation-delay: 1.2s;
}

@keyframes icon-rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}


.news.section--dark {
  background: #041426;
}

.footer {
  /* Startton = Endton der Kontakt-Sektion (#04182c), danach gleichmaessig
     dunkler. Vertikal statt radial, damit die Kante ueber die ganze
     Breite gleich aussieht. Kein border-top mehr noetig. */
  background: linear-gradient(180deg,
    #04182c 0%,
    #031425 38%,
    #020e1b 70%,
    #01070e 100%);
  color: rgba(255,255,255,.78);
  border-top: 1px solid rgba(255,255,255,.13);
}

.footer--simple {
  padding: clamp(28px,4vw,44px) 0;
}

.footer--simple .wrap {
  max-width: none;
  width: 100%;
  padding: 0 25px;
  text-align: center;
}

.footer__contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: .35rem .85rem;
  margin: 0;
  color: rgba(255,255,255,.82);
  font-size: .95rem;
  font-weight: 600;
}

.footer__links,
.footer__menus {
  display: flex;
  align-items: center;
  gap: .85rem;
}

.footer__menus {
  margin-left: auto;
}

.footer__sep {
  color: rgba(255,255,255,.28);
  font-family: "Open Sans",system-ui,sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.footer__logo img {
  width: 170px;
  height: auto;
}

.footer__social {
  display: inline-flex;
  align-items: center;
}

.footer__social svg {
  width: 20px;
  height: 20px;
}

.footer__contact a,
.footer-accordion a {
  color: rgba(255,255,255,.82);
}

.footer__contact a:hover,
.footer-accordion a:hover {
  color: #fff;
}

.footer-accordion {
  position: relative;
  display: inline-grid;
  justify-items: start;
  text-align: left;
}

.footer-accordion .footer-accordion__titel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  cursor: pointer;
  margin: 0;
  padding: 0;
  font-family: "Montserrat",system-ui,sans-serif;
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #fff;
}

.footer-accordion .footer-accordion__titel::after {
  content: "";
  width: .45rem;
  height: .45rem;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .2s ease;
  color: rgba(255,255,255,.62);
}

.footer-accordion:hover .footer-accordion__titel::after,
.footer-accordion:focus-within .footer-accordion__titel::after {
  transform: translateY(2px) rotate(225deg);
}

.footer-accordion ul {
  display: grid;
  justify-items: start;
  min-width: 230px;
  gap: 8px;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  padding: 0;
  transition: max-height .28s ease, opacity .2s ease, padding .2s ease;
}

.footer-accordion:hover ul,
.footer-accordion:focus-within ul {
  max-height: 360px;
  opacity: 1;
  padding: 8px 0 18px;
}

.footer-accordion a {
  font-family: "Montserrat",system-ui,sans-serif;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media(max-width: 700px) {
  .footer--simple .wrap {
    padding: 0;
  }

  .footer__contact {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    line-height: 1.8;
    text-align: center;
    font-size: clamp(.82rem,3.55vw,1rem);
  }

  .footer__logo {
    display: block;
    margin-bottom: 12px;
  }

  .footer__links,
  .footer__menus {
    justify-content: center;
    width: 100%;
  }

  .footer__links {
    display: grid;
    grid-template-columns: auto min-content minmax(0, 1fr) min-content auto;
    align-items: center;
    justify-content: stretch;
    gap: .26rem;
    padding: 0 5px 0 14px;
    white-space: nowrap;
  }

  .footer__links > a {
    min-width: 0;
  }

  .footer__menus {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.2rem;
    margin-left: 0;
    align-items: flex-start;
  }

  .footer__sep:first-of-type {
    margin-left: .18rem;
  }

  .footer__social svg {
    width: 24px;
    height: 24px;
  }

  .footer-accordion {
    display: contents;
  }

  .footer-accordion .footer-accordion__titel {
    justify-self: center;
    outline: 0;
  }

  .footer-accordion:first-child .footer-accordion__titel {
    grid-column: 1;
    grid-row: 1;
  }

  .footer-accordion:last-child .footer-accordion__titel {
    grid-column: 2;
    grid-row: 1;
  }

  .footer-accordion:first-child ul {
    grid-column: 1;
  }

  .footer-accordion:last-child ul {
    grid-column: 2;
  }

  .footer-accordion ul {
    grid-row: 2;
    position: static;
    transform: none;
    width: 100%;
    min-width: 0;
    max-height: 0;
    opacity: 0;
    padding: 0;
  }

  .footer-accordion a {
    font-size: .72rem;
    line-height: 1.45;
    white-space: normal;
  }

  .footer-accordion:hover ul,
  .footer-accordion:focus-within ul {
    max-height: 360px;
    opacity: 1;
    padding: 8px 12px 18px;
  }

  .footer-accordion .footer-accordion__titel::after {
    display: block;
  }
}

 /*<!-- ═══════════════════════════════════════════════════════════════
       Hero · Kühl-LKW 
       ═══════════════════════════════════════════════════════════════ */
    .hero--road{
      position:relative; min-height:100vh; overflow:hidden;
      display:flex; flex-direction:column; justify-content:center;
      padding:130px clamp(22px,5vw,64px) 0; color:#fff;
      background:
        radial-gradient(110% 90% at 85% 10%, rgba(0,75,120,.38) 0%, transparent 55%),
        radial-gradient(90% 80% at 0% 100%, rgba(45,95,45,.16) 0%, transparent 50%),
        linear-gradient(140deg,#0b2748 0%,#010308 60%,#051323 100%);
    }
    .hero--road::after{
      content:""; position:absolute; inset:0; pointer-events:none;
      background-image:radial-gradient(rgba(255,255,255,.07) 1.4px,transparent 1.4px);
      background-size:34px 34px;
      -webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);
              mask-image:linear-gradient(90deg,transparent,#000 40%);
    }
    .hero--road .hero__inner{position:relative; z-index:5; max-width:760px; margin:0 0 auto;}

    /* ── Szene ── */
    .road-scene{position:absolute; left:0; right:0; bottom:0; height:min(50vh,440px); z-index:2; overflow:hidden;}

    /* Sanfter Horizont-Glow */
    .rs-glow{position:absolute; left:0; right:0; bottom:0; height:65%;
      background:radial-gradient(120% 120% at 50% 100%, rgba(0,125,189,.22) 0%, transparent 60%);}

    /* Boden: perspektivisches Raster, das auf den Betrachter zuläuft = Tempo */
    .rs-road{position:absolute; left:0; right:0; bottom:0; height:28%; overflow:hidden;
      background:linear-gradient(180deg, rgba(8,30,56,0) 0%, #06182e 34%, #02080f 100%);
      border-top:1px solid rgba(255,255,255,.18);}
    /* seitliche Reflexionsstreifen auf dem Asphalt (ziehen waagrecht vorbei) */
    .rs-road i{position:absolute; left:0; height:2px; border-radius:2px; filter:blur(1.4px);
      background:linear-gradient(90deg, transparent, rgba(255,255,255,.8), transparent);
      animation:rs-reflect linear infinite;
      -webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent);
              mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent);}
    .rs-road i:nth-child(1){top:7px;  width:170px; opacity:.5;  animation-duration:.95s; animation-delay:-.2s}
    .rs-road i:nth-child(2){top:17px; width:90px;  opacity:.3;  animation-duration:1.35s;animation-delay:-.7s;
      background:linear-gradient(90deg,transparent,#7fd0ff,transparent)}
    .rs-road i:nth-child(3){top:30px; width:220px; opacity:.34; animation-duration:1.05s;animation-delay:-1.0s}
    .rs-road i:nth-child(4){top:46px; width:120px; opacity:.2;  animation-duration:1.6s; animation-delay:-.45s}
    @keyframes rs-reflect{from{transform:translateX(115%)} to{transform:translateX(-360%)}}

    /* Lichtspuren (Langzeitbelichtungs-Look) — sausen nach hinten */
    .rs-streaks{position:absolute; left:-25%; right:-25%; bottom:28%; height:150px;
      -webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);
              mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);}
    .rs-streaks i{position:absolute; left:0; height:2px; border-radius:3px; filter:blur(1px);
      background:linear-gradient(90deg, transparent, #fff, transparent);
      animation:rs-streak linear infinite;}
    .rs-streaks i:nth-child(1){top:14px;  width:210px; opacity:.26; animation-duration:1.9s; animation-delay:-.2s}
    .rs-streaks i:nth-child(2){top:48px;  width:290px; opacity:.38; animation-duration:1.5s; animation-delay:-.7s}
    .rs-streaks i:nth-child(3){top:80px;  width:170px; opacity:.24; animation-duration:2.2s; animation-delay:-1.1s;
      background:linear-gradient(90deg,transparent,#39b3ec,transparent)}
    .rs-streaks i:nth-child(4){top:112px; width:330px; opacity:.42; animation-duration:1.3s; animation-delay:-.4s}
    .rs-streaks i:nth-child(5){top:138px; width:220px; opacity:.28; animation-duration:1.8s; animation-delay:-.9s;
      background:linear-gradient(90deg,transparent,#39b3ec,transparent)}
    @keyframes rs-streak{from{transform:translateX(125%)}to{transform:translateX(-360%)}}

    /* Der LKW fährt real über die Szene und loopt */
    .rs-truck{position:absolute; bottom:28%; left:0; width:min(580px,84vw);
      will-change:transform;
      /* startet mittig (Delay = halbe Dauer) und loopt nahtlos:
         sobald er rechts raus ist, kommt er sofort links wieder rein */
      animation:rs-drive 7s linear -3.5s infinite;}
    .rs-truck>svg,.rs-truck__art{display:block; width:100%; height:auto;
      filter:drop-shadow(0 0 14px rgba(40,160,225,.3)) drop-shadow(0 14px 14px rgba(0,0,0,.5));}
    /* Scheinwerfer: weit reichender, weich auslaufender Lichtkegel */
    .rs-beam{position:absolute; top:82%; left:96.5%; width:62%; height:30%;
      transform:translateY(-50%); pointer-events:none; z-index:1;
      background:
        radial-gradient(ellipse 100% 30% at 0% 50%, rgba(255,239,192,.55) 0%, rgba(255,239,192,0) 60%),
        radial-gradient(ellipse 100% 62% at 0% 50%, rgba(255,236,180,.22) 0%, rgba(255,236,180,0) 72%);
      filter:blur(3px);
      animation:rs-beam 2.6s ease-in-out infinite;}
    .rs-lamp{position:absolute; top:82%; left:96%; width:18px; height:12px;
      transform:translate(-50%,-50%); border-radius:50%; pointer-events:none; z-index:1;
      background:radial-gradient(circle, rgba(255,246,214,.95) 0%, rgba(255,236,180,0) 70%);
      filter:blur(1px); animation:rs-beam 2.6s ease-in-out infinite;}
    @keyframes rs-beam{0%,100%{opacity:.7} 50%{opacity:1}}
    /* farbiges Logo mittig auf dem Koffer */
    .rs-truck__logo{position:absolute; left:37%; top:37%; width:38%; height:auto;
      transform:translate(-50%,-50%); pointer-events:none;
      filter:drop-shadow(0 1px 3px rgba(0,0,0,.5));}
    /* nahtloser Loop, unabhängig von der Bildschirmbreite */
    @keyframes rs-drive{from{transform:translateX(-100%)} to{transform:translateX(100vw)}}

    /* Auch bei "Bewegung reduzieren" fährt der LKW weiter –
       nur das flackernde Umfeld wird ruhiger gestellt. */
    @media(prefers-reduced-motion:reduce){
      .rs-road i{animation-duration:3s}
      .rs-beam,.rs-lamp{animation:none; opacity:.85}
      .rs-streaks i{animation-duration:3s; opacity:.25}
    }
    @media(max-width:992px){
      .hero--road{min-height:auto; padding-top:120px; padding-bottom:300px;}
      .road-scene{height:300px;}
    }
	
      .white{color:#fff;}
      .light-grey{color:#cccccc;}

.untertext {
    display: inline-block;
    font-size: 2.25rem;
  }

@media(max-width: 700px) {
  .untertext {
    display: block;
    font-size: 1.2rem;
    line-height: 1.25;
    padding-top: .65rem;
  }
}

/* Pharma Seefracht Hero */
.hero--sea{position:relative; min-height:100vh; overflow:hidden;
      display:flex; flex-direction:column; justify-content:flex-start;
      padding:clamp(150px,20vh,230px) clamp(22px,5vw,64px) 0; color:#fff;
      background:
        radial-gradient(120% 95% at 50% 100%, rgba(0,90,150,.34) 0%, transparent 55%),
        radial-gradient(rgba(255,255,255,.05) 1.4px, transparent 1.4px) 0 0/34px 34px,
        linear-gradient(180deg,#0b2748 0%,#061a30 55%,#04101e 100%);}
    .hero--sea .hero__inner{position:relative; z-index:5; max-width:760px;}

    .sea-scene{position:absolute; left:0; right:0; bottom:0; height:min(52vh,460px); z-index:2; overflow:hidden;}

    /* Wasser: zwei bewegte Wellen-Ebenen, HINTER dem Schiff */
    .rs-water{position:absolute; left:0; right:0; bottom:0; height:34%; overflow:hidden; z-index:3;
      background:linear-gradient(180deg, rgba(6,22,42,0) 0%, rgba(5,18,36,.55) 32%, #03101f 100%);}
    .rs-waves{position:absolute; left:0; bottom:0; width:200%; height:100%;}
    .rs-waves svg{width:100%; height:100%; display:block;}
    .rs-waves--back{animation:rs-wave 20s linear infinite;}
    .rs-waves--front{animation:rs-wave 13s linear infinite;}
    @keyframes rs-wave{to{transform:translateX(-50%)}}
    .wv-fill-back{fill:rgba(8,30,55,.9);}
    .wv-fill-front{fill:rgba(13,44,78,.72);}
    .wv-crest{fill:none; stroke:rgba(120,190,240,.28); stroke-width:2; vector-effect:non-scaling-stroke;}
    .wv-crest--f{stroke:rgba(150,205,245,.35);}

    /* Schiff: ueber dem Wasser (Wellenlinie geht dahinter) */
    .rs-ship{position:absolute; left:0; width:min(720px,82vw); z-index:2; will-change:transform; bottom:17%;
      animation:rs-sail 26s linear -13s infinite;}
    .rs-ship__bob{position:relative; animation:rs-bob 6s ease-in-out infinite; transform-origin:50% 92%;
      filter:drop-shadow(0 7px 10px rgba(0,0,0,.5));}
    .rs-ship__art{display:block; width:100%; height:auto;}
    .rs-ship__logo{position:absolute; left:46%; top:76%; width:16%; height:auto;
      transform:translate(-50%,-50%); pointer-events:none;
      filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));}
    @keyframes rs-sail{from{transform:translateX(-100%)} to{transform:translateX(100vw)}}
    @keyframes rs-bob{0%,100%{transform:translateY(0) rotate(-0.4deg)} 50%{transform:translateY(-4px) rotate(0.4deg)}}

    @media(prefers-reduced-motion:reduce){ .rs-ship__bob{animation-duration:12s} }
    @media(max-width:992px){
      .hero--sea{min-height:auto; justify-content:flex-start;
        padding:clamp(96px,12vh,140px) clamp(22px,5vw,44px) 37vw;}
      .sea-scene{height:37vw;}
      .rs-ship{width:118vw; bottom:17%;}
      .hero--sea .hero__scroll{display:none;}
    }
/* Ende Pharma Seefracht Hero */

@media(min-width:993px){
  .hero--road,
  .hero--sky,
  .hero--sea,
  .hero--lager{
    align-items:flex-start!important;
    padding-left:350px!important;
    padding-right:clamp(22px,5vw,64px)!important;
  }
  .hero--road .hero__inner,
  .hero--sky .hero__inner,
  .hero--sea .hero__inner,
  .hero--lager .hero__inner{
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
  }
  .tm-award-hero--kampf-parallax,
  .tm-award-hero--landverkehr-parallax{
    padding-left:350px!important;
  }
}

@media(max-width:992px){
  .hero--road,
  .hero--sky,
  .hero--sea,
  .hero--lager,
  .tm-award-hero--kampf-parallax,
  .tm-award-hero--landverkehr-parallax{
    padding-left:clamp(22px,5vw,64px)!important;
    padding-right:clamp(22px,5vw,64px)!important;
  }
}

/* Globale H1-Feinjustierung */
h1{font-size:clamp(1.75rem,3.6vw,3.65rem)}

@media(min-width:993px){
  .hero--contact .hero__inner{max-width:760px;margin:0 auto;transform:none}
}

/* Index fine tuning */
.hero__scroll{
  z-index:8;
}

#pharmalogistik,
#landverkehr-intro,
#sea-pharma,
#lager,
#zertifikate{
  scroll-margin-top:0;
}

@media(min-width:993px){
  .product-carousel--index > .kampf__inner{
    justify-self:start;
    margin-left:calc(350px - clamp(22px,5vw,64px));
    margin-right:0;
    transform:none;
  }
  .product-carousel--sea-pharma > .kampf__inner{
    justify-self:start;
    margin-left:calc(350px - clamp(22px,5vw,64px));
    margin-right:0;
    transform:none;
  }
  .product-carousel--luftfracht > .kampf__inner{
    justify-self:start;
    margin-left:calc(350px - clamp(22px,5vw,64px));
    margin-right:0;
    transform:none;
  }
}

@media(max-width:992px){
  .hero__scroll,
  .hero--sea .hero__scroll{
    display:grid!important;
    place-items:center;
    bottom:18px;
  }

  #pharmalogistik,
  #landverkehr-intro,
  #sea-pharma,
  #lager,
  #zertifikate{
    scroll-margin-top:64px;
  }
}

.lang__btn {
  color: #1f2f2f;
}

.lang__btn.is-active {
  color: #0f3d36;
  font-weight: 700;
}


/* ==========================================================================
   Destinationen-Check  (eingebaut 09.09.2026)
   Nutzt die bestehenden Klassen .section / .section--dark / .wrap / .eyebrow
   Farben: --c-blue #007dbd, Schriften: Montserrat + Open Sans
   ========================================================================== */
.soc-dc{position:relative}
.soc-dc .section__head{margin-bottom:clamp(26px,3.4vw,40px)}

.soc-dc__search{position:relative;max-width:620px}
.soc-dc__input{
  width:100%;box-sizing:border-box;
  font-family:"Open Sans",system-ui,sans-serif;font-size:1.05rem;
  color:#fff;background:hsla(0,0%,100%,.06);
  border:1px solid hsla(0,0%,100%,.16);
  padding:16px 48px 16px 18px;outline:none;
  transition:border-color .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1);
}
.soc-dc__input::placeholder{color:hsla(0,0%,100%,.45)}
.soc-dc__input:focus{border-color:#007dbd;background:hsla(0,0%,100%,.09);box-shadow:0 0 0 4px rgba(0,125,189,.16)}
.soc-dc__clear{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);
  background:none;border:0;color:hsla(0,0%,100%,.5);cursor:pointer;
  font-size:1.5rem;line-height:1;padding:4px 10px;border-radius:8px;
}
.soc-dc__clear:hover{color:#fff}
.soc-dc__clear[hidden]{display:none !important}

.soc-dc__list{
  position:absolute;z-index:40;left:0;right:0;top:calc(100% + 6px);
  margin:0;padding:6px;list-style:none;
  background:#071b33;border:1px solid hsla(0,0%,100%,.16);border-radius:10px;
  max-height:272px;overflow-y:auto;box-shadow:0 18px 44px rgba(0,0,0,.42);
}
.soc-dc__list[hidden]{display:none !important}
.soc-dc__opt{
  display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  padding:11px 14px;border-radius:7px;cursor:pointer;color:hsla(0,0%,100%,.9);
}
.soc-dc__opt:hover,.soc-dc__opt[aria-selected="true"]{background:hsla(0,0%,100%,.09);color:#fff}
.soc-dc__opt small{
  font-family:"Montserrat",system-ui,sans-serif;font-size:.72rem;
  letter-spacing:.08em;color:hsla(0,0%,100%,.45);
}

/* feste Mindesthoehe => kein Layout-Sprung (CLS 0) */
.soc-dc__result{min-height:216px;margin-top:20px;max-width:620px}
.soc-dc__idle{
  border:1px dashed hsla(0,0%,100%,.18);
  padding:26px 24px;color:hsla(0,0%,100%,.6);font-size:.97rem;line-height:1.6;
}
.soc-dc__card{
  background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.12);
  border-radius:14px;padding:26px 24px;
}
.soc-dc__answer{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;
  font-size:1.12rem;color:#fff;margin:0 0 16px;line-height:1.3;
}
.soc-dc__pills{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px;padding:0;list-style:none}
.soc-dc__pill{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.88rem;
  letter-spacing:.02em;color:#7cc6e8;border:1px solid rgba(0,125,189,.65);
padding:9px 18px;white-space:nowrap;background:rgba(0,125,189,.1);
}
.soc-dc__note{
  background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);
  border-radius:10px;padding:14px 16px;margin:0 0 18px;
  color:hsla(0,0%,100%,.72);font-size:.95rem;line-height:1.5;
}
.soc-dc__note[hidden]{display:none !important}
/* Gleiche Optik wie .btn auf dunklem Grund: transparent, weisser Rahmen,
   Hover in Gruen. Werte absichtlich identisch zu .btn gehalten. */
.soc-dc__btn{
  display:inline-flex;align-items:center;gap:.6rem;
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.95rem;
  letter-spacing:.08em;text-transform:uppercase;line-height:1;
  padding:.95rem 2rem;border-radius:20px;
  background:transparent;color:#fff;border:1px solid #fff;cursor:pointer;
  text-decoration:none;
  transition:color .25s ease, border-color .25s ease;
}
.soc-dc__btn:hover,.soc-dc__btn:focus-visible{
  background:transparent;color:#569f47;border-color:#569f47;
  transform:none;box-shadow:none;
}
.soc-dc__btn:focus-visible{ outline:2px solid #569f47; outline-offset:3px; }
.soc-dc__foot{margin:14px 0 0;font-size:.82rem;color:hsla(0,0%,100%,.45)}

@media(max-width:576px){
  .soc-dc__result{min-height:252px}
  .soc-dc__btn{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:no-preference){
  .soc-dc__card,.soc-dc__idle{animation:socDcFade .22s cubic-bezier(.4,0,.2,1)}
  @keyframes socDcFade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
}


/* --- Destinationen-Check: Angleichung an das Sektionsraster (09.09.2026) ---
   Textbeginn wie Hero / Pharmalogistik / GDP (350px + linksbuendiger wrap),
   Hintergrund dunkel verlaufend: schliesst an den Hero an und geht in den
   Farbton der folgenden Parallax-Sektion ueber. */
.soc-dc.section--dark{
  /* Startton = exakter Endton des Heros (#01070e), Endton = Startton der
     folgenden Parallax-Sektion. Dadurch keine sichtbare Kante. */
  background:linear-gradient(180deg,
    #01070e 0%,
    #04121f 18%,
    #071b33 52%,
    #030c17 84%,
    #01070e 100%);
}
/* weniger Abstand zur folgenden Sektion */
.soc-dc{padding-bottom:clamp(30px,4vw,56px) !important}
@media(min-width:993px){
  .soc-dc{
    padding-left:350px !important;
    padding-right:clamp(22px,5vw,64px) !important;
  }
  .soc-dc .wrap{max-width:1180px;margin:0}
}


/* --- Ueberschriften: keine Silbentrennung (09.09.2026) ---
   body setzt hyphens:auto fuer Fliesstext. Bei Ueberschriften sieht die
   Trennung unschoen aus, deshalb hier ausgenommen. break-word bleibt als
   Sicherheitsnetz fuer sehr lange Woerter auf schmalen Displays. */
h1,h2,h3,h4,h5,h6,
.hero__eyebrow,.eyebrow,.head{
  -webkit-hyphens:none;
  hyphens:none;
  overflow-wrap:break-word;
}


/* ================= Fester Anfrage-Button (09.09.2026) =================
   Desktop: als schmale Lasche senkrecht am rechten Rand, buendig anliegend
            und mittig auf der Hoehe. Ragt dadurch kaum in die Seite.
   Mobil:   volle Leiste am unteren Rand, waagrecht. */
.cta-fixed{
  position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:110;
  writing-mode:vertical-rl;               /* dreht den Text um 90 Grad */
  display:inline-block;text-align:center;white-space:nowrap;
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;
  font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;line-height:1;
  padding:1.6rem .78rem;
  border-radius:18px 0 0 18px;            /* nur links gerundet */
  background:#020b16;color:#fff;text-decoration:none;border:0;
  box-shadow:-6px 0 22px rgba(0,0,0,.4);
  transition:background .2s cubic-bezier(.4,0,.2,1),
             padding .2s cubic-bezier(.4,0,.2,1),
             box-shadow .2s cubic-bezier(.4,0,.2,1);
}
.cta-fixed__w{display:inline}
.cta-fixed:hover,.cta-fixed:focus-visible{
  background:#0b2748;color:#fff;
  padding-left:1.05rem;padding-right:1.05rem;   /* schiebt sich leicht heraus */
  box-shadow:-10px 0 30px rgba(0,0,0,.55);
}
.cta-fixed:focus-visible{outline:2px solid #007dbd;outline-offset:3px}

@media(max-width:992px){
  .cta-fixed{
    writing-mode:horizontal-tb;
    top:auto;bottom:0;left:0;right:0;transform:none;
    width:100%;border-radius:0;
    font-size:.86rem;letter-spacing:.08em;
    padding:1.05rem 1rem calc(1.05rem + env(safe-area-inset-bottom,0px));
    box-shadow:0 -8px 26px rgba(0,0,0,.45);
  }
  .cta-fixed:hover,.cta-fixed:focus-visible{padding-left:1rem;padding-right:1rem}
  body{padding-bottom:72px}
}
@media(prefers-reduced-motion:reduce){
  .cta-fixed{transition:none}
}


/* --- Karussell-Steuerung anklickbar halten (09.09.2026) ---
   Die Karten bekommen per JS z-index bis 120; ohne eigenen Stapelwert
   lagen die Pfeiltasten darunter und liessen sich nicht treffen. */
.product-carousel__ui{position:relative;z-index:200}
.product-carousel__ui button{cursor:pointer}


/* --- Karussell-Steuerung waagrecht (09.09.2026) ---
   Lag als senkrechte Spalte rechts, passend zur alten Auf/Ab-Bewegung.
   Jetzt als Zeile unten rechts, Zaehler nicht mehr gedreht. */
.product-carousel__ui{
  top:auto;bottom:clamp(16px,3vw,34px);
  transform:none;
  grid-auto-flow:column;align-items:center;gap:14px;
}
.product-carousel__ui span{
  writing-mode:horizontal-tb;
  min-width:74px;
}

/* --- Abschluss-Sektion dunkel (09.09.2026) ---
   Die Kontakt-Styles waren immer schon fuer dunklen Grund gebaut
   (weisse Beschriftungen). Auf der Startseite fehlte nur der Hintergrund. */
.section--dark.contact{
  /* Oben Anschluss an die dunkle Sektion davor, unten an den Startton des
     Footers (gemessen: rgb(1-6, 21-30, 35-50)). Dadurch keine sichtbare Kante. */
  background:linear-gradient(180deg,
    #01070e 0%,
    #051624 26%,
    #071b33 52%,
    #06192e 78%,
    #04182c 100%);
}
.section--dark.contact h2,
.section--dark.contact .lead,
.section--dark.contact p{color:#fff}
.section--dark.contact .lead{color:hsla(0,0%,100%,.85)}


/* Kartenabstand auf schmaleren Bildschirmen etwas geringer */
@media(max-width:992px){ .product-carousel--index{--carousel-x:620} }
@media(max-width:576px){ .product-carousel--index{--carousel-x:540} }


/* Karussell: Ziehen sichtbar machen, senkrechtes Scrollen freilassen */
.product-carousel__stage{cursor:grab;touch-action:pan-y}
[data-product-carousel].is-dragging .product-carousel__stage{cursor:grabbing}
[data-product-carousel].is-dragging .product-carousel__item{user-select:none}


/* Luftfracht und Seefracht: die Karten sind mehr als doppelt so breit wie
   auf der Startseite. Der Abstand wird in Prozent der Kartenbreite gerechnet,
   deshalb genuegt ein Wert fuer alle Bildschirmgroessen - er waechst mit.
   Auf dem Handy war die Karte mit 320px Mindestbreite zu breit fuer den
   Schirm, dadurch ueberlappten die Nachbarkarten. */
@media(max-width:700px){
  .product-carousel--air-pharma .product-carousel__item{--w:min(76vw,330px)}
}

/* ── Value Added Services (General Cargo Lager) ─────────────────────────
   Statt des grauen section--alt ein dunkelblauer Verlauf. Der Endwert
   #01070e ist genau der Startwert von .section--dark.contact darunter,
   dadurch entsteht keine sichtbare Kante zwischen den beiden Abschnitten. */
.section--vas{
  background:linear-gradient(180deg,#071b33 0%,#04121f 55%,#01070e 100%);
}
/* .card ist fuer helle Flaechen gebaut (weisser Grund, dunkler Text).
   Auf dunklem Grund wuerde die weisse Karte mit der von section--dark
   erzwungenen weissen H3 unlesbar. Deshalb hier die dunkle Variante. */
.section--vas .card{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
}
.section--vas .card:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.22);
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}
.section--vas .card p{color:rgba(255,255,255,.78)}
.section--vas .card__icon{background:rgba(0,125,189,.20);color:#fff}
.section--vas .card:hover .card__icon{background:#007dbd;color:#fff}

/* Beschreibungstexte in den Lager-Kacheln waren mit .9rem zu klein */
.warehouse__feature strong{font-size:1.14rem}
.warehouse__feature span{font-size:1.06rem;color:#5f6675;line-height:1.5}

/* ── Zertifikate (Qualität & GDP) ───────────────────────────────────────
   Statt grau ein dunkelblauer Verlauf. Startwert #04101e ist genau der
   Endwert des Hero-Verlaufs darüber, dadurch keine Kante dazwischen.
   Nach unten wird es heller, damit der Schnitt zum weissen Abschnitt
   "Unser Anspruch" nicht aus dem Schwarzen kommt. */
.qcerts{
  position:relative;
  /* Startwert #030e1a ist die am Hero-Unterrand gemessene Farbe, nicht
     der nominelle Endwert seines Verlaufs - der laeuft diagonal (160deg)
     und kommt unten deshalb dunkler heraus als angegeben. Die ersten
     10 % bleiben fast konstant, damit der Verlauf sanft anlaeuft. */
  background:linear-gradient(180deg,#030e1a 0%,#040f1c 10%,#061a2f 48%,#0b2748 100%);
}
/* Der Hero hat ein Punktraster als Textur. Ohne Fortsetzung bricht die
   Textur an der Naht hart ab - das war der eigentlich sichtbare Sprung,
   nicht der Farbwert. Hier laeuft dasselbe Raster weiter und blendet
   nach unten aus. */
.qcerts::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(rgba(255,255,255,.05) 1.4px, transparent 1.4px) 0 0/34px 34px;
  /* Oben EINBLENDEN, nicht sofort volle Staerke: der Hero hat seine
     Punkte im unteren Bereich schon ausgeblendet (siehe .qhero::after).
     Volle Punkte direkt unter der Naht erzeugten sonst genau dort einen
     Dichtesprung - und der wirkt wie eine Linie. */
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 9%,#000 20%,rgba(0,0,0,.55) 62%,transparent 88%);
          mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 9%,#000 20%,rgba(0,0,0,.55) 62%,transparent 88%);
  z-index:0;
}
.qcerts > *{ position:relative; z-index:1; }
/* Die Urkunden bleiben absichtlich weiss - sie sollen wie Papier an einer
   dunklen Wand wirken. Nur der Schatten braucht auf dunklem Grund mehr
   Tiefe, sonst klebt die Karte flach auf der Flaeche. */
.qcerts .certdoc__card{
  border-color:rgba(255,255,255,.10);
  box-shadow:0 26px 60px rgba(0,0,0,.45);
}
.qcerts .certdoc:hover .certdoc__card,
.qcerts .certdoc:focus-visible .certdoc__card{
  box-shadow:0 34px 72px rgba(0,0,0,.58);
}

/* ── Fehlende Farbvariable ──────────────────────────────────────────────
   --c-line wurde in .qcard und .certdoc__card verwendet, war aber nie
   definiert. Eine ungueltige Variable macht die ganze border-Kurzschrift
   ungueltig: beide Karten hatten deshalb GAR keinen Rahmen und waren auf
   weissem Grund unsichtbar. Wert entspricht dem, was .card literal nutzt. */
:root{ --c-line:#e6e9ee; }

/* ── Abschnitt "Pharmalogistik ohne Kompromisse" ────────────────────────
   Vorher: Icon oben, darunter der Titel - dazwischen klaffte die global
   gesetzte h3-Regel (padding-top:1rem). Zusammen mit den auf gleiche
   Hoehe gezogenen Zeilen wirkte der Abschnitt auseinandergerissen.
   Jetzt liegt das Icon links neben Titel und Text, das haelt die Karte
   zusammen und macht die vier Punkte scanbar. */
.qcard{
  display:grid;
  grid-template-columns:46px 1fr;
  grid-template-areas:"icon titel" "icon text";
  column-gap:16px;
  row-gap:6px;
  align-items:start;
  /* Die Karten werden vom aeusseren Raster auf gleiche Hoehe gezogen.
     Ohne align-content:start verteilt das Raster die zusaetzliche Hoehe
     auf die Zeilen - dadurch rutschte der Absatz bei kurzen Texten weit
     unter die Ueberschrift. So bleibt der Leerraum unten. */
  align-content:start;
  padding:28px 28px 28px 34px;
  overflow:hidden;
}
/* Kleineres Icon, damit es optisch zur einzeiligen Ueberschrift passt.
   Titel oben ausgerichtet - bei zentriertem Titel entstand je nach
   Textlaenge eine unterschiedlich grosse Luecke zum Absatz. */
.qcard__icon{ grid-area:icon; width:46px; height:46px; border-radius:12px; margin-bottom:0; }
.qcard__icon svg{ width:22px; height:22px; }
.qcard h3{ grid-area:titel; padding-top:0; margin:0 0 2px; align-self:start; }
.qcard p{ grid-area:text; }

/* Akzentkante in der Markenfarbe - dieselbe Sprache wie die Navigation
   und .urgent-air__card. Gibt den vier Karten Struktur, ohne dass sie
   erst beim Hover als Karte erkennbar werden. */
.qcard::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,var(--c-green),var(--c-blue));
}

@media(max-width:576px){
  .qcard{
    grid-template-columns:1fr;
    grid-template-areas:"icon" "titel" "text";
    padding:26px 24px 26px 28px;
    row-gap:4px;
  }
  .qcard__icon{ margin-bottom:12px; }
  .qcard h3{ align-self:start; }
}

/* ── Uebergang Hero -> Zertifikate (Qualität & GDP) ─────────────────────
   Der Hero-Verlauf laeuft diagonal (160deg). Sein Unterrand ist deshalb
   links dunkler als rechts - gemessen G12/B24 links gegen G14/B26 rechts.
   Ein einzelner Startfarbwert im Abschnitt darunter kann das nicht
   treffen, es blieb eine durchgehende Kante von rund zwei Helligkeits-
   stufen. Sichtbar als feine Linie ueber die ganze Breite.
   Loesung: die letzten 200px des Hero laufen auf genau den Startwert des
   naechsten Abschnitts zu. Danach ist der Unterrand ueberall gleich. */
.qhero{ position:relative; }
.qhero::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:200px;
  background:linear-gradient(180deg, rgba(3,14,26,0) 0%, rgba(3,14,26,.75) 55%, #030e1a 100%);
  pointer-events:none;
  z-index:0;
}

/* ── Road Story (Landverkehr) dunkel ───────────────────────────────────
   Vorher lag der Abschnitt auf einem hellen Blaugrau (#dfe8ef/#f2f6f9),
   obwohl Schriftfarbe und Ueberschriften auf weiss gesetzt sind - lesbar
   war das nur, weil die Karten selbst dunkel sind. Jetzt dunkel, damit
   es zum Rest der Seite passt. */

/* Die beiden Farbakzente liegen auf einer eigenen Ebene, die oben und
   unten 300px Abstand zum Abschnittsrand haelt und zusaetzlich weich
   ausblendet. Als Hintergrund-Ebene reichten sie bis an die Naht und
   erzeugten dort einen Sprung von rund 20 Helligkeitsstufen - eine
   klar sichtbare Kante. Radiale Verlaeufe strahlen weiter, als ihre
   Positionsangabe vermuten laesst. */


/* Dunkle Karten auf dunklem Grund brauchen eine Kante und mehr Schatten,
   sonst verschwimmen sie mit dem Hintergrund. */


/* Uebergang vom Parallax-Bild darueber: die unteren 22 % laufen auf den
   Startwert von .road-story zu. Bewusst als zusaetzliche Hintergrund-
   Ebene und nicht als ::after - so bleibt der Text garantiert davor. */
.tm-award-hero--landverkehr-parallax{
  background-image:
    linear-gradient(180deg, rgba(2,10,20,0) 74%, rgba(2,10,20,.72) 90%, #020a14 100%),
    linear-gradient(180deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.86) 24%,rgba(1,7,14,.52) 48%,rgba(1,7,14,.2) 72%,rgba(1,7,14,0) 100%),
    linear-gradient(90deg,rgba(1,7,14,1) 0%,rgba(1,7,14,.92) 24%,rgba(1,7,14,.58) 48%,rgba(1,7,14,.22) 72%,rgba(1,7,14,0) 100%),
    var(--parallax-image),
    url("../media/landverkehr.webp");
  background-position:center center,center center,center center,var(--parallax-position),var(--parallax-position);
  background-size:cover,cover,cover,cover,cover;
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;
  background-attachment:scroll,scroll,scroll,fixed,fixed;
}

/* Und der Parallax-Abschnitt darunter (Kerndestinationen) blendet oben
   aus demselben Wert ein, damit auch dort keine Kante entsteht. */
.tm-award-hero--kerndestinationen{
  background-image:
    linear-gradient(180deg, #020a14 0%, rgba(2,10,20,.72) 10%, rgba(2,10,20,0) 26%),
    linear-gradient(90deg,rgba(1,3,8,.06) 0%,rgba(1,3,8,.12) 42%,rgba(1,3,8,.72) 68%,rgba(1,3,8,.88) 100%),
    var(--parallax-image);
  background-position:center center,center center,var(--parallax-position);
  background-size:cover,cover,cover;
  background-repeat:no-repeat,no-repeat,no-repeat;
  background-attachment:scroll,scroll,fixed;
}


/* Variante A (Karussell Seefracht): Abstand zwischen Ueberschrift und
   Karten. Der negative margin-top der Buehne stammt von der Luftfracht,
   wo kein Kopfbereich darueber steht - hier zog er die Bilder an die
   Ueberschrift heran. */
.product-carousel--sea-pharma .kampf__inner{
  margin-bottom:clamp(48px,7vw,88px);
}
.product-carousel--sea-pharma .product-carousel__stage{
  margin-top:0;
}

/* ── Alle Buttons eckig ────────────────────────────────────────────────
   Bewusst als Sammelblock am Ende und nicht in den Einzelregeln:
   die Werte stehen teils in Media Queries, hier greift alles auf einmal
   und ist in einem Schritt wieder rueckgaengig zu machen.
   Nicht betroffen sind Pills, Badges, Formularfelder und Karten - die
   sind keine Buttons. */
.btn,
.btn--primary,
.btn--ghost,
.btn--gold,
.soc-dc__btn,
.soc-dc__clear,
.cta-fixed,
.product-carousel__ui button,
.lang__btn,
.tm-filter,
.lc-btn,
.hero__modes a,
.video-modal__close,
.contact__form .btn,
button.btn{
  border-radius:0;
}
/* Der seitliche CTA hatte eine abgerundete Lasche links */
.cta-fixed{ border-radius:0 !important; }
@media(max-width:992px){
  .cta-fixed{ border-radius:0 !important; }
}

/* ── Zwei feste CTAs am rechten Rand ───────────────────────────────────
   Die Schiene uebernimmt jetzt die Positionierung, die vorher im
   einzelnen Button stand. Dadurch stehen beide untereinander und
   bleiben zusammen zentriert. */
.cta-rail{
  position:fixed;
  right:0;
  top:50%;
  transform:translateY(-50%);
  z-index:110;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}
.cta-rail .cta-fixed{
  position:static;
  right:auto;
  top:auto;
  transform:none;
  width:auto;
}
/* Der zweite Button etwas leiser, damit die Anfrage die erste Geige
   behaelt - gleiche Form, nur weniger Gewicht. */
.cta-fixed--dc{
  background:#061a2f;
  color:rgba(255,255,255,.88);
}
.cta-fixed--dc:hover,.cta-fixed--dc:focus-visible{
  background:#0b2748;
  color:#fff;
}

@media(max-width:992px){
  /* Mobil eine volle Leiste unten, beide Buttons je zur Haelfte. */
  .cta-rail{
    left:0;
    right:0;
    top:auto;
    bottom:0;
    transform:none;
    flex-direction:row;
    align-items:stretch;
    gap:1px;
  }
  .cta-rail .cta-fixed{
    flex:1 1 0;
    width:auto;
    min-width:0;
    justify-content:center;
    text-align:center;
    /* Zwei Buttons auf halber Breite: "Transport anfragen" passt in einer
       Zeile nicht mehr hinein und wurde abgeschnitten. Deshalb umbrechen
       die beiden Woerter hier untereinander. */
    display:flex;
    flex-direction:column;
    line-height:1.25;
    font-size:.7rem;
    letter-spacing:.1em;
    padding:.8rem .6rem calc(.8rem + env(safe-area-inset-bottom,0px));
  }
  body{ padding-bottom:86px }
}

/* ── Einheitliche Rahmen-Deckkraft auf allen Buttons ───────────────────
   Vorbild sind die drei Tabs im Hero: dort wirkte der Rahmen mit 25 %
   Deckkraft am besten. Auf Wunsch jetzt 45 % - kraeftiger als vorher,
   aber deutlich leiser als das bisherige reine Weiss der .btn.
   Ausgenommen sind die zwei festen Buttons am rechten Rand, die sind
   gefuellt und haben ohnehin keinen Rahmen. */
.hero__modes a{
  border-color:hsla(0,0%,100%,.45);
  /* Alle drei Tabs gleich breit */
  min-width:116px;
  justify-content:center;
}
/* Grundfall heller Grund: Markenfarbe mit 45 % Deckkraft. Bewusst als
   einfache Klasse - dadurch gewinnt jede Regel fuer dunkle Abschnitte
   automatisch, egal in welcher Reihenfolge sie steht. Die frueher hier
   benutzte :not()-Kette war spezifischer als jede spaetere Klasse und
   hat dunkle Abschnitte faelschlich mit dem blauen Rahmen versorgt. */
.btn{
  border-color:rgba(6,126,190,.45);
}
.section--dark .btn,
.hero .btn,
.hero--contact .btn,
.tm-award-hero--kampf-parallax .btn,
.tm-award-hero--gdp-parallax .btn,
.air-contact--dark .btn,
.section--vas .btn,
.urgent-air--dark .btn{
  /* 09.10.2026: so fein wie die Hero-Tags Land. / Luft. / See. */
  border-color:hsla(0,0%,100%,.22);
}
/* Hover bleibt kraeftig, sonst fehlt die Rueckmeldung */
.btn:hover,.btn:focus-visible,
.section--dark .btn:hover,.section--dark .btn:focus-visible,
.hero .btn:hover,.hero .btn:focus-visible,
.hero__modes a:hover,.hero__modes a:focus-visible{
  border-color:#569f47;
}

/* ── Destinationen-Check: ohne Rahmen ──────────────────────────────────
   Ohne Rahmen und ohne Fuellung waere der Button unsichtbar, deshalb
   eine leichte Flaeche statt der Linie. */
.soc-dc__btn{
  border:0;
  background:hsla(0,0%,100%,.10);
  color:#fff;
}
.soc-dc__btn:hover,.soc-dc__btn:focus-visible{
  border:0;
  background:hsla(0,0%,100%,.18);
  color:#fff;
}
/* Die Lane-Pills (Landverkehr, Luftfracht, Seefracht) ebenfalls ohne
   Rahmen - die blaue Flaeche traegt sie allein. */
.soc-dc__pill{
  border:0;
  background:rgba(0,125,189,.18);
}

/* ── Zwei feste CTAs: gleiche Farbe ─────────────────────────────────── */
.cta-rail .cta-fixed,
.cta-fixed--dc{
  background:#061a2f;
  color:#fff;
}
.cta-rail .cta-fixed:hover,.cta-rail .cta-fixed:focus-visible,
.cta-fixed--dc:hover,.cta-fixed--dc:focus-visible{
  background:#0b2748;
  color:#fff;
}

/* ── Karussell: Ziehen mit der Maus zuverlaessig machen ────────────────
   Ein Kunde konnte nicht ziehen. Ursache: beim Druecken auf den Text
   startet der Browser eine Textmarkierung, die den Zieh-Vorgang
   abfaengt. user-select war erst WAEHREND des Ziehens abgeschaltet -
   zu spaet. Jetzt dauerhaft, und Bilder lassen sich nicht wegziehen. */
[data-product-carousel],
.product-carousel__stage,
.product-carousel__item,
.product-carousel__item figcaption,
.product-carousel__item h2,
.product-carousel__item h3,
.product-carousel__item p{
  -webkit-user-select:none;
  user-select:none;
}
.product-carousel__item img{
  -webkit-user-drag:none;
  user-drag:none;
}
/* Links und die Bedienelemente bleiben normal benutzbar */
.product-carousel__item a,
.product-carousel__ui,
.product-carousel__ui *{
  -webkit-user-select:auto;
  user-select:auto;
}

/* ── Hero-Tags: Beschriftung, kein Link ────────────────────────────────
   Land. / Luft. / See. sind reine Beschriftungen. Sie waren deshalb von
   Anfang an gedaempft - dieser Zustand ist hier wiederhergestellt, und
   das <span> darin erbt die Optik des vorherigen <a>. */
.hero__modes span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:116px;
  font-family:"Montserrat",system-ui,sans-serif;
  font-weight:700;
  font-size:.8rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:hsla(0,0%,100%,.62);
  padding:10px 20px;
  border:1px solid hsla(0,0%,100%,.20);
  border-radius:0;
  cursor:default;
  -webkit-user-select:none;
  user-select:none;
}

/* ── Destinationen-Check komplett ohne Rahmen ──────────────────────────
   Betrifft das Suchfeld, die Auswahlliste, die Antwortkarte, den
   Hinweiskasten und den Startzustand. Statt der Linie traegt jeweils
   eine leichte Flaeche das Element. */
.soc-dc__input,
.soc-dc__list,
.soc-dc__card,
.soc-dc__idle,
.soc-dc__note,
.soc-dc__pill,
.soc-dc__btn{
  border:0 !important;
  outline:0;
}
.soc-dc__input{
  background:hsla(0,0%,100%,.07);
}
.soc-dc__input:focus{
  background:hsla(0,0%,100%,.12);
  /* Der Fokus braucht eine Rueckmeldung, damit man per Tastatur sieht,
     wo man ist - hier als weicher Schein statt als Rahmen. */
  box-shadow:0 0 0 3px rgba(0,125,189,.35);
}
.soc-dc__idle{
  background:hsla(0,0%,100%,.04);
}

/* ── Abstand Hero -> Destinationen-Check verkleinert ─────────────────── */
.soc-dc{
  padding-top:clamp(38px,5.5vw,72px) !important;
  padding-bottom:clamp(24px,3vw,36px) !important;
}

/* ── Kontakt-Abschnitte dunkel (Landverkehr, Luftfracht, Seefracht) ─────────────────────────────
   Derselbe Verlauf wie die Kontakt-Abschnitte der anderen Seiten. Der
   Endwert #04182c ist genau der Startwert des Footers, dadurch keine
   Kante nach unten. */
.air-contact--dark{
  background:linear-gradient(180deg,
    #01070e 0%,
    #051624 26%,
    #071b33 52%,
    #06192e 78%,
    #04182c 100%);
  color:hsla(0,0%,100%,.82);
}
.air-contact--dark h2{ color:#fff }
.air-contact--dark .lead{ color:hsla(0,0%,100%,.78) }
.air-contact--dark .eyebrow{ color:#007dbd }
.air-contact--dark .btn{
  color:#fff;
  border-color:hsla(0,0%,100%,.22);
}
.air-contact--dark .btn:hover,
.air-contact--dark .btn:focus-visible{
  color:#569f47;
  border-color:#569f47;
}
/* Die Visitenkarten bleiben absichtlich hell - sie wirken auf dunklem
   Grund wie aufgelegte Karten. Nur der Schatten braucht mehr Tiefe.
   Die Namen sind h3: ohne diese Zeile wuerden sie von einer allgemeinen
   Regel auf Weiss gesetzt und waeren auf der weissen Karte unsichtbar. */
.air-contact--dark .pc{
  box-shadow:0 18px 44px rgba(0,0,0,.42);
}
.air-contact--dark .pc .pc__name{ color:#143f6f }
.air-contact--dark .pc .pc__role{ color:#5b6470 }
.air-contact--dark .pc .pc__tel{ color:#2c333f }

/* Uebergang vom Parallax darueber: die unteren 22 % laufen auf den
   Startwert des Kontakt-Abschnitts zu. Die erste Ebene liegt oben,
   deshalb steht der untere Verlauf vor dem oberen. */
.tm-award-hero--kerndestinationen{
  background-image:
    linear-gradient(180deg, rgba(1,7,14,0) 74%, rgba(1,7,14,.72) 90%, #01070e 100%),
    linear-gradient(180deg, #020a14 0%, rgba(2,10,20,.72) 10%, rgba(2,10,20,0) 26%),
    linear-gradient(90deg,rgba(1,3,8,.06) 0%,rgba(1,3,8,.12) 42%,rgba(1,3,8,.72) 68%,rgba(1,3,8,.88) 100%),
    var(--parallax-image);
  background-position:center center,center center,center center,var(--parallax-position);
  background-size:cover,cover,cover,cover;
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;
  background-attachment:scroll,scroll,scroll,fixed;
}

/* ── Abstaende auf der Startseite verkleinert ──────────────────────────
   Unter dem Destinationen-Check und ueber dem Kontaktbereich. */
.tm-award-hero--kampf-parallax{
  padding-top:clamp(40px,5.5vw,72px) !important;
  /* Der Abschnitt war 100vh hoch und der Text darin senkrecht zentriert.
     Die Luecke nach dem Destinationen-Check entstand also nicht aus dem
     Innenabstand, sondern aus der Zentrierung in einem bildschirmhohen
     Abschnitt - gemessen 276px. Eine moderat kleinere Hoehe nimmt die
     Haelfte davon heraus, ohne den Parallax-Charakter zu verlieren. */
  min-height:min(100vh,860px) !important;
}
.section--dark.contact{
  padding-top:clamp(44px,6vw,80px) !important;
}

/* ── Kontakt-Abschnitte: Eyebrow weiss statt blau ─────────────────── */
.air-contact--dark .eyebrow{
  color:hsla(0,0%,100%,.92);
}
/* Der kurze Strich vor der Eyebrow gehoert mitgezogen, sonst bleibt
   ein blauer Rest stehen. */
.air-contact--dark .eyebrow::before{
  background:hsla(0,0%,100%,.55);
}

/* ── Visitenkarten dunkel ──────────────────────────────────────────────
   Weiss stach auf dem dunklen Grund zu stark heraus. Jetzt dieselbe
   Sprache wie die uebrigen Kaesten auf dunklen Flaechen: leichte
   Flaeche, feine Kante. Alle Textfarben muessen einzeln nachgezogen
   werden - sie sind fuer weisse Karten gesetzt. */
.air-contact--dark .pc{
  background:hsla(0,0%,100%,.05);
  border:1px solid hsla(0,0%,100%,.12);
  box-shadow:0 18px 44px rgba(0,0,0,.35);
}
.air-contact--dark .pc .pc__name{ color:#fff }
.air-contact--dark .pc .pc__name a{ color:#fff }
.air-contact--dark .pc .pc__role{ color:hsla(0,0%,100%,.58) }
.air-contact--dark .pc .pc__tel{ color:hsla(0,0%,100%,.86) }
.air-contact--dark .pc .pc__tel:hover{ color:#fff }
.air-contact--dark .pc .pc__email{ color:#4aa8dd }
.air-contact--dark .pc .pc__email:hover{ color:#fff }
/* Die kleinen Icon-Buttons, falls auf einer Seite vorhanden */
.air-contact--dark .pc .pc__mail,
.air-contact--dark .pc .pc__li,
.air-contact--dark .pc .pc__more{
  color:hsla(0,0%,100%,.7);
  border-color:hsla(0,0%,100%,.2);
}
.air-contact--dark .pc .pc__mail:hover,
.air-contact--dark .pc .pc__li:hover,
.air-contact--dark .pc .pc__more:hover{
  color:#0b2748;
  background:#fff;
  border-color:#fff;
}

/* ── Luftfracht: "Wenn Pharma-Ware nicht warten kann" dunkel ───────────
   Der Abschnitt lag auf Weiss/#f4f7fa. Jetzt dunkel, mit passenden
   Uebergaengen: der Hero darueber laeuft auf den Startwert zu, das
   Karussell darunter blendet vom Endwert ein. */
.urgent-air--dark{
  background:linear-gradient(180deg,#020a14 0%,#061a2f 46%,#03101d 78%,#02070d 100%);
  color:hsla(0,0%,100%,.82);
}
/* Die farbigen Lichtakzente der hellen Fassung wuerden auf dunklem Grund
   milchig wirken - deshalb gedaempft und von den Raendern weggehalten. */
.urgent-air--dark::after{
  background:
    radial-gradient(70% 55% at 92% 26%, rgba(0,125,189,.16), transparent 60%),
    radial-gradient(60% 50% at 6% 74%, rgba(88,159,72,.10), transparent 58%);
}
.urgent-air--dark h2,
.urgent-air--dark .urgent-air__copy h2{ color:#fff }
.urgent-air--dark .lead{ color:hsla(0,0%,100%,.78) }
.urgent-air--dark .eyebrow{ color:hsla(0,0%,100%,.92) }
.urgent-air--dark .eyebrow::before{ background:hsla(0,0%,100%,.55) }
/* Die gestapelten Karten wie auf den uebrigen dunklen Flaechen. */
.urgent-air--dark .urgent-air__card{
  background:hsla(0,0%,100%,.05);
  border:1px solid hsla(0,0%,100%,.12);
  box-shadow:0 22px 56px rgba(0,0,0,.42);
}
.urgent-air--dark .urgent-air__card h3{ color:#fff }
.urgent-air--dark .urgent-air__card p{ color:hsla(0,0%,100%,.78) }

/* Hero darueber: die unteren 200px laufen auf den Startwert zu. */
.hero--sky::before{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:200px;
  background:linear-gradient(180deg, rgba(2,10,20,0) 0%, rgba(2,10,20,.72) 55%, #020a14 100%);
  pointer-events:none;
  z-index:0;
}
/* Karussell darunter: oben aus dem Endwert einblenden. */
.product-carousel--luftfracht::before{
  content:"";
  position:absolute;
  left:0; right:0; top:0;
  height:220px;
  background:linear-gradient(180deg, #02070d 0%, rgba(2,7,13,.72) 42%, rgba(2,7,13,0) 100%);
  pointer-events:none;
  z-index:0;
}

/* ── Landverkehr: Icons in den Karten nicht mehr drehen ────────────────
   Die Regel darueber setzt die Drehung mit !important, deshalb muss die
   Abschaltung ebenfalls !important tragen. */


/* ── Fliesstext in allen Karten auf Absatzgroesse ──────────────────────
   Die Karten hatten zwischen .9rem und 1.12rem - gemessen 14 bis 18px.
   Jetzt ueberall 17px, also genau die Groesse eines normalen <p> im
   Seitentext. Bewusst in Pixeln: rem ist hier 16px, der Fliesstext der
   Seite steht aber auf 17px. */
.card p,
.qcard p,
.urgent-air__card p,
.product-carousel__item p,
.section--vas .card p,
.strength-card p{
  /* Gleiche Werte wie der Einleitungsabsatz (.lead), der auf denselben
     Seiten direkt ueber den Karten steht - 19,5px am Desktop. Gegen den
     body-Wert von 17px wirkten die Karten daneben immer noch kleiner. */
  font-size:clamp(1.05rem,1.5vw,1.22rem);
  line-height:1.6;
  letter-spacing:normal;
}
@media(max-width:700px){
  /* Auf schmalen Schirmen eine Stufe kleiner, sonst wird aus jeder Karte
     ein Textblock, der nicht mehr in die Buehne passt. */
    .product-carousel__item p{
    font-size:16px;
    line-height:1.5;
  }
}

/* Der Untertext ist mit 2.25rem so gross wie eine H2 selbst - in einer
   H1 sitzt er dadurch richtig, in einer H2 waere er gleich gross wie
   die Ueberschrift. Nur fuer diesen Fall eine Stufe kleiner. */
h2 .untertext{
  font-size:clamp(1rem,1.7vw,1.5rem);
}

/* ── Schlagwortzeile neben dem Icon (Landverkehr) ──────────────────────
   Nur die Karten mit Schlagwortzeile werden zum Raster: Icon links,
   Zeile daneben, darunter Titel und Text ueber die volle Breite.
   Die uebrigen Karten bleiben wie sie sind. */


/* Zwei Klassen, damit die Regel die Absatzgroesse der Karten schlaegt -
   die Schlagwoerter sind bewusst klein und gesperrt. */


@media(max-width:700px){
  /* Neben dem Icon ist auf dem Handy kein Platz - die Zeile rutscht
     darunter. */
  
  
  
  
}

/* ── Schlagwortzeile in Karussell-Karten ───────────────────────────────
   Klein und gesperrt, dieselbe Sprache wie die Zeilen beim Landverkehr.
   Zwei Klassen im Selektor, damit die Absatzgroesse der Karten
   (.product-carousel__item p) nicht durchschlaegt. */
.product-carousel__item .pc-tags{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.25rem 0;
  margin:0;
  font-family:"Montserrat",system-ui,sans-serif;
  font-weight:700;
  font-size:.74rem;
  line-height:1.4;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#77c9f6;
}
.product-carousel__item .pc-tags span{
  display:inline-flex;
  align-items:center;
}
.product-carousel__item .pc-tags span:not(:last-child)::after{
  content:"|";
  margin:0 .5rem;
  font-weight:400;
  letter-spacing:0;
  color:hsla(0,0%,100%,.3);
}
/* Der Satz darueber braucht etwas weniger Abstand nach unten, damit
   Satz und Schlagwoerter als ein Block gelesen werden. */
.product-carousel__item .pc-tags{ margin-top:2px }
.product-carousel--luftfracht .product-carousel__item p:not(.pc-tags){ margin-bottom:10px }

/* ── Luftfracht-Karten deckend statt durchscheinend ────────────────────
   Die Karten stapeln sich beim Scrollen uebereinander (sticky). Mit
   einer halbtransparenten Flaeche schimmert die darunterliegende Karte
   durch, was beim Uebereinanderschieben unruhig aussieht. Jetzt deckend,
   wie die gestapelten Karten beim Landverkehr. */
.urgent-air--dark .urgent-air__card{
  background:linear-gradient(150deg,#0b2748 0%,#071b30 52%,#03101d 100%);
  border:1px solid hsla(0,0%,100%,.10);
}

/* ── Landverkehr: erste Karte deutlich weiter oben ─────────────────────
   Der Abschnitt hatte 120px Innenabstand oben. Bei .sea-story bleibt er,
   dort steht ein Kopfbereich darueber. */


/* ── Luftfracht-Karten dunkler ─────────────────────────────────────────
   Der bisherige Startton #0b2748 war zu hell fuer den Abschnitt. */
.urgent-air--dark .urgent-air__card{
  background:linear-gradient(150deg,#061627 0%,#04121f 54%,#020a14 100%);
}

/* ── Sicherheitsstandards (GDP): Karten wie im Abschnitt davor ─────────
   Gleiche Struktur wie .qcard - Icon links, Titel, Text, Akzentkante -
   nur in der dunklen Fassung. */
.qgrid--dark .qcard{
  background:hsla(0,0%,100%,.05);
  border:1px solid hsla(0,0%,100%,.12);
  box-shadow:0 18px 44px rgba(0,0,0,.32);
}
.qgrid--dark .qcard:hover{
  background:hsla(0,0%,100%,.08);
  border-color:hsla(0,0%,100%,.22);
  box-shadow:0 24px 56px rgba(0,0,0,.45);
}
.qgrid--dark .qcard h3{ color:#fff }
.qgrid--dark .qcard p{ color:hsla(0,0%,100%,.78) }
.qgrid--dark .qcard__icon{
  background:rgba(0,125,189,.20);
  color:#8ed2f2;
}
.qgrid--dark .qcard:hover .qcard__icon{
  background:#007dbd;
  color:#fff;
}

/* ── Kontaktformular: Honigtopf und Fehlerhinweis ──────────────────────
   Der Honigtopf muss fuer Menschen unsichtbar, fuer automatische
   Ausfueller aber ein normales Feld sein. Deshalb NICHT display:none -
   das erkennen viele Programme und lassen es aus. */
.form-hp{
  position:absolute !important;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}
.form-error{
  margin:0 0 18px;
  padding:14px 16px;
  background:rgba(200,60,60,.16);
  border-left:3px solid #d9534f;
  color:#fff;
  font-size:.96rem;
  line-height:1.5;
}
.form-error[hidden]{ display:none !important }

/* ── Bestätigungsseite ─────────────────────────────────────────────────── */
.danke{ display:grid; place-items:center; min-height:72vh }
.danke__inner{ max-width:660px }
.danke__mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px;
  margin-bottom:22px;
  color:#7fe3c0;
  background:rgba(127,227,192,.12);
}
.danke__mark svg{ width:34px; height:34px }
.danke h1{ color:#fff; margin-bottom:1rem }
.danke .lead{ margin-left:0; margin-right:0 }
.danke__hinweis{
  margin:1.4rem 0 2rem;
  color:hsla(0,0%,100%,.7);
  font-size:1rem;
  line-height:1.65;
}
.danke__hinweis a{ color:#4aa8dd }
.danke__aktionen{ display:flex; flex-wrap:wrap; gap:14px }
@media(min-width:993px){
  .danke{ padding-left:350px !important; padding-right:clamp(22px,5vw,64px) !important }
  .danke .wrap{ max-width:1180px; margin:0 }
}

/* Dankeseite: die Seite ist kuerzer als der Bildschirm. Ohne dunklen
   Seitenhintergrund blitzt unter dem Footer ein weisser Streifen auf. */
html:has(.danke), body:has(.danke){ background:#02101d }


/* Globus: startet erst nach dem Seitenaufbau (siehe scripts.js) und
   blendet dann weich ein, statt sichtbar aufzuploppen. */
.hero__globe canvas{ opacity:0; transition:opacity .9s ease }
.hero__globe.is-on canvas{ opacity:1 }

/* Footer: "Navigation" / "Rechtliches" sind Schalter, keine Ueberschriften.
   Browser-Standard des <button> zuruecksetzen, der Rest kommt aus den
   Regeln fuer .footer-accordion__titel weiter oben. */
.footer-accordion__titel{
  -webkit-appearance:none; appearance:none;
  background:none; border:0; border-radius:0;
  line-height:1.15;
}


/* =====================================================================
   Seitenspezifische Stile - bis 21.09.2026 als <style> direkt in den
   HTML-Dateien. Unveraendert hierher verschoben; die Klassen kommen nur
   auf der jeweiligen Seite vor.
   ===================================================================== */

/* ---------- AGB / Rechtstexte ---------- */
.doc-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:clamp(30px,4vw,44px)}

/* ---------- General Cargo Lager (Hero, Regal-Animation) ---------- */
.hero--lager{position:relative; min-height:auto; overflow:hidden;
  display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start;
  padding:clamp(90px,12vh,130px) clamp(22px,5vw,64px) clamp(44px,7vh,80px) 350px; color:#fff;
  background:
    radial-gradient(120% 95% at 50% 0%, rgba(0,90,150,.30) 0%, transparent 55%),
    radial-gradient(rgba(255,255,255,.05) 1.4px, transparent 1.4px) 0 0/34px 34px,
    linear-gradient(180deg,#0b2748 0%,#061a30 55%,#04101e 100%);}
.hero--lager .hero__inner{position:relative; z-index:5; max-width:820px; margin-top:clamp(10px,2vh,22px);}
.hero--lager .hero__inner h1,.hero--lager .hero__lead{text-shadow:0 2px 14px rgba(2,10,20,.6);}
.wh-scene{position:relative; width:calc(100% + 350px); margin-left:-350px; height:min(30vh,280px); overflow:hidden;
  -webkit-mask-image:linear-gradient(180deg, #000 86%, transparent 100%);
          mask-image:linear-gradient(180deg, #000 86%, transparent 100%);}
.wh-scene>svg{position:absolute; inset:0; width:100%; height:100%;
  filter:drop-shadow(0 0 12px rgba(40,150,220,.16));}
.wh-stacker{transform-box:view-box; animation:wh-travel 18s ease-in-out infinite;}
@keyframes wh-travel{0%,100%{transform:translateX(-260px)} 50%{transform:translateX(300px)}}
.wh-carriage{transform-box:view-box; animation:wh-lift 5.5s ease-in-out infinite;}
@keyframes wh-lift{0%,100%{transform:translateY(360px)} 50%{transform:translateY(112px)}}
.wh-load-a,.wh-load-b,.wh-load-c{opacity:0; transform-box:view-box; animation:wh-load 7s ease-in-out infinite;}
.wh-load-b{animation-delay:-2.3s} .wh-load-c{animation-delay:-4.7s}
@keyframes wh-load{0%{opacity:0;transform:translateY(-16px)}12%{opacity:1;transform:translateY(0)}72%{opacity:1}88%{opacity:0}100%{opacity:0}}
.wh-cone{transform-box:view-box; transform-origin:63px 46px; animation:wh-sweep 6s ease-in-out infinite;}
@keyframes wh-sweep{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(12deg)}}
.wh-rec{animation:wh-blink 1.6s ease-in-out infinite;}
@keyframes wh-blink{0%,100%{opacity:1}50%{opacity:.25}}
@media(prefers-reduced-motion:reduce){
  .wh-load-a,.wh-load-b,.wh-load-c{opacity:1;animation:none}
  .wh-carriage{animation-duration:11s}
}
.lager-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:8px;}
@media(max-width:992px){ .lager-grid{grid-template-columns:repeat(2,1fr);}
  .hero--lager{padding:clamp(80px,11vh,120px) clamp(20px,5vw,40px) clamp(34px,5vh,60px);}
  .wh-scene{width:100%; margin-left:0; height:40vw;} }
@media(max-width:560px){ .lager-grid{grid-template-columns:1fr;} }

/* ---------- Qualitaet & GDP (Hero, Kuehlketten-Leiste, Stempel) ---------- */
.qhero{position:relative; overflow:hidden;
  padding-top:clamp(210px,30vh,300px);
  padding-left:350px!important;
  padding-right:clamp(22px,5vw,64px)!important;
  background:
    radial-gradient(rgba(255,255,255,.05) 1.4px, transparent 1.4px) 0 0/34px 34px,
    radial-gradient(120% 90% at 50% -10%, rgba(0,95,155,.30), transparent 55%),
    linear-gradient(160deg,#0b2748 0%,#010b16 60%,#04101e 100%);}
.qhero .qhero__inner{position:relative; z-index:3; max-width:760px; margin:0;}
.qhero h1{max-width:920px;}
.qhero__lead{max-width:760px;}

/* Kuehlketten-Messleiste ganz oben */
.cc-scene{position:absolute; top:0; left:0; right:0; height:clamp(180px,26vh,250px);
  z-index:1; overflow:hidden; pointer-events:none;
  border-bottom:1px solid rgba(255,255,255,.06);}
.cc-band{position:absolute; left:0; right:0; top:27%; height:46%;
  background:linear-gradient(180deg, rgba(60,210,160,.18), rgba(60,210,160,.07));
  border-top:1px dashed rgba(130,240,190,.6); border-bottom:1px dashed rgba(130,240,190,.6);}
.cc-lim{position:absolute; left:clamp(16px,4vw,52px); transform:translateY(-50%);
  font:600 12px/1 ui-sans-serif,system-ui,sans-serif; letter-spacing:.08em; color:rgba(150,235,195,.85);}
.cc-lim--hi{top:27%} .cc-lim--lo{top:73%}
.cc-cap{position:absolute; left:clamp(16px,4vw,52px); top:13%;
  font:600 11px/1 ui-sans-serif,system-ui,sans-serif; letter-spacing:.14em; text-transform:uppercase; color:rgba(190,235,255,.7);}
.cc-chart{position:absolute; top:0; left:0; height:100%; width:200%;
  animation:cc-scroll 18s linear infinite;}
.cc-chart svg{width:100%; height:100%; display:block;}
.cc-line{fill:none; stroke:#eaf7ff; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round;
  filter:drop-shadow(0 0 4px rgba(120,205,255,.5));}
@keyframes cc-scroll{to{transform:translateX(-50%)}}
/* Live-Sonde */
.cc-probe{position:absolute; left:74%; top:0; bottom:0; width:0;}
.cc-now{position:absolute; top:27%; height:46%; left:0; width:1px;
  background:linear-gradient(180deg,transparent,rgba(190,235,255,.55),transparent);}
.cc-node,.cc-pulse{position:absolute; top:50%; left:0; width:11px; height:11px; margin:-5.5px 0 0 -5.5px; border-radius:50%;}
.cc-node{background:#e6f5ff; box-shadow:0 0 10px 2px rgba(150,215,255,.85);}
.cc-pulse{border:1.5px solid rgba(160,225,255,.85); animation:cc-pulse 2.2s ease-out infinite;}
@keyframes cc-pulse{0%{transform:scale(1);opacity:.85} 100%{transform:scale(3.4);opacity:0}}
.cc-tag{position:absolute; top:50%; left:16px; transform:translateY(-50%); white-space:nowrap;
  font:600 11px/1 ui-sans-serif,system-ui,sans-serif; letter-spacing:.12em; color:rgba(200,238,255,.9);}
.cc-tag::before{content:"\25CF"; color:#4be0a0; margin-right:7px; animation:cc-blink 2.2s ease-in-out infinite;}
@keyframes cc-blink{0%,100%{opacity:1} 50%{opacity:.25}}
@media(prefers-reduced-motion:reduce){ .cc-pulse{animation-duration:4s} }

/* Zertifikats-Badges (scoped auf Hero) */
.qhero .stamps{display:flex; flex-wrap:wrap; gap:10px 12px; margin-top:6px;}
.qhero .stamp{display:inline-flex; align-items:center; gap:8px;
  padding:9px 15px; border:1px solid rgba(255,255,255,.16); border-radius:999px;
  background:rgba(255,255,255,.05); backdrop-filter:blur(4px);
  font-size:16px; font-weight:600; color:rgba(255,255,255,.9); line-height:1;}
.qhero .stamp svg{width:16px; height:16px; flex:0 0 auto; color:#5fe3a6;}

.qaxis-section .section__head{max-width:760px;margin-left:auto;margin-right:auto;}
.qaxis-section .section__head .lead{max-width:760px;margin-left:0;margin-right:0;text-align:left;}
@media(min-width:993px){
  .qaxis-section{padding-left:350px!important; padding-right:clamp(22px,5vw,64px)!important;}
  .qaxis-section .wrap{max-width:1180px; margin:0;}
  .qaxis-section .section__head{margin-left:0; margin-right:0;}
}

@media(max-width:992px){
  .qhero{padding-top:clamp(210px,34vh,285px); padding-left:clamp(22px,5vw,64px)!important; padding-right:clamp(22px,5vw,64px)!important;}
  .cc-scene{height:clamp(190px,30vh,260px);}
  .qaxis-section .section__head{max-width:760px;}
}

/* ---------- Ersatz fuer fruehere style=""-Attribute ---------- */
/* Zentrierte Seitenkoepfe (AGB, Blog, Datenschutz, Impressum, Team) */
.section__head.section__head--mitte{ text-align:center; margin:4rem auto 4rem }
/* Tracking Zone: erster Abschnitt mit kuerzerem Abstand nach unten */
.section.section--unten-kurz{ padding-bottom:3rem }
/* Google-Maps-Karte auf der Kontaktseite */
.kontakt-karte{ border:0 }

/* Startseite, Produkt-Karussell: Kartentitel sind seit 21.09.2026 <h3>
   statt <h2> (saubere Gliederung). Das globale h3-Padding hier
   zuruecknehmen, damit sie genau wie vorher aussehen. */
.product-carousel__item h3{ padding-top:0 }


/* Textlinks im Fliesstext (z. B. Landverkehr -> GDP, Destinationen-Check,
   Luft- und Seefracht): Textfarbe bleibt, blaue Unterstreichung zeigt den Link. */
.textlink{ color:inherit; text-decoration:underline; text-decoration-color:rgba(0,125,189,.9);
  text-decoration-thickness:1px; text-underline-offset:3px; transition:color .2s ease }
.textlink:hover{ color:#4aa8dd }

/* Ansprechpartner auf Land-/Luft-/Seefracht: Namen sind seit 21.09.2026
   <p> statt <h3>. Den Abstand, den vorher das h3 mitbrachte, beibehalten. */
.air-contact p.pc__name{ padding-top:1rem }


/* Footer (DE), seit 21.09.2026: Navigations-Dropdown entfernt, die
   rechtlichen Links stehen immer sichtbar in einer zentrierten Zeile. */
.footer__recht{
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
  gap:.35rem .85rem;
  margin-top:clamp(18px,2.4vw,26px); padding-top:clamp(14px,2vw,20px);
  border-top:1px solid rgba(255,255,255,.10);
  font-family:"Montserrat",system-ui,sans-serif; font-weight:700;
  font-size:.78rem; letter-spacing:.08em; text-transform:uppercase;
}
.footer__recht a{ color:rgba(255,255,255,.72) }
.footer__recht a:hover{ color:#fff }
@media(max-width:700px){
  /* Am Handy alle vier Links in einer Zeile halten, sonst haengt ein
     einzelner Trennstrich am Zeilenende. */
  .footer__recht{ gap:.3rem .55rem; font-size:clamp(.62rem,2.9vw,.74rem); letter-spacing:.05em; white-space:nowrap }
  .footer__recht .footer__sep:first-of-type{ margin-left:0 }
}

/* Footer (DE): Logo mittig ueber der Kontaktzeile, keine Trennlinie
   zur Zeile mit den rechtlichen Links. */
.footer--simple .footer__contact{ flex-direction:column; align-items:center; justify-content:center; gap:14px }
.footer--simple .footer__links{ justify-content:center }
.footer__recht{ border-top:0; padding-top:0; margin-top:14px }


/* Footer: etwas weniger Abstand von der oberen Linie zum Logo */
.footer--simple{ padding-top:clamp(16px,2.4vw,26px) }

/* "Nach oben"-Button rechts unten (per scripts.js eingefuegt).
   Eckig und in der Farbe der festen CTA-Buttons. */
.nach-oben{
  position:fixed; right:0; bottom:24px; z-index:109;
  width:46px; height:46px; padding:0;
  display:grid; place-items:center;
  background:#061a2f; color:#fff;
  border:1px solid hsla(0,0%,100%,.45); border-right:0; border-radius:0;
  cursor:pointer;
  opacity:0; visibility:hidden; transform:translateY(10px);
  transition:opacity .25s ease, transform .25s ease, visibility 0s linear .25s, background .2s ease;
}
.nach-oben svg{ width:22px; height:22px }
.nach-oben.is-sichtbar{
  opacity:1; visibility:visible; transform:none;
  transition:opacity .25s ease, transform .25s ease, visibility 0s, background .2s ease;
}
.nach-oben:hover{ background:#0b2748 }
.nach-oben:focus-visible{ outline:2px solid #007dbd; outline-offset:3px }
@media(max-width:992px){
  /* ueber der festen Leiste mit "Transport anfragen" / "Destinationen Check" */
  .nach-oben{ right:12px; bottom:calc(var(--cta-leiste, 54px) + 12px + env(safe-area-inset-bottom,0px));
    width:42px; height:42px; border-right:1px solid hsla(0,0%,100%,.45) }
}
@media(prefers-reduced-motion:reduce){ .nach-oben{ transition:none } }

/* Nach-oben-Button: gleiche Breite wie die seitlichen CTA-Buttons
   ("Transport anfragen" / "Destinationen Check" = 36,8 px), ohne Rahmen.
   Aendert sich deren Schrift oder Innenabstand, diesen Wert mitziehen. */
.nach-oben{ width:36.8px; border:0 }
.nach-oben svg{ width:20px; height:20px }
@media(max-width:992px){ .nach-oben{ width:42px; border:0 } }

/* Mobil: Platz fuer die feste Leiste unten ("Transport anfragen" /
   "Destinationen Check") nicht mehr als weisser body-Abstand, sondern
   im dunklen Footer selbst - sonst blitzte zwischen Footer und Leiste
   ein weisser Streifen auf. */
@media(max-width:992px){
  body{ padding-bottom:0 !important }
  .footer--simple{ padding-bottom:calc(clamp(28px,4vw,44px) + 54px + env(safe-area-inset-bottom,0px)) }
  .footer:not(.footer--simple){ padding-bottom:calc(clamp(40px,5vw,56px) + 54px + env(safe-area-inset-bottom,0px)) }
}


/* Lager: Kleintitel auf weissem Grund. Das allgemeine Hellgrau (#a9a4a4)
   hatte auf Weiss nur Kontrast 2,46 (noetig 4,5). Das Markenblau #007dbd
   liegt mit 4,49 knapp darunter, deshalb eine Spur dunkler (4,74). */
.warehouse .eyebrow,
#anspruch .eyebrow{ color:#0079b8 }  /* auch Qualitaet & GDP, weisser Abschnitt */


/* Tracking Zone: Kopfbereich auf Weiss - Kleintitel (#ccc, Kontrast 1,6)
   und Login-Buttons (4,43) waren zu hell. Nur auf weissem Grund. */
.section.mitte:not(.section--dark) .hero__eyebrow{ color:#0079b8 }
.section.mitte:not(.section--dark) .btn{ color:#0079b8; border-color:#0079b8 }
.section.mitte:not(.section--dark) .btn:hover,
.section.mitte:not(.section--dark) .btn:focus-visible{ color:#fff; background:#0079b8 }
/* Telematik-Portalbild: seit echten Massen (868x506) hier auf 500 px halten */
.media-frame img[src$="telematik.webp"]{ width:500px }

/* Tracking Login: Kundenportal im iframe */
.tracking-login{ padding-top:clamp(40px,6vw,80px); padding-bottom:clamp(40px,6vw,80px) }
.tracking-login__frame{ display:block; width:100%; min-height:max(550px, 75vh); border:0; background:#fff }
@media(max-width:992px){ .tracking-login{ padding-top:88px } }


/* Team (21.09.2026): Kontrast auf weissem Grund.
   Berufsbezeichnung war #ccc (1,6), Kleintitel #a9a4a4 (2,46), E-Mail 4,49. */
.team-directory .eyebrow{ color:#0079b8 }
.team-globe-page .team-directory .pc__role{ color:#5f6675 }
.team-globe-page .team-directory .pc__email{ color:#0079b8 }
/* vCard-Fenster: Name als Text statt h2, sieht aus wie vorher */
.vcard-modal__titel{ font-family:"Montserrat",system-ui,sans-serif; font-weight:700; line-height:1.15;
  letter-spacing:.01em; color:#282f3c; font-size:1.35rem; margin:0 0 18px }
.team-globe-page .team-directory .pc__email:hover,
.team-globe-page .team-directory .pc__email:focus-visible{ color:#569f47 }  /* Gruen wie Button-Hover */


/* Kontaktkarten (Team, Land-/Luft-/Seefracht): Telefon und E-Mail beim
   Hover einheitlich gruen wie die Buttons - auf hellem und dunklem Grund. */
.pc .pc__tel:hover, .pc .pc__tel:focus-visible,
.pc .pc__email:hover, .pc .pc__email:focus-visible,
.team-globe-page .pc__tel:hover, .team-globe-page .pc__email:hover,
.air-contact .pc__email:hover,
.air-contact--dark .pc .pc__tel:hover, .air-contact--dark .pc .pc__tel:focus-visible,
.air-contact--dark .pc .pc__email:hover, .air-contact--dark .pc .pc__email:focus-visible{ color:#569f47 }


/* Kontakt: Hintergrund am Handy in kleiner Version (69 statt 343 KB) */
@media(max-width:768px){
  .hero--contact{ background:linear-gradient(90deg, rgba(10,28,51,.88),rgba(10,28,51,.42)),
    url("../media/kontakt-mobile.webp") center / cover no-repeat }
}


/* Navigation (22.09.2026): aktive Sprache gruen wie die aktive Seite,
   die andere Sprache im ruhigen Grau der uebrigen Fussangaben. */
.nav .lang__btn{ color:#79818f }
.nav .lang__btn.is-active{ color:var(--nav-active) }
.nav .lang__btn:hover,.nav .lang__btn:focus-visible{ color:var(--nav-active) }
/* Seit das Copyright weg ist: DE/EN wieder so hoch wie vorher (Desktop) */
@media(min-width:993px){ .nav__foot{ padding-bottom:52px } }
/* DE/EN linksbuendig an der Icon-Spalte der Menuepunkte (Text beginnt bei 19 px
   wie die Icons) - auch in der eingeklappten Navigation sichtbar. */
@media(min-width:993px){ .nav__foot{ align-items:flex-start; padding-left:13px } }


/* ==========================================================================
   Cookie-Hinweis (assets/cookie-consent.js)
   ========================================================================== */
.cc-banner{ position:fixed; left:0; right:0; bottom:0; z-index:300;
  display:flex; align-items:center; gap:18px 32px; flex-wrap:wrap;
  padding:18px clamp(18px,4vw,48px) calc(18px + env(safe-area-inset-bottom,0px));
  background:#061a2f; color:rgba(255,255,255,.84); border-top:1px solid hsla(0,0%,100%,.14);
  box-shadow:0 -12px 40px rgba(0,0,0,.35); font-size:.92rem; line-height:1.5 }
.cc-banner[hidden]{ display:none }
@media(min-width:993px){ .cc-banner{ left:var(--nav-w) } }
.cc-banner__text{ flex:1 1 420px; min-width:0 }
.cc-banner__text p{ margin:0 }
.cc-banner__titel{ font-family:"Montserrat",system-ui,sans-serif; font-weight:700; color:#fff; font-size:.95rem; margin:0 0 4px !important }
.cc-banner a, .cc-dialog a{ color:#fff; text-decoration:underline; text-underline-offset:3px }
.cc-banner__knoepfe{ display:flex; flex-wrap:wrap; align-items:center; gap:10px }
.cc-btn{ font-family:"Montserrat",system-ui,sans-serif; font-weight:700; font-size:.8rem; letter-spacing:.08em; text-transform:uppercase;
  color:#fff; background:transparent; border:1px solid hsla(0,0%,100%,.45); border-radius:0; padding:11px 18px; cursor:pointer;
  transition:color .2s ease, border-color .2s ease }
.cc-btn:hover,.cc-btn:focus-visible{ color:#569f47; border-color:#569f47 }
.cc-link{ font:inherit; font-size:.85rem; color:rgba(255,255,255,.84); background:none; border:0; padding:8px 4px; cursor:pointer;
  text-decoration:underline; text-underline-offset:3px }
.cc-link:hover,.cc-link:focus-visible{ color:#569f47 }
.cc-btn:focus-visible,.cc-link:focus-visible{ outline:2px solid #007dbd; outline-offset:3px }
@media(max-width:600px){
  .cc-banner{ padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px)); gap:12px; font-size:.86rem }
  .cc-banner__knoepfe{ width:100% }
  .cc-banner__knoepfe .cc-btn{ flex:1 1 0; padding:11px 8px; font-size:.72rem }
}

/* Einstellungen */
.cc-dialog{ width:min(560px, calc(100vw - 32px)); max-height:calc(100vh - 48px); overflow:auto; padding:26px 26px 22px;
  border:1px solid hsla(0,0%,100%,.14); border-radius:0; background:#061a2f; color:rgba(255,255,255,.84) }
.cc-dialog::backdrop{ background:rgba(1,7,14,.6) }
.cc-liste{ display:grid; gap:2px; margin:14px 0 20px }
.cc-zeile{ display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 0; border-bottom:1px solid hsla(0,0%,100%,.1); cursor:pointer }
.cc-zeile strong{ color:#fff; font-family:"Montserrat",system-ui,sans-serif; font-size:.9rem }
.cc-zeile em{ font-style:normal; font-size:.75rem; color:#569f47; margin-left:6px }
.cc-zeile small{ display:block; font-size:.82rem; line-height:1.45; margin-top:3px; color:rgba(255,255,255,.7) }
.cc-zeile input{ position:absolute; opacity:0; width:1px; height:1px }
.cc-zeile i{ flex:0 0 42px; height:24px; position:relative; background:hsla(0,0%,100%,.18); transition:background .2s ease }
.cc-zeile i::after{ content:""; position:absolute; top:3px; left:3px; width:18px; height:18px; background:#fff; transition:transform .2s ease }
.cc-zeile input:checked + i{ background:#569f47 }
.cc-zeile input:checked + i::after{ transform:translateX(18px) }
.cc-zeile input:disabled + i{ opacity:.55 }
.cc-zeile input:focus-visible + i{ outline:2px solid #007dbd; outline-offset:3px }

/* Platzhalter fuer externe Inhalte (Karte, LinkedIn-Feed) ohne Zustimmung */
[data-consent-box]{ position:relative }
.cc-platzhalter{ position:absolute; inset:0; display:grid; place-content:center; justify-items:center; gap:14px; text-align:center;
  padding:24px; color:rgba(255,255,255,.84);
  background:radial-gradient(rgba(255,255,255,.06) 1.4px, transparent 1.4px) 0 0/28px 28px, linear-gradient(160deg,#0b2748 0%,#04101e 100%) }
.cc-platzhalter p{ margin:0; max-width:460px; font-size:.95rem }
[data-consent-box].is-frei .cc-platzhalter{ display:none }
.news-feed[data-consent-box]:not(.is-frei){ min-height:260px }

/* 08.10.2026: Abstand Button unter Ueberschrift im Kontakt-Block (Lead-Zeile entfernt) */
.contact h2 + .btn{margin-top:1.4rem}


/* ── 08.10.2026 Luftfracht-Produkte: Karussell mit Bild oben, Text unten ──
   09.10.2026: niedrigere Karten, Steuerung unter den Karten, Häkchen gefüllt
   wie das Rund-Icon oben, Karussell bleibt unter der Navigation. */
.product-carousel{isolation:isolate}   /* Karten-z-index (bis 120) nicht ueber die fixe Navigation */
.product-carousel--air-products{--carousel-x:230;--carousel-y:0;--carousel-boost:.05;padding-top:60px;padding-bottom:80px;min-height:0;align-content:start}
.product-carousel--air-products .product-carousel__stage{height:620px;min-height:0;margin-top:20px}
.product-carousel--air-products .product-carousel__item{
  --w:clamp(340px,34vw,460px);--h:580px;
  display:flex;flex-direction:column;border-radius:14px;
  background:linear-gradient(160deg,#0b2748 0%,#071b30 55%,#03101d 100%);
  border:1px solid hsla(0,0%,100%,.10)}
.product-carousel--air-products .product-carousel__item img{height:160px;flex:0 0 160px}
.product-carousel--air-products .ap-icon{
  position:absolute;left:24px;top:136px;z-index:3;width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;background:rgba(7,27,48,.9);color:#77c9f6;
  border:1px solid rgba(119,201,246,.5);box-shadow:none}
.product-carousel--air-products .ap-icon svg{width:21px;height:21px;stroke-width:1.6}
.product-carousel--air-products .product-carousel__item figcaption{
  position:relative;padding:36px 24px 20px;background:none;flex:1 1 auto}
/* weicher Uebergang vom Bild in das Kartenblau */
.product-carousel--air-products .product-carousel__item::after{content:"";position:absolute;left:0;right:0;top:90px;height:72px;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,rgba(11,39,72,0) 0%,rgba(11,39,72,.75) 60%,#0b2748 100%)}
.product-carousel--air-products .product-carousel__item h3{font-size:1.55rem;margin:0 0 6px}
.product-carousel--air-products .product-carousel__item p{font-size:17px;line-height:1.5;margin:0 0 12px;color:rgba(255,255,255,.82)}
.product-carousel--air-products .product-carousel__item p.ap-sub{font-family:"Montserrat",system-ui,sans-serif;font-size:14px;line-height:1.45;letter-spacing:.06em;text-transform:uppercase;color:#77c9f6;font-weight:700;margin-bottom:10px}
.product-carousel--air-products .ap-checks{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:7px}
.product-carousel--air-products .ap-checks li{position:relative;padding-left:32px;font-size:17px;line-height:1.45;color:rgba(255,255,255,.9)}
/* Haekchen: gefuellter blauer Kreis mit weissem Haken - gleiche Sprache wie das Rund-Icon oben */
.product-carousel--air-products .ap-checks li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;box-sizing:border-box;
  border:1px solid rgba(119,201,246,.55);
  background:rgba(7,27,48,.6) no-repeat center/11px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2377c9f6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4 10-10'/%3E%3C/svg%3E")}
/* Pfeile + Zaehler unter den Karten statt darin */
.product-carousel--air-products .product-carousel__ui{position:relative;top:auto;right:auto;bottom:auto;transform:none;justify-self:center;margin-top:10px}
@media(min-width:701px) and (max-width:1200px){
  .product-carousel--air-products .product-carousel__stage{height:660px}
  .product-carousel--air-products .product-carousel__item{--w:clamp(420px,46vw,440px);--h:620px}
}
@media(max-width:700px){
  .product-carousel--air-products{padding-top:40px;padding-bottom:28px}
  .product-carousel--air-products .product-carousel__stage{height:576px;margin-top:8px}
  .product-carousel--air-products .product-carousel__item{--w:min(90vw,370px);--h:560px}
  .product-carousel--air-products .product-carousel__item img{height:120px;flex-basis:120px}
  .product-carousel--air-products .ap-icon{top:98px;width:40px;height:40px}
  .product-carousel--air-products .product-carousel__item::after{top:56px;height:64px}
  .product-carousel--air-products .product-carousel__item figcaption{padding:32px 20px 18px}
  .product-carousel--air-products .product-carousel__item h3{font-size:1.4rem}
  .product-carousel--air-products .product-carousel__item p,.product-carousel--air-products .ap-checks li{font-size:16px}
  .product-carousel--air-products .ap-checks{gap:5px}
}

/* ── 09.10.2026 Luftfracht: weicher Uebergang Hero → Karussell ──
   Hero laeuft ueber 360px auf #020a14 aus, das Punktraster wird mit
   ausgeblendet; das Karussell startet exakt in diesem Ton. */
.hero--sky::before{height:360px;z-index:1;
  background:linear-gradient(180deg,rgba(2,10,20,0) 0%,rgba(2,10,20,.45) 40%,rgba(2,10,20,.85) 72%,#020a14 100%)}
.product-carousel--air-products{background:#020a14}
.product-carousel--air-products::before{
  height:520px;
  background:linear-gradient(180deg,#020a14 0%,rgba(2,10,20,.6) 45%,rgba(2,10,20,0) 100%),
             radial-gradient(90% 70% at 70% 100%,rgba(11,39,72,.55) 0%,transparent 70%)}
.product-carousel--air-products::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(80% 60% at 75% 65%,rgba(11,39,72,.65) 0%,transparent 70%),
             linear-gradient(180deg,#020a14 0%,#04101f 55%,#02070d 100%)}

/* ── 09.10.2026 Luftfracht "Unsere Leistungen": staerkerer Verlauf, mobil hoehere Karten ──
   Text liegt im unteren Drittel auf einem fast deckenden Verlauf, damit er
   auch auf hellen Bildstellen lesbar bleibt. Mobil ist die Karte hoch genug,
   dass der Text nicht mehr ins Bild hinaufwaechst. */
.product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item figcaption{
  padding:130px 26px 24px;
  background:linear-gradient(180deg,
    rgba(2,10,20,0) 0%,
    rgba(2,10,20,.55) 28%,
    rgba(2,10,20,.86) 55%,
    rgba(2,10,20,.96) 100%)}
.product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item h3,
.product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item p{text-shadow:0 1px 10px rgba(0,0,0,.45)}
@media(max-width:700px){
  /* Mobil: Bild oben als schmaler Streifen, darunter deckend dunkelblau */
  .product-carousel--luftfracht.product-carousel--air-pharma{--carousel-boost:.04}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__stage{height:450px;min-height:0;margin-top:0}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__ui{position:relative;top:auto;right:auto;bottom:auto;transform:none;justify-self:center;margin-top:4px}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item{
    --w:min(80vw,320px);--h:410px;border-radius:12px;
    display:flex;flex-direction:column;background:#071b30;border:1px solid hsla(0,0%,100%,.10)}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item img{height:150px;flex:0 0 150px}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item figcaption{
    position:relative;left:auto;right:auto;bottom:auto;flex:1 1 auto;
    margin-top:-36px;padding:32px 20px 16px;
    background:linear-gradient(180deg,rgba(7,27,48,0) 0,#071b30 36px,#071b30 100%)}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item h3{font-size:1.25rem}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item h3,
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item p{text-shadow:none}
}

/* ── 09.10.2026 Luftfracht: Netzwerk-Karte mit Vorteils-Leiste ── */
.tm-award-hero--luftfracht-karte{align-content:center;row-gap:clamp(56px,7vw,96px);background-image:linear-gradient(90deg,rgba(1,3,8,.86) 0%,rgba(1,3,8,.74) 45%,rgba(1,3,8,.5) 75%,rgba(1,3,8,.38) 100%),var(--parallax-image)}
@media(max-width:900px){.tm-award-hero--luftfracht-karte{background-image:linear-gradient(180deg,rgba(1,3,8,.82) 0%,rgba(1,3,8,.68) 50%,rgba(1,3,8,.86) 100%),var(--parallax-image)}}
.air-benefits{position:relative;z-index:1;width:100%;color:#fff}
.air-benefits h2{color:#fff;font-size:clamp(1.3rem,2.2vw,2rem);margin-bottom:clamp(22px,3vw,34px)}
.air-benefits__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,64px);margin:0;padding:0;list-style:none}
.air-benefits__item{display:flex;gap:14px;align-items:flex-start;padding:0}
.air-benefits__icon{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;color:#77c9f6;margin-top:-4px}
.air-benefits__icon svg{width:38px;height:38px;stroke-width:1.4}
.air-benefits__item h3{color:#fff;font-size:1.2rem;margin:0 0 8px;padding-top:2px}
.air-benefits__item p{margin:0;font-size:clamp(1.02rem,1.3vw,1.15rem);line-height:1.55;color:hsla(0,0%,100%,.82)}
@media(max-width:992px){
  .air-benefits__list{grid-template-columns:1fr;gap:22px}
  .air-benefits__item,.air-benefits__item:first-child{padding:0}
}

/* ── 09.10.2026 Luftfracht "Unsere Leistungen" Desktop: ganzes Bild sichtbar ──
   Bild oben in voller Kartenbreite im Originalformat (1000x360, nichts
   abgeschnitten), unten weicher Verlauf in das Dunkelblau der Karte. */
@media(min-width:701px){
  .product-carousel--luftfracht.product-carousel--air-pharma{--carousel-boost:.06}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__stage{height:calc(clamp(440px,50vw,720px) * .36 + 230px);min-height:0;margin-top:0}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__ui{position:relative;top:auto;right:auto;bottom:auto;transform:none;justify-self:center;margin-top:6px}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item{
    --w:clamp(440px,50vw,720px);--h:calc(var(--w) * .36 + 170px);
    display:flex;flex-direction:column;border-radius:12px;background:#071b30;border:1px solid hsla(0,0%,100%,.10)}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item img{
    height:auto;aspect-ratio:1000/360;flex:0 0 auto;object-fit:cover}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item figcaption{
    position:relative;left:auto;right:auto;bottom:auto;flex:1 1 auto;
    margin-top:-80px;padding:64px 28px 24px;
    background:linear-gradient(180deg,rgba(7,27,48,0) 0,rgba(7,27,48,.85) 50px,#071b30 80px,#071b30 100%)}
}
/* Netzwerk-Karte unten weich in den Kontaktbereich (#01070e) auslaufen lassen */
.tm-award-hero--luftfracht-karte::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:clamp(120px,18vh,200px);z-index:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(1,7,14,0) 0%,rgba(1,7,14,.7) 55%,#01070e 100%)}

/* Vorteile-Spalten am Desktop ab dem linken Inhaltsrand, Titel bleibt eingerueckt */
@media(min-width:993px){
  .air-benefits__list{margin-left:calc(-350px + clamp(22px,5vw,64px));width:calc(100% + 350px - clamp(22px,5vw,64px))}
}
@media(max-width:380px){
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__stage{height:465px}
  .product-carousel--luftfracht.product-carousel--air-pharma .product-carousel__item{--h:425px}
}

/* Kontakt-Button immer linksbuendig unter dem Text (auch mobil) */
.air-contact__intro .btn{margin-left:0;margin-right:auto}
@media(max-width:374px){
  .product-carousel--air-products .product-carousel__stage{height:620px}
  .product-carousel--air-products .product-carousel__item{--w:min(90vw,370px);--h:600px}
}


/* ── 09.10.2026 Luftfracht Hero: IATA als Trust-Line (Variante D) ── */
.iata-line{display:flex;align-items:center;gap:14px;margin:0 0 28px;padding:2px 0 2px 16px;border-left:2px solid #007dbd;font-family:"Montserrat",system-ui,sans-serif;color:#fff}
.iata-line svg{width:26px;height:26px;flex:0 0 auto;color:#77c9f6}
.iata-line__txt{display:grid;gap:4px;line-height:1.2}
.iata-line__txt small{font-weight:700;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#77c9f6}
.iata-line__txt span{font-weight:700;font-size:1.05rem;letter-spacing:.02em}
.iata-line__txt span em{font-style:normal;font-weight:500;color:hsla(0,0%,100%,.8);margin-left:.5em;white-space:nowrap}

/* ── 09.10.2026 Startseite: Destinationen-Check mit Weltkarte als Parallax ──
   Oben und unten laufen die Ebenen exakt auf #01070e aus (Endton Hero,
   Startton der folgenden Parallax-Sektion), dazwischen liegt die Karte
   abgedunkelt, damit Suchfeld und Ergebnis gut lesbar bleiben. */
.soc-dc.section--dark{
  background-color:#01070e;
  background-image:
    linear-gradient(180deg,#01070e 0%,rgba(1,7,14,.7) 12%,rgba(1,7,14,0) 30%,rgba(1,7,14,0) 70%,rgba(1,7,14,.7) 88%,#01070e 100%),
    linear-gradient(90deg,rgba(1,7,14,.8) 0%,rgba(1,7,14,.58) 45%,rgba(1,7,14,.3) 100%),
    url("../media/luftfracht-karte.webp");
  background-position:center center,center center,center center;
  background-size:cover,cover,cover;
  background-repeat:no-repeat,no-repeat,no-repeat;
  background-attachment:scroll,scroll,fixed;
}
@media(max-width:900px){
  .soc-dc.section--dark{
    background-image:
      linear-gradient(180deg,#01070e 0%,rgba(1,7,14,.6) 14%,rgba(1,7,14,.55) 50%,rgba(1,7,14,.6) 86%,#01070e 100%),
      url("../media/luftfracht-karte.webp");
    background-position:center center,62% center;
    background-size:cover,cover;
    background-attachment:scroll,scroll;
  }
}

/* ── 09.10.2026 Tracking Zone: Kundenportal-Kacheln wie bei Lager ──
   Gleicher Aufbau wie die Value-Added-Services-Karten (Icon-Kachel oben,
   Titel, kurzer Text, linksbuendig) - hier in der hellen Fassung. */
.portal-tiles .card{text-align:left;border-radius:14px}
.portal-tiles .card h3{margin-top:0}
.portal-tiles .card p{font-weight:400}
/* dunkle Fassung: oben Anschluss an Telematik (#0c2139), unten exakt der
   Verlauf, mit dem der Video-Abschnitt (section--dark) startet */
.section--vas.portal-tiles{
  background:
    linear-gradient(180deg,#0c2139 0%,#07182c 30%,#05131f 55%,rgba(5,19,31,.6) 78%,rgba(5,19,31,0) 100%),
    linear-gradient(90deg,#184b85 0%,#123460 35%,#113057 50%,#0d2442 78%,#0c213b 100%);
}

/* ── 09.10.2026 Lager: Value-Added-Services-Karten mit Bild (Stil wie Luftfracht) ──
   Bild oben, weicher Verlauf ins Kartenblau, dezentes Rund-Icon,
   Schlagwortzeile unten. */
.section--vas .vas-card{position:relative;display:flex;flex-direction:column;padding:0;overflow:hidden;border-radius:14px;
  background:linear-gradient(160deg,#0b2748 0%,#071b30 55%,#03101d 100%);border:1px solid rgba(255,255,255,.10);text-align:left}
.section--vas .vas-card:hover{background:linear-gradient(160deg,#0d2c50 0%,#081e35 55%,#041221 100%)}
.vas-card__img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}
.vas-card::after{content:"";position:absolute;left:0;right:0;top:0;aspect-ratio:2/1;pointer-events:none;
  background:linear-gradient(180deg,rgba(11,39,72,0) 55%,rgba(11,39,72,.8) 88%,#0b2748 100%)}
.section--vas .vas-card .card__icon{position:relative;z-index:2;width:44px;height:44px;margin:-22px 0 14px 22px;border-radius:50%;
  background:rgba(7,27,48,.92);border:1px solid rgba(119,201,246,.5);color:#77c9f6}
.section--vas .vas-card .card__icon svg{width:21px;height:21px}
.section--vas .vas-card:hover .card__icon{background:rgba(7,27,48,.92);color:#fff;border-color:rgba(119,201,246,.85)}
.section--vas .vas-card h3{margin:0 22px 8px;padding-top:0}
.section--vas .vas-card p{margin:0 22px 14px;font-size:16px;line-height:1.55}
.section--vas .vas-card .vas-card__tags{display:flex;flex-wrap:wrap;gap:.25rem 0;margin:auto 22px 22px;
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.72rem;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;color:#77c9f6}
.vas-card__tags span{display:inline-flex;align-items:center}
.vas-card__tags span:not(:last-child)::after{content:"|";margin:0 .5rem;font-weight:400;color:hsla(0,0%,100%,.3)}

/* ── 09.10.2026 Lager: Value Added Services als Karussell (wie Luftfracht) ── */
.product-carousel--lager{--carousel-x:345}
@media(min-width:993px){
  .product-carousel--lager > .kampf__inner{justify-self:start;margin-left:calc(350px - clamp(22px,5vw,64px));margin-right:0;transform:none}
}
.product-carousel--lager .product-carousel__item p.pc-tags{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;font-size:.74rem;line-height:1.4;letter-spacing:.06em;
  text-transform:uppercase;color:#77c9f6;margin:4px 0 0}
.product-carousel--lager .product-carousel__item{--h:362px}
.product-carousel--lager .product-carousel__stage{height:396px}
@media(min-width:701px) and (max-width:1200px){
  .product-carousel--lager .product-carousel__item{--h:360px}
  .product-carousel--lager .product-carousel__stage{height:395px}
}
@media(max-width:700px){
  .product-carousel--lager .product-carousel__item{--h:360px}
  .product-carousel--lager .product-carousel__stage{height:382px}
}

/* ── 09.10.2026 Lager: Ihre Vorteile ── */
.lager-benefits{background:linear-gradient(180deg,#02070d 0%,#05131f 45%,#04101c 70%,#01070e 100%);padding-top:clamp(56px,7vw,90px);padding-bottom:clamp(56px,7vw,90px)}
@media(min-width:993px){.lager-benefits{padding-left:350px;padding-right:clamp(22px,5vw,64px)}.lager-benefits .wrap{max-width:1180px;margin:0}}
.lager-benefits .eyebrow,.warehouse--dark .eyebrow{color:#a9a4a4}
.lager-benefits h2{margin-bottom:clamp(26px,3vw,40px)}
.lager-benefits__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,64px);max-width:860px;margin:0;padding:0;list-style:none}
.lager-benefits__item{display:flex;gap:18px;align-items:flex-start}
.lager-benefits__icon{flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;color:#77c9f6}
.lager-benefits__icon svg{width:44px;height:44px}
.lager-benefits__item h3{font-size:1.2rem;margin:0 0 6px;padding-top:4px;color:#fff}
.lager-benefits__item p{margin:0;font-size:clamp(1.02rem,1.3vw,1.15rem);line-height:1.55;color:hsla(0,0%,100%,.78)}
@media(max-width:700px){.lager-benefits__list{grid-template-columns:1fr}}

/* ── 09.10.2026 Lager "Mehr Platz. Mehr Moeglichkeiten." dunkel ──
   Grafik rechts entfernt, an ihrer Stelle die vier Merkmale (2 x 2). */
.warehouse--dark{background:linear-gradient(180deg,#01070e 0%,#061629 40%,#071b33 65%,#020a14 100%)}
.warehouse--dark .warehouse__grid{align-items:center}
.warehouse--dark .lead{color:hsla(0,0%,100%,.8)}
.warehouse--dark .warehouse__features{margin-top:0;gap:30px 34px}
.warehouse--dark .warehouse__feature svg{color:#77c9f6;width:30px;height:30px;flex-basis:30px}
.warehouse--dark .warehouse__feature strong{color:#fff;font-size:1.08rem;margin-bottom:4px}
.warehouse--dark .warehouse__feature span{color:hsla(0,0%,100%,.75);font-size:1rem;line-height:1.5}


.lager-benefits h2{color:#fff}
/* Lager: "Mehr Platz" buendig mit Hero und Karussell (linker Rand 350px) */
@media(min-width:993px){
  .warehouse--dark{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}
  .warehouse--dark .wrap{max-width:1180px;margin:0}
}
@media(min-width:993px){.warehouse--dark .warehouse__grid{grid-template-columns:1fr 1.15fr;gap:clamp(32px,4vw,56px)}.warehouse--dark .warehouse__features{gap:30px 28px}}

/* ── 09.10.2026 Lager: Kontakt linksbuendig auf der Inhaltslinie ── */
.contact--links .mitte,.contact--links{text-align:left}
.contact--links .mitte .eyebrow{justify-content:flex-start}
.contact--links .mitte .lead{margin-left:0;margin-right:0}
.contact--links .btn{margin-left:0}
@media(min-width:993px){.contact--links{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}.contact--links .wrap{max-width:1180px;margin:0}}

/* ── 09.10.2026 Seefracht: Produkte-Karussell (wie Luftfracht "drei Loesungen") ── */
@media(min-width:993px){
  .product-carousel--sea-products > .kampf__inner{justify-self:start;margin-left:calc(350px - clamp(22px,5vw,64px));margin-right:0;transform:none}
}
.product-carousel--sea-products{background:#020a14}
.product-carousel--sea-products::before{content:"";position:absolute;left:0;right:0;top:0;height:520px;pointer-events:none;z-index:0;
  background:linear-gradient(180deg,#020a14 0%,rgba(2,10,20,.6) 45%,rgba(2,10,20,0) 100%),radial-gradient(90% 70% at 70% 100%,rgba(11,39,72,.55) 0%,transparent 70%)}
.product-carousel--sea-products::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(80% 60% at 75% 65%,rgba(11,39,72,.65) 0%,transparent 70%),linear-gradient(180deg,#020a14 0%,#04101f 55%,#02070d 100%)}
@media(min-width:701px){.product-carousel--sea-products .product-carousel__item{--h:600px}.product-carousel--sea-products .product-carousel__stage{height:640px}}
/* Seefracht: Hero unten weich in das Produkte-Karussell (#020a14) */
.hero--sea::after{content:"";position:absolute;top:auto;left:0;right:0;bottom:0;-webkit-mask-image:none;mask-image:none;background-size:auto;height:clamp(80px,12vh,130px);z-index:3;pointer-events:none;
  background:linear-gradient(180deg,rgba(2,10,20,0) 0%,rgba(2,10,20,.55) 45%,rgba(2,10,20,.9) 80%,#020a14 100%)}
.hero--sea .hero__scroll{z-index:4}

/* ── 09.10.2026 Seefracht: mehr Abstand zwischen den 4 Produktkarten, Vorteile 3-spaltig ── */
.product-carousel--sea-products{--carousel-x:345}
.lager-benefits--3 .lager-benefits__list{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
@media(max-width:900px){.lager-benefits--3 .lager-benefits__list{grid-template-columns:1fr}}
/* Seefracht "Unsere Leistungen": unten weich in "Ihre Vorteile" (#02070d) */
.product-carousel--sea-services::after{content:"";position:absolute;left:0;right:0;bottom:0;height:220px;z-index:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(2,7,13,0) 0%,rgba(2,7,13,.75) 60%,#02070d 100%)}
/* Seefracht "Unsere Leistungen": schmalere Karten am Desktop */
@media(min-width:701px){
  .product-carousel--sea-services{--carousel-x:250}
  .product-carousel--luftfracht.product-carousel--air-pharma.product-carousel--sea-services .product-carousel__item{--w:clamp(380px,34vw,500px)}
  .product-carousel--luftfracht.product-carousel--air-pharma.product-carousel--sea-services .product-carousel__stage{height:calc(clamp(380px,34vw,500px) * .36 + 240px)}
}
/* Seefracht "Ihre Vorteile": erstes Icon am linken Rand (wie Luftfracht) */
@media(min-width:993px){
  .lager-benefits--3 .lager-benefits__list{margin-left:calc(-350px + clamp(22px,5vw,64px));width:calc(100% + 350px - clamp(22px,5vw,64px))}
}

/* ── 09.10.2026 Seefracht: Produktname + Unterzeile gemeinsam in der h3 (SEO), Optik unveraendert ── */
.product-carousel--air-products .product-carousel__item h3.ap-title{margin:0 0 12px}
.product-carousel--air-products h3.ap-title .ap-name{display:block;margin-bottom:6px}
.product-carousel--air-products h3.ap-title .ap-sub{display:block;font-family:"Montserrat",system-ui,sans-serif;font-size:14px;line-height:1.45;letter-spacing:.06em;text-transform:uppercase;color:#77c9f6;font-weight:700}
@media(max-width:700px){.product-carousel--air-products h3.ap-title .ap-sub{font-size:13px}}

/* Seefracht "Unsere Leistungen": engerer Zeilenabstand, Karten etwas hoeher */
.product-carousel--sea-services .product-carousel__item p:not(.pc-tags){line-height:1.4}
.product-carousel--sea-services .product-carousel__item .pc-tags{line-height:1.6;gap:.35rem 0}
@media(min-width:701px){
  .product-carousel--luftfracht.product-carousel--air-pharma.product-carousel--sea-services .product-carousel__item{--h:calc(var(--w) * .36 + 222px)}
  .product-carousel--luftfracht.product-carousel--air-pharma.product-carousel--sea-services .product-carousel__stage{height:calc(clamp(380px,34vw,500px) * .36 + 290px)}
}
@media(max-width:700px){
  .product-carousel--luftfracht.product-carousel--air-pharma.product-carousel--sea-services .product-carousel__item{--h:424px}
  .product-carousel--luftfracht.product-carousel--air-pharma.product-carousel--sea-services .product-carousel__stage{height:462px}
}

/* ── 09.10.2026 Alle Karussells: mehr Luft zwischen Einleitungstext und Karten ──
   Die aktive Karte vergroessert sich beim Blaettern; ohne Abstand kam sie
   dem Text darueber zu nahe. */
.product-carousel > .kampf__inner{margin-bottom:clamp(36px,4.5vw,64px)}
.product-carousel > .kampf__inner + br + br{display:none}
@media(max-width:700px){.product-carousel > .kampf__inner{margin-bottom:60px}}
/* Luftfracht-Produkte mobil: Platz fuer die kombinierte Ueberschrift */
@media(max-width:700px){.product-carousel--air-products:not(.product-carousel--lager):not(.product-carousel--sea-products) .product-carousel__item{--h:575px}.product-carousel--air-products:not(.product-carousel--lager):not(.product-carousel--sea-products) .product-carousel__stage{height:592px}}
@media(max-width:374px){.product-carousel--air-products:not(.product-carousel--lager):not(.product-carousel--sea-products) .product-carousel__item{--h:620px}.product-carousel--air-products:not(.product-carousel--lager):not(.product-carousel--sea-products) .product-carousel__stage{height:640px}}

/* ── 09.10.2026 Landverkehr: Leistungen (4 Karten) + Vorteile (4 Spalten) ── */
@media(min-width:701px){.product-carousel--road-services{--carousel-x:375}}
.lager-benefits--4 .lager-benefits__list{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,48px)}
@media(max-width:1200px){.lager-benefits--4 .lager-benefits__list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.lager-benefits--4 .lager-benefits__list{grid-template-columns:1fr}}

/* ── 09.10.2026 Einheitliche Inhaltslinie: alle Abschnitte linksbuendig ──
   .linie = Abschnitt beginnt am Desktop auf derselben Linie wie Hero und
   Karussells (350px vom linken Rand), Text immer linksbuendig. */
@media(min-width:993px){
  .linie{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}
  .linie .wrap{max-width:1180px;margin-left:0;margin-right:0}
}
.linie,.linie.mitte,.linie .mitte{text-align:left}
.linie .section__head{margin-left:0;margin-right:0}
.linie .eyebrow,.linie.mitte .eyebrow{justify-content:flex-start}
.linie .lead,.linie.mitte .lead{margin-left:0;margin-right:0}
.linie .media-frame{margin-left:0;margin-right:auto}
.linie .btn-wrap{display:flex;justify-content:flex-start}
.linie .tm-filters{justify-content:flex-start}

/* Kopfbereiche (Team, Blog, Impressum, Datenschutz, AGB) ebenfalls linksbuendig */
.tm-hero .section__head--mitte{text-align:left;margin-left:22px;margin-right:22px}
.tm-hero .section__head--mitte .eyebrow{justify-content:flex-start}
.tm-hero .section__head--mitte .lead{margin-left:0;margin-right:0}
@media(min-width:993px){.tm-hero .section__head--mitte{margin-left:350px;margin-right:clamp(22px,5vw,64px);max-width:800px}}
/* Kontakt-Hero: Ueberschrift auf der Inhaltslinie */
@media(min-width:993px){.page > .hero--contact{padding-left:350px!important;padding-right:clamp(22px,5vw,64px)!important}.page > .hero--contact .hero__inner{margin-left:0;margin-right:0;transform:none}}

/* 09.10.2026 Neuigkeiten: nur die Ueberschrift auf der Inhaltslinie, Feed bleibt volle Breite */
@media(min-width:993px){
  .linie-kopf .section__head{margin-left:calc(350px - max(clamp(22px,5vw,64px), (100vw - 1240px) / 2));text-align:left}
}
/* Tracking Zone Kacheln: auf schmaleren Desktops 2x2, damit Titel nicht mitten im Wort brechen */
@media(min-width:993px) and (max-width:1500px){.portal-tiles .grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.portal-tiles .card h3{overflow-wrap:normal;word-break:normal;hyphens:manual}

/* 09.10.2026 Team: Ueberschrift "Abteilungen im Ueberblick" auf der Inhaltslinie, Rest unveraendert */
.team-directory .kopf-linie{text-align:left}
@media(min-width:993px){.team-directory .kopf-linie{margin-left:calc(350px - clamp(22px,5vw,64px))}}

/* 09.10.2026 Qualitaet & GDP: letzter Abschnitt "Unser Anspruch" dunkel,
   setzt den Verlauf der Zertifikate (#0b2748) nahtlos fort */
#anspruch.section--dark{background:linear-gradient(180deg,#0b2748 0%,#081f3a 45%,#05162a 100%)}
#anspruch.section--dark .eyebrow{color:#cccccc}
#anspruch.section--dark .textlink{color:#8ed2f2}

/* 12.10.2026 Qualitaet: fuenftes Zertifikat (WCA Pharma) – 5 Spalten auf breiten Screens, 3+2 dazwischen */
@media(min-width:1700px){.certwall{grid-template-columns:repeat(5,1fr)}}
@media(min-width:993px) and (max-width:1699px){.certwall{grid-template-columns:repeat(3,1fr)}}

/* 13.10.2026 Luftfracht Vorteile: 4 Kacheln (neu: Reglementierter Beauftragter) */
@media(min-width:1300px){.air-benefits__list{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,48px)}}
@media(min-width:993px) and (max-width:1299px){.air-benefits__list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 13.10.2026 Startseite: kleine Zeile ueber der H1 einzeilig */
.hero__text .hero__eyebrow{white-space:nowrap;width:0;overflow:visible}
@media(max-width:480px){.hero__text .hero__eyebrow{letter-spacing:.08em;font-size:.66rem}}

/* 14.10.2026 EN Team: Prokura klein unter dem Namen */
.pc__ppa{font-family:"Montserrat",system-ui,sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.3px;text-transform:none;color:#8a929c;margin:-1px 0 4px;line-height:1.2}
